mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-22 13:29:44 +00:00
Fix a bug in i32->f64 conversion lowering
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25211 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
1b8af84a84
commit
3fbb726141
@ -622,9 +622,9 @@ LowerOperation(SDOperand Op, SelectionDAG &DAG) {
|
|||||||
return DAG.getNode(ISD::BIT_CONVERT, MVT::i32, Op);
|
return DAG.getNode(ISD::BIT_CONVERT, MVT::i32, Op);
|
||||||
case ISD::SINT_TO_FP: {
|
case ISD::SINT_TO_FP: {
|
||||||
assert(Op.getOperand(0).getValueType() == MVT::i32);
|
assert(Op.getOperand(0).getValueType() == MVT::i32);
|
||||||
Op = DAG.getNode(ISD::BIT_CONVERT, MVT::f32, Op.getOperand(0));
|
SDOperand Tmp = DAG.getNode(ISD::BIT_CONVERT, MVT::f32, Op.getOperand(0));
|
||||||
// Convert the int value to FP in an FP register.
|
// Convert the int value to FP in an FP register.
|
||||||
return DAG.getNode(V8ISD::ITOF, Op.getValueType(), Op);
|
return DAG.getNode(V8ISD::ITOF, Op.getValueType(), Tmp);
|
||||||
}
|
}
|
||||||
case ISD::BR_CC: {
|
case ISD::BR_CC: {
|
||||||
SDOperand Chain = Op.getOperand(0);
|
SDOperand Chain = Op.getOperand(0);
|
||||||
|
@ -622,9 +622,9 @@ LowerOperation(SDOperand Op, SelectionDAG &DAG) {
|
|||||||
return DAG.getNode(ISD::BIT_CONVERT, MVT::i32, Op);
|
return DAG.getNode(ISD::BIT_CONVERT, MVT::i32, Op);
|
||||||
case ISD::SINT_TO_FP: {
|
case ISD::SINT_TO_FP: {
|
||||||
assert(Op.getOperand(0).getValueType() == MVT::i32);
|
assert(Op.getOperand(0).getValueType() == MVT::i32);
|
||||||
Op = DAG.getNode(ISD::BIT_CONVERT, MVT::f32, Op.getOperand(0));
|
SDOperand Tmp = DAG.getNode(ISD::BIT_CONVERT, MVT::f32, Op.getOperand(0));
|
||||||
// Convert the int value to FP in an FP register.
|
// Convert the int value to FP in an FP register.
|
||||||
return DAG.getNode(V8ISD::ITOF, Op.getValueType(), Op);
|
return DAG.getNode(V8ISD::ITOF, Op.getValueType(), Tmp);
|
||||||
}
|
}
|
||||||
case ISD::BR_CC: {
|
case ISD::BR_CC: {
|
||||||
SDOperand Chain = Op.getOperand(0);
|
SDOperand Chain = Op.getOperand(0);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user