-
Notifications
You must be signed in to change notification settings - Fork 15.2k
Description
| Bugzilla Link | 10876 |
| Resolution | FIXED |
| Resolved on | Jan 23, 2019 04:12 |
| Version | trunk |
| OS | Linux |
| Reporter | LLVM Bugzilla Contributor |
| CC | @ahatanak,@sunfishcode,@atanasyan |
Extended Description
The four tests:
llvm/trunk/test/CodeGen/ARM/2011-06-09-TailCallByVal.ll
llvm/trunk/test/CodeGen/Mips/cprestore.ll
llvm/trunk/test/CodeGen/Mips/largeimmprinting.ll
llvm/trunk/test/CodeGen/Thumb/2011-05-11-DAGLegalizer.ll
all suffer the same problem: they infinitely recurse due to byval stuff.
Here's the stack trace:
Program received signal SIGSEGV, Segmentation fault.
0x0000000000fd9288 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (
this=Cannot access memory at address 0x7fffff5fe898
) at LegalizeDAG.cpp:766
766 SDValue SelectionDAGLegalize::LegalizeOp(SDValue Op) {
(gdb) bt
#0 0x0000000000fd9288 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=Cannot access memory at address 0x7fffff5fe898
) at LegalizeDAG.cpp:766
#1 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
#2 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
#3 0x0000000000fdb147 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:1071
#4 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
#5 0x0000000000fdabc0 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:1028
#16 0x0000000000fdb02e in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:1062
#17 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
#18 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
#19 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
#20 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
#21 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
#22 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
[...]
#1537 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
#1538 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
#1539 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
#1540 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
#1541 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
#1542 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
#1543 0x0000000000fdb147 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:1071
#1544 0x0000000000fdaf45 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:1054
#1545 0x0000000000fd3ac2 in (anonymous namespace)::SelectionDAGLegalize::LegalizeDAG (this=0x7fffffffd740) at LegalizeDAG.cpp:210
#1546 0x0000000000ffb8e7 in llvm::SelectionDAG::Legalize (this=0x1d5b5c0)
at LegalizeDAG.cpp:3917
#1547 0x0000000000f9983e in llvm::SelectionDAGISel::CodeGenAndEmitDAG (
this=0x1d53ba0) at SelectionDAGISel.cpp:559
#1548 0x0000000000f98a80 in llvm::SelectionDAGISel::SelectBasicBlock (
this=0x1d53ba0, Begin=..., End=..., HadTailCall=@0x7fffffffdb68)
at SelectionDAGISel.cpp:424
#1549 0x0000000000f9b28a in llvm::SelectionDAGISel::SelectAllBasicBlocks (
this=0x1d53ba0, Fn=...) at SelectionDAGISel.cpp:989
#1550 0x0000000000f97fe2 in llvm::SelectionDAGISel::runOnMachineFunction (
this=0x1d53ba0, mf=...) at SelectionDAGISel.cpp:292
#1551 0x0000000001105095 in llvm::MachineFunctionPass::runOnFunction (
this=0x1d53ba0, F=...) at MachineFunctionPass.cpp:33
#1552 0x00000000014930e8 in llvm::FPPassManager::runOnFunction (
this=0x1d526e0, F=...) at PassManager.cpp:1512
#1553 0x0000000001493333 in llvm::FPPassManager::runOnModule (this=0x1d526e0,
M=...) at PassManager.cpp:1534
#1554 0x0000000001493679 in llvm::MPPassManager::runOnModule (this=0x1d4d390,
M=...) at PassManager.cpp:1588
#1555 0x0000000001493b78 in llvm::PassManagerImpl::run (this=0x1d4d040, M=...)
at PassManager.cpp:1670
#1556 0x00000000014940c1 in llvm::PassManager::run (this=0x7fffffffe1e0, M=...)
at PassManager.cpp:1714
#1557 0x00000000009dfedd in main (argc=3, argv=0x7fffffffe418) at llc.cpp:374
(gdb) up 100
#100 0x0000000000fd9c24 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp (this=0x7fffffffd740, Op=...) at LegalizeDAG.cpp:908
908 Ops.push_back(LegalizeOp(Node->getOperand(i)));
(gdb) p Node
$1 = (llvm::SDNode *) 0x1d92380
(gdb) p *Node
$2 = {llvm::FoldingSetImpl::Node = {
NextInFoldingSetBucket = 0x0}, <llvm::ilist_nodellvm::SDNode> = {<llvm::ilist_half_nodellvm::SDNode> = {Prev = 0x1d92280}, Next = 0x1d92580},
NodeType = 41, OperandsNeedDelete = 1, HasDebugValue = 0, SubclassData = 0,
NodeId = 87, OperandList = 0x1d92ff0, ValueList = 0x1d86150,
UseList = 0x1d93118, NumOperands = 4, NumValues = 2, debugLoc = {
LineCol = 0, ScopeIdx = 0}}
(gdb) p Node->dump()
Cannot access memory at address 0x7fffff5fe778