[LLVMbugs] [Bug 22320] New: Clang -target i686-none-linux-android -mstackrealign -O1 crashes in RAGreedy::evictInterference

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Fri Jan 23 15:18:51 PST 2015


http://llvm.org/bugs/show_bug.cgi?id=22320

            Bug ID: 22320
           Summary: Clang -target i686-none-linux-android -mstackrealign
                    -O1 crashes in RAGreedy::evictInterference
           Product: clang
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: LLVM Codegen
          Assignee: unassignedclangbugs at nondot.org
          Reporter: java4ada at yahoo.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

Compile the enclosed file with clang built from trunk r226918 crashes after
emitting errors about exceeding physical registers

$ clang -target i686-none-linux-android -mstackrealign -O1 -c x.i

.....
h264_cabac-df4a33.i:2598:9: error: inline assembly requires more registers than
available
        "movzbl ""(%4)""    , ""%0""                                     \n\t"
"mov    ""%2""     , ""%3"...
        ^
h264_cabac-df4a33.i:2598:9: error: inline assembly requires more registers than
available
clang: /s/llvm/llvm/lib/CodeGen/RegAllocGreedy.cpp:811: void
{anonymous}::RAGreedy::evictInterference(llvm::LiveInterval&, unsigned int,
llvm::SmallVectorImpl<unsigned int>&): Assertion
`(ExtraRegInfo[Intf->reg].Cascade < Cascade || VirtReg.isSpillable() <
Intf->isSpillable()) && "Cannot decrease cascade number, illegal eviction"'
failed.
...


It doesn't crash when either 1) compile without any optimization, or 2) compile
without specifying -mstackrealign

-- 
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/20150123/8b31ceca/attachment.html>


More information about the llvm-bugs mailing list