Changes in directory llvm/lib/Target/IA64:
IA64ISelDAGToDAG.cpp updated: 1.58 -> 1.59 --- Log message: Fix CodeGen/IA64/ret-0.ll, which has apparently been broken since some of the isel changes happened months ago. --- Diffs of the changes: (+6 -2) IA64ISelDAGToDAG.cpp | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) Index: llvm/lib/Target/IA64/IA64ISelDAGToDAG.cpp diff -u llvm/lib/Target/IA64/IA64ISelDAGToDAG.cpp:1.58 llvm/lib/Target/IA64/IA64ISelDAGToDAG.cpp:1.59 --- llvm/lib/Target/IA64/IA64ISelDAGToDAG.cpp:1.58 Fri Oct 13 16:14:26 2006 +++ llvm/lib/Target/IA64/IA64ISelDAGToDAG.cpp Tue Oct 24 12:09:43 2006 @@ -408,12 +408,16 @@ case ISD::TargetConstantFP: { SDOperand Chain = CurDAG->getEntryNode(); // this is a constant, so.. + SDOperand V; if (cast<ConstantFPSDNode>(N)->isExactlyValue(+0.0)) { - return CurDAG->getCopyFromReg(Chain, IA64::F0, MVT::f64).Val; + V = CurDAG->getCopyFromReg(Chain, IA64::F0, MVT::f64); } else if (cast<ConstantFPSDNode>(N)->isExactlyValue(+1.0)) { - return CurDAG->getCopyFromReg(Chain, IA64::F1, MVT::f64).Val; + V = CurDAG->getCopyFromReg(Chain, IA64::F1, MVT::f64); } else assert(0 && "Unexpected FP constant!"); + + ReplaceUses(SDOperand(N, 0), V); + return 0; } case ISD::FrameIndex: { // TODO: reduce creepyness _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits