[LLVMbugs] [Bug 3217] New: GVN crash bootstrapping llvm-gcc on 32-bit Linux

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Mon Dec 15 16:59:19 PST 2008


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

           Summary: GVN crash bootstrapping llvm-gcc on 32-bit Linux
           Product: libraries
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Scalar Optimizations
        AssignedTo: clattner at apple.com
        ReportedBy: nlewycky at google.com
                CC: nicholas at mxc.ca, llvmbugs at cs.uiuc.edu


Created an attachment (id=2305)
 --> (http://llvm.org/bugs/attachment.cgi?id=2305)
bugpoint reduced testcase

The attached testcase triggers an assert in GVN.

$ llvm/Debug/bin/opt -gvn bugpoint-reduced-simplified.bc
WARNING: You're attempting to print out a bitcode file.
This is inadvisable as it may cause display problems. If
you REALLY want to taste LLVM bitcode first-hand, you
can force output with the `-f' option.

opt: GVN.cpp:1108: bool<unnamed>::GVN::processNonLocalLoad(llvm::LoadInst*,
llvm::SmallVectorImpl<llvm::Instruction*>&): Assertion `UnavailablePred != 0 &&
"Fully available value should be eliminated above!"' failed.
0   opt       0x086e26f7
1   opt       0x086e2b9c
2             0xffffe500 __kernel_sigreturn + 0
3             0x00000006 __kernel_sigreturn + 6918
4   libc.so.6 0x4eedd619 abort + 233
5   libc.so.6 0x4eed5031 __assert_fail + 257
6   opt       0x08411a54
7   opt       0x08411f80
8   opt       0x08412203
9   opt       0x08412990
10  opt       0x08412be0
11  opt       0x08412ddf
12  opt       0x0866c98c llvm::FPPassManager::runOnFunction(llvm::Function&) +
258
13  opt       0x0866cb36 llvm::FPPassManager::runOnModule(llvm::Module&) + 110
14  opt       0x0866c659 llvm::MPPassManager::runOnModule(llvm::Module&) + 205
15  opt       0x0866c7f6 llvm::PassManagerImpl::run(llvm::Module&) + 116
16  opt       0x0866c851 llvm::PassManager::run(llvm::Module&) + 27
17  opt       0x0838644b main + 4223
18  libc.so.6 0x4eec7ec2 __libc_start_main + 210
19  opt       0x08377a41
Aborted

(gdb) bt
#0  0xffffe410 in __kernel_vsyscall ()
#1  0x4eedbc51 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0x4eedd619 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0x4eed5031 in __assert_fail () from /lib/tls/i686/cmov/libc.so.6
#4  0x08411a54 in (anonymous namespace)::GVN::processNonLocalLoad (
    this=0x880bd08, LI=0x8814b24, toErase=@0xffffd410) at GVN.cpp:1107
#5  0x08411f80 in (anonymous namespace)::GVN::processLoad (this=0x880bd08,
    L=0x8814b24, toErase=@0xffffd410) at GVN.cpp:1172
#6  0x08412203 in (anonymous namespace)::GVN::processInstruction (
    this=0x880bd08, I=0x8814b24, toErase=@0xffffd410) at GVN.cpp:1295
#7  0x08412990 in (anonymous namespace)::GVN::processBlock (this=0x880bd08,
    BB=0x8812ed8) at GVN.cpp:1433
#8  0x08412be0 in (anonymous namespace)::GVN::iterateOnFunction (
    this=0x880bd08, F=@0x8811df0) at GVN.cpp:1628
#9  0x08412ddf in (anonymous namespace)::GVN::runOnFunction (this=0x880bd08,
    F=@0x8811df0) at GVN.cpp:1395
#10 0x0866c98c in llvm::FPPassManager::runOnFunction (this=0x880bda0,
    F=@0x8811df0) at PassManager.cpp:1323
#11 0x0866cb36 in llvm::FPPassManager::runOnModule (this=0x880bda0,
    M=@0x880b260) at PassManager.cpp:1346
#12 0x0866c659 in llvm::MPPassManager::runOnModule (this=0x880b0b8,
    M=@0x880b260) at PassManager.cpp:1393
#13 0x0866c7f6 in llvm::PassManagerImpl::run (this=0x880d228, M=@0x880b260)
    at PassManager.cpp:1467
#14 0x0866c851 in llvm::PassManager::run (this=0xffffd718, M=@0x880b260)
    at PassManager.cpp:1499
#15 0x0838644b in main (argc=3, argv=0xffffd914) at opt.cpp:588
(gdb) up 6
#6  0x08412203 in (anonymous namespace)::GVN::processInstruction (
    this=0x880bd08, I=0x8814b24, toErase=@0xffffd410) at GVN.cpp:1295
1295        bool changed = processLoad(L, toErase);
(gdb) p L->dump()
        %iftmp.1374.0 = load %struct.tree_node** %iftmp.1374.0.in             
; <%struct.tree_node*> [#uses=0]

$1 = void


-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list