[LLVMbugs] [Bug 10186] New: Infinite loop in llc on ARMv7 (LLVM HEAD from June 17)
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Fri Jun 24 12:04:39 PDT 2011
http://llvm.org/bugs/show_bug.cgi?id=10186
Summary: Infinite loop in llc on ARMv7 (LLVM HEAD from June 17)
Product: tools
Version: trunk
Platform: Other
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: llc
AssignedTo: unassignedbugs at nondot.org
ReportedBy: karel.gardas at centrum.cz
CC: llvmbugs at cs.uiuc.edu
Hello,
it looks like I do have infinite loop in llc on linux/armv7 platform somewhere
in llvm::SmallVectorImpl. Two backtraces obtained with 10 seconds delay are:
0x0099be14 in llvm::SmallVectorTemplateCommon<llvm::SDNode*>::setEnd
(this=0x7ee90b38, P=0x5c06988)
at /export/home/karel/vcs/llvm-head/include/llvm/ADT/SmallVector.h:103
103 void setEnd(T *P) { this->EndX = P; }
(gdb) where
#0 0x0099be14 in llvm::SmallVectorTemplateCommon<llvm::SDNode*>::setEnd
(this=0x7ee90b38,
P=0x5c06988) at
/export/home/karel/vcs/llvm-head/include/llvm/ADT/SmallVector.h:103
#1 0x00a4849c in llvm::SmallVectorImpl<llvm::SDNode*>::pop_back
(this=0x7ee90b38)
at /export/home/karel/vcs/llvm-head/include/llvm/ADT/SmallVector.h:334
#2 0x00a483b8 in llvm::SmallVectorImpl<llvm::SDNode*>::pop_back_val
(this=0x7ee90b38)
at /export/home/karel/vcs/llvm-head/include/llvm/ADT/SmallVector.h:340
#3 0x00a6f074 in llvm::SDNode::isPredecessorOf (this=0x641bb08, N=0x6212a40)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:5703
#4 0x00a057c8 in CombineToPreIndexedLoadStore (this=0x7ee90f84, N=0x6238040)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:5707
#5 0x00a07544 in visitLOAD (this=0x7ee90f84, N=0x6238040)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:6011
#6 0x009e307c in visit (this=0x7ee90f84, N=0x6238040)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:1099
#7 0x009e3148 in combine (this=0x7ee90f84, N=0x6238040)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:1112
#8 0x009e24cc in Run (this=0x7ee90f84, AtLevel=llvm::NoIllegalOperations)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:978
#9 0x00a111ac in llvm::SelectionDAG::Combine (this=0x1bea328,
Level=llvm::NoIllegalOperations,
AA=..., OptLevel=llvm::CodeGenOpt::Less)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:7732
#10 0x00acd9c0 in llvm::SelectionDAGISel::CodeGenAndEmitDAG (this=0x1be9f40)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:559
#11 0x00acc9a0 in llvm::SelectionDAGISel::SelectBasicBlock (this=0x1be9f40,
Begin=..., End=...,
HadTailCall=@0x7ee91158)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:414
#12 0x00acf420 in llvm::SelectionDAGISel::SelectAllBasicBlocks (this=0x1be9f40,
Fn=...)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:972
#13 0x00acbee4 in llvm::SelectionDAGISel::runOnMachineFunction (this=0x1be9f40,
mf=...)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:282
#14 0x00c40d7c in llvm::MachineFunctionPass::runOnFunction (this=0x1be9f40,
F=...)
at /export/home/karel/vcs/llvm-head/lib/CodeGen/MachineFunctionPass.cpp:33
#15 0x010b6a48 in llvm::FPPassManager::runOnFunction (this=0x1be53d8, F=...)
at /export/home/karel/vcs/llvm-head/lib/VMCore/PassManager.cpp:1513
#16 0x010b6c80 in llvm::FPPassManager::runOnModule (this=0x1be53d8, M=...)
at /export/home/karel/vcs/llvm-head/lib/VMCore/PassManager.cpp:1535
#17 0x010b7030 in llvm::MPPassManager::runOnModule (this=0x16d07e8, M=...)
at /export/home/karel/vcs/llvm-head/lib/VMCore/PassManager.cpp:1589
#18 0x010b75f8 in llvm::PassManagerImpl::run (this=0x16d0638, M=...)
at /export/home/karel/vcs/llvm-head/lib/VMCore/PassManager.cpp:1671
#19 0x010b7c64 in llvm::PassManager::run (this=0x7ee91470, M=...)
at /export/home/karel/vcs/llvm-head/lib/VMCore/PassManager.cpp:1715
#20 0x005517a4 in main (argc=6, argv=0x7ee91644)
at /export/home/karel/vcs/llvm-head/tools/llc/llc.cpp:338
and
llvm::SmallVectorImpl<llvm::SDNode*>::pop_back (this=0x7ee90b38)
at /export/home/karel/vcs/llvm-head/include/llvm/ADT/SmallVector.h:334
334 this->setEnd(this->end()-1);
(gdb) where
#0 llvm::SmallVectorImpl<llvm::SDNode*>::pop_back (this=0x7ee90b38)
at /export/home/karel/vcs/llvm-head/include/llvm/ADT/SmallVector.h:334
#1 0x00a483b8 in llvm::SmallVectorImpl<llvm::SDNode*>::pop_back_val
(this=0x7ee90b38)
at /export/home/karel/vcs/llvm-head/include/llvm/ADT/SmallVector.h:340
#2 0x00a6f074 in llvm::SDNode::isPredecessorOf (this=0x643a8a8, N=0x6348d68)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:5703
#3 0x00a057c8 in CombineToPreIndexedLoadStore (this=0x7ee90f84, N=0x6237d98)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:5707
#4 0x00a07544 in visitLOAD (this=0x7ee90f84, N=0x6237d98)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:6011
#5 0x009e307c in visit (this=0x7ee90f84, N=0x6237d98)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:1099
#6 0x009e3148 in combine (this=0x7ee90f84, N=0x6237d98)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:1112
#7 0x009e24cc in Run (this=0x7ee90f84, AtLevel=llvm::NoIllegalOperations)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:978
#8 0x00a111ac in llvm::SelectionDAG::Combine (this=0x1bea328,
Level=llvm::NoIllegalOperations,
AA=..., OptLevel=llvm::CodeGenOpt::Less)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:7732
#9 0x00acd9c0 in llvm::SelectionDAGISel::CodeGenAndEmitDAG (this=0x1be9f40)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:559
#10 0x00acc9a0 in llvm::SelectionDAGISel::SelectBasicBlock (this=0x1be9f40,
Begin=..., End=...,
HadTailCall=@0x7ee91158)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:414
#11 0x00acf420 in llvm::SelectionDAGISel::SelectAllBasicBlocks (this=0x1be9f40,
Fn=...)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:972
#12 0x00acbee4 in llvm::SelectionDAGISel::runOnMachineFunction (this=0x1be9f40,
mf=...)
at
/export/home/karel/vcs/llvm-head/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:282
#13 0x00c40d7c in llvm::MachineFunctionPass::runOnFunction (this=0x1be9f40,
F=...)
at /export/home/karel/vcs/llvm-head/lib/CodeGen/MachineFunctionPass.cpp:33
#14 0x010b6a48 in llvm::FPPassManager::runOnFunction (this=0x1be53d8, F=...)
at /export/home/karel/vcs/llvm-head/lib/VMCore/PassManager.cpp:1513
#15 0x010b6c80 in llvm::FPPassManager::runOnModule (this=0x1be53d8, M=...)
at /export/home/karel/vcs/llvm-head/lib/VMCore/PassManager.cpp:1535
#16 0x010b7030 in llvm::MPPassManager::runOnModule (this=0x16d07e8, M=...)
at /export/home/karel/vcs/llvm-head/lib/VMCore/PassManager.cpp:1589
#17 0x010b75f8 in llvm::PassManagerImpl::run (this=0x16d0638, M=...)
at /export/home/karel/vcs/llvm-head/lib/VMCore/PassManager.cpp:1671
#18 0x010b7c64 in llvm::PassManager::run (this=0x7ee91470, M=...)
at /export/home/karel/vcs/llvm-head/lib/VMCore/PassManager.cpp:1715
#19 0x005517a4 in main (argc=6, argv=0x7ee91644)
at /export/home/karel/vcs/llvm-head/tools/llc/llc.cpp:338
LLC is invoked with flags:
llc -O1 -relocation-model=static ghc1436_0.bc -o ghc1436_0.lm_s
The LLC is from LLVM head as of June 17, the HEAD is:
commit ed6fa188c4cf2d382991dd054f7c5157420908c3
Author: Galina Kistanova <gkistanova at gmail.com>
Date: Fri Jun 17 18:26:23 2011 +0000
est 2008-06-04-indirectmem.ll is X86-specific. Move to X86 folder.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133275
91177308-0d34-0410-b5e6-96231b3b80
Whole LLVM was build as debug build with assertions enabled, original .ll file
was produced by GHC HEAD LLVM backend while compiling Haskell file from GHC
source tree. The ghc1436_0.bc is attached. If you like original ghc1436_0.ll
just ask, I also do have it for you, but it's long: 26MB uncompressed.
Also LLVM was build with gcc:
$ gcc --version
gcc (Ubuntu 4.4.1-4ubuntu9) 4.4.1
Thanks!
--
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