[LLVMbugs] [Bug 8471] New: clang segfaults while optimizing a snippet of C code
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Tue Oct 26 16:23:24 PDT 2010
http://llvm.org/bugs/show_bug.cgi?id=8471
Summary: clang segfaults while optimizing a snippet of C code
Product: clang
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: pipping at exherbo.org
CC: llvmbugs at cs.uiuc.edu
Depends on: 8336
I've tried to compile R with clang 2.9-trunk.
While compiling src/nmath/toms708.c, clang segfaults. This happens with -O2 but
not with -O1 or with gcc 4.4.5.
I'm on amd64 linux 2.6.36.
I hope I followed the bugpoint instructions correctly, leading me to this:
$ bugpoint foo.bc -preverify -domtree -verify -lowersetjmp -globalopt -ipsccp
-deadargelim -instcombine -simplifycfg -basiccg -prune-eh -inline
-functionattrs -argpromotion -domtree -domfrontier -scalarrepl
-simplify-libcalls -instcombine -lazy-value-info -jump-threading
-correlated-propagation -simplifycfg -instcombine -tailcallelim -simplifycfg
-reassociate -domtree -loops -loopsimplify -lcssa -loop-rotate -licm -lcssa
-loop-unswitch -instcombine -scalar-evolution -loopsimplify -lcssa -iv-users
-indvars -loop-deletion -loop-unroll -instcombine -memdep -gvn -memdep
-memcpyopt -sccp -instcombine -lazy-value-info -jump-threading
-correlated-propagation -domtree -memdep -dse -adce -simplifycfg
-strip-dead-prototypes -print-used-types -deadtypeelim -globaldce -constmerge
-preverify -domtree -verify
[..]
*** Attempting to perform final cleanups: Success!
Emitted bitcode to 'bugpoint-reduced-simplified.bc'
*** You can reproduce the problem with: opt bugpoint-reduced-simplified.bc
-inline -scalarrepl -loop-rotate -indvars -loop-unroll -simplifycfg -verify
$ opt -std-compile-opts -debug-pass=Arguments foo.bc -disable-output
Pass Arguments: -preverify -domtree -verify -lowersetjmp -globalopt -ipsccp
-deadargelim -instcombine -simplifycfg -basiccg -prune-eh -inline
-functionattrs -argpromotion -domtree -domfrontier -scalarrepl
-simplify-libcalls -instcombine -lazy-value-info -jump-threading
-correlated-propagation -simplifycfg -instcombine -tailcallelim -simplifycfg
-reassociate -domtree -loops -loopsimplify -lcssa -loop-rotate -licm -lcssa
-loop-unswitch -instcombine -scalar-evolution -loopsimplify -lcssa -iv-users
-indvars -loop-deletion -loop-unroll -instcombine -memdep -gvn -memdep
-memcpyopt -sccp -instcombine -lazy-value-info -jump-threading
-correlated-propagation -domtree -memdep -dse -adce -simplifycfg
-strip-dead-prototypes -print-used-types -deadtypeelim -globaldce -constmerge
-preverify -domtree -verify
0 libLLVM-2.9svn.so 0x00007f3fc2b6db2f
1 libLLVM-2.9svn.so 0x00007f3fc2b6e119
2 libpthread.so.0 0x00007f3fc20e2ca0
3 libc.so.6 0x00007f3fc1455638
4 libc.so.6 0x00007f3fc1453982 memmove + 386
5 libLLVM-2.9svn.so 0x00007f3fc27fafbf llvm::LoopBase<llvm::BasicBlock,
llvm::Loop>::getExitingBlocks(llvm::SmallVectorImpl<llvm::BasicBlock*>&) const
+ 143
6 libLLVM-2.9svn.so 0x00007f3fc284fdfa
llvm::ScalarEvolution::ComputeBackedgeTakenCount(llvm::Loop const*) + 74
7 libLLVM-2.9svn.so 0x00007f3fc284f8df
llvm::ScalarEvolution::getBackedgeTakenInfo(llvm::Loop const*) + 95
8 libLLVM-2.9svn.so 0x00007f3fc2841c06
llvm::ScalarEvolution::getUnsignedRange(llvm::SCEV const*) + 3334
9 libLLVM-2.9svn.so 0x00007f3fc2841ca9
llvm::ScalarEvolution::getUnsignedRange(llvm::SCEV const*) + 3497
10 libLLVM-2.9svn.so 0x00007f3fc2858861
llvm::ScalarEvolution::isKnownPredicateWithRanges(llvm::CmpInst::Predicate,
llvm::SCEV const*, llvm::SCEV const*) + 2209
11 libLLVM-2.9svn.so 0x00007f3fc284a0ea
llvm::ScalarEvolution::isKnownPredicate(llvm::CmpInst::Predicate, llvm::SCEV
const*, llvm::SCEV const*) + 330
12 libLLVM-2.9svn.so 0x00007f3fc2f6578a
13 libLLVM-2.9svn.so 0x00007f3fc280500f
llvm::LPPassManager::runOnFunction(llvm::Function&) + 863
14 libLLVM-2.9svn.so 0x00007f3fc2c2228b
llvm::FPPassManager::runOnFunction(llvm::Function&) + 331
15 libLLVM-2.9svn.so 0x00007f3fc2ca0fe1
16 libLLVM-2.9svn.so 0x00007f3fc2c226b8
llvm::MPPassManager::runOnModule(llvm::Module&) + 280
17 libLLVM-2.9svn.so 0x00007f3fc2c22c52
llvm::PassManagerImpl::run(llvm::Module&) + 210
18 libLLVM-2.9svn.so 0x00007f3fc2c231ad llvm::PassManager::run(llvm::Module&) +
13
19 opt 0x000000000040fb17 main + 4983
20 libc.so.6 0x00007f3fc13f3b6d __libc_start_main + 253
21 opt 0x000000000040a069
Stack dump:
0. Program arguments: opt -std-compile-opts -debug-pass=Arguments foo.bc
-disable-output
1. Running pass 'CallGraph Pass Manager' on module 'foo.bc'.
2. Running pass 'Loop Pass Manager' on function '@bratio'
3. Running pass 'Canonicalize Induction Variables' on basic block
'%for.cond.i'
Segmentation fault
$
--
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