mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-09-27 16:17:17 +00:00
Delete unnecessarily cautious LastCALLSEQ code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136156 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -912,12 +912,7 @@ SDValue SelectionDAGLegalize::LegalizeOp(SDValue Op) {
|
|||||||
case ISD::BR_JT:
|
case ISD::BR_JT:
|
||||||
case ISD::BR_CC:
|
case ISD::BR_CC:
|
||||||
case ISD::BRCOND:
|
case ISD::BRCOND:
|
||||||
assert(LastCALLSEQ.size() == 1 && "branch inside CALLSEQ_BEGIN/END?");
|
|
||||||
// Branches tweak the chain to include LastCALLSEQ
|
|
||||||
Ops[0] = DAG.getNode(ISD::TokenFactor, dl, MVT::Other, Ops[0],
|
|
||||||
getLastCALLSEQ());
|
|
||||||
Ops[0] = LegalizeOp(Ops[0]);
|
Ops[0] = LegalizeOp(Ops[0]);
|
||||||
setLastCALLSEQ(DAG.getEntryNode());
|
|
||||||
break;
|
break;
|
||||||
case ISD::SHL:
|
case ISD::SHL:
|
||||||
case ISD::SRL:
|
case ISD::SRL:
|
||||||
@@ -1021,14 +1016,6 @@ SDValue SelectionDAGLegalize::LegalizeOp(SDValue Op) {
|
|||||||
// libcalls), create the new CALLSEQ_START node.
|
// libcalls), create the new CALLSEQ_START node.
|
||||||
Tmp1 = LegalizeOp(Node->getOperand(0)); // Legalize the chain.
|
Tmp1 = LegalizeOp(Node->getOperand(0)); // Legalize the chain.
|
||||||
|
|
||||||
// Merge in the last call to ensure that this call starts after the last
|
|
||||||
// call ended.
|
|
||||||
if (getLastCALLSEQ().getOpcode() != ISD::EntryToken) {
|
|
||||||
Tmp1 = DAG.getNode(ISD::TokenFactor, dl, MVT::Other,
|
|
||||||
Tmp1, getLastCALLSEQ());
|
|
||||||
Tmp1 = LegalizeOp(Tmp1);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Do not try to legalize the target-specific arguments (#1+).
|
// Do not try to legalize the target-specific arguments (#1+).
|
||||||
if (Tmp1 != Node->getOperand(0)) {
|
if (Tmp1 != Node->getOperand(0)) {
|
||||||
SmallVector<SDValue, 8> Ops(Node->op_begin(), Node->op_end());
|
SmallVector<SDValue, 8> Ops(Node->op_begin(), Node->op_end());
|
||||||
@@ -1050,7 +1037,7 @@ SDValue SelectionDAGLegalize::LegalizeOp(SDValue Op) {
|
|||||||
setLastCALLSEQ(SDValue(CallEnd, 0));
|
setLastCALLSEQ(SDValue(CallEnd, 0));
|
||||||
|
|
||||||
// Legalize the call, starting from the CALLSEQ_END.
|
// Legalize the call, starting from the CALLSEQ_END.
|
||||||
LegalizeOp(getLastCALLSEQ());
|
LegalizeOp(SDValue(CallEnd, 0));
|
||||||
return Result;
|
return Result;
|
||||||
}
|
}
|
||||||
case ISD::CALLSEQ_END:
|
case ISD::CALLSEQ_END:
|
||||||
|
Reference in New Issue
Block a user