[llvm-bugs] [Bug 27999] New: SROA Assertion `isAllocaPromotable(AI) && "Cannot promote non-promotable alloca!"' failed. 3.7+

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Jun 3 22:19:21 PDT 2016


https://llvm.org/bugs/show_bug.cgi?id=27999

            Bug ID: 27999
           Summary: SROA Assertion `isAllocaPromotable(AI) && "Cannot
                    promote non-promotable alloca!"' failed. 3.7+
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: Scalar Optimizations
          Assignee: unassignedbugs at nondot.org
          Reporter: adrake at adrake.org
                CC: llvm-bugs at lists.llvm.org
    Classification: Unclassified

Created attachment 16469
  --> https://llvm.org/bugs/attachment.cgi?id=16469&action=edit
Source code for test case

I encountered this crash first in rustc, I was able to reduce the output to a
seven instruction testcase isolating the bug to the SROA pass. This test
command:

opt -sroa to_submit.ll

Crashes with:

/home/adrake/osrc/llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp:531:
void {anonymous}::PromoteMem2Reg::run(): Assertion `isAllocaPromotable(AI) &&
"Cannot promote non-promotable alloca!"' failed

Both on LLVM trunk at 271371 and on rustc's fork of 3.8. That same test case
crashes Fedora's 3.7 build with:

Instruction does not dominate all uses!
  <badref> = bitcast #0 0x7f221dec8327
llvm::sys::PrintStackTrace(llvm::raw_ostream&)
(/usr/lib64/llvm/libLLVM-3.7.so+0x510327)

That is not a debug build, so it is possible it would hit a similar assertion
before producing non-validating bitcode output.

I've attached bitcode files produced by my trunk build (to_submit39.bc) as well
as Fedora's 3.7 build (to_submit37.bc) for reference. I've also attached the
debug log from the trunk run (to_submit39.log). I am running on and targeting
x86_64

Please let me know if you need any more information! I am happy to run any
additional tests or provide additional data if needed.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20160604/6a01ba27/attachment-0001.html>


More information about the llvm-bugs mailing list