mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-25 00:29:20 +00:00
Correctly walk through nested and adjacent CALLSEQ_START nodes. No
test case; I've only seen this on a release branch, and I can't get it to reproduce on trunk. rdar://problem/7662569 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131152 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
6253c7ca60
commit
d673057c96
@ -324,6 +324,7 @@ static SDNode *FindCallStartFromCallEnd(SDNode *Node) {
|
||||
case ISD::CALLSEQ_START:
|
||||
if (!nested)
|
||||
return Node;
|
||||
Node = Node->getOperand(0).getNode();
|
||||
nested--;
|
||||
break;
|
||||
case ISD::CALLSEQ_END:
|
||||
@ -331,7 +332,7 @@ static SDNode *FindCallStartFromCallEnd(SDNode *Node) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
return (Node->getOpcode() == ISD::CALLSEQ_START) ? Node : 0;
|
||||
}
|
||||
|
||||
/// LegalizeAllNodesNotLeadingTo - Recursively walk the uses of N, looking to
|
||||
|
Loading…
Reference in New Issue
Block a user