mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-21 21:29:41 +00:00
Make the role of MVT::i32 clearer here, and add a
note since it is not clear whether it is correct. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53284 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
d8ad492238
commit
ddc7aa3417
@ -463,14 +463,15 @@ void DAGTypeLegalizer::SoftenSetCCOperands(SDOperand &NewLHS, SDOperand &NewRHS,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MVT RetVT = MVT::i32; // FIXME: is this the correct return type?
|
||||||
SDOperand Ops[2] = { LHSInt, RHSInt };
|
SDOperand Ops[2] = { LHSInt, RHSInt };
|
||||||
NewLHS = MakeLibCall(LC1, MVT::i32, Ops, 2, false/*sign irrelevant*/);
|
NewLHS = MakeLibCall(LC1, RetVT, Ops, 2, false/*sign irrelevant*/);
|
||||||
NewRHS = DAG.getConstant(0, MVT::i32);
|
NewRHS = DAG.getConstant(0, RetVT);
|
||||||
CCCode = TLI.getCmpLibcallCC(LC1);
|
CCCode = TLI.getCmpLibcallCC(LC1);
|
||||||
if (LC2 != RTLIB::UNKNOWN_LIBCALL) {
|
if (LC2 != RTLIB::UNKNOWN_LIBCALL) {
|
||||||
SDOperand Tmp = DAG.getNode(ISD::SETCC, TLI.getSetCCResultType(NewLHS),
|
SDOperand Tmp = DAG.getNode(ISD::SETCC, TLI.getSetCCResultType(NewLHS),
|
||||||
NewLHS, NewRHS, DAG.getCondCode(CCCode));
|
NewLHS, NewRHS, DAG.getCondCode(CCCode));
|
||||||
NewLHS = MakeLibCall(LC2, MVT::i32, Ops, 2, false/*sign irrelevant*/);
|
NewLHS = MakeLibCall(LC2, RetVT, Ops, 2, false/*sign irrelevant*/);
|
||||||
NewLHS = DAG.getNode(ISD::SETCC, TLI.getSetCCResultType(NewLHS), NewLHS,
|
NewLHS = DAG.getNode(ISD::SETCC, TLI.getSetCCResultType(NewLHS), NewLHS,
|
||||||
NewRHS, DAG.getCondCode(TLI.getCmpLibcallCC(LC2)));
|
NewRHS, DAG.getCondCode(TLI.getCmpLibcallCC(LC2)));
|
||||||
NewLHS = DAG.getNode(ISD::OR, Tmp.getValueType(), Tmp, NewLHS);
|
NewLHS = DAG.getNode(ISD::OR, Tmp.getValueType(), Tmp, NewLHS);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user