Changes in directory llvm/lib/CodeGen/SelectionDAG:
LegalizeDAG.cpp updated: 1.219 -> 1.220 --- Log message: Promote line and column number information for our friendly 64-bit targets. --- Diffs of the changes: (+10 -3) LegalizeDAG.cpp | 13 ++++++++++--- 1 files changed, 10 insertions(+), 3 deletions(-) Index: llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp diff -u llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.219 llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.220 --- llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.219 Wed Nov 30 11:12:26 2005 +++ llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp Thu Dec 1 12:21:35 2005 @@ -615,11 +615,18 @@ Result = Tmp1; break; case TargetLowering::Legal: - if (Tmp1 != Node->getOperand(0)) { + if (Tmp1 != Node->getOperand(0) || + getTypeAction(Node->getOperand(1).getValueType()) == Promote) { std::vector<SDOperand> Ops; Ops.push_back(Tmp1); - Ops.push_back(Node->getOperand(1)); // line # must be legal. - Ops.push_back(Node->getOperand(2)); // col # must be legal. + if (getTypeAction(Node->getOperand(1).getValueType()) == Legal) { + Ops.push_back(Node->getOperand(1)); // line # must be legal. + Ops.push_back(Node->getOperand(2)); // col # must be legal. + } else { + // Otherwise promote them. + Ops.push_back(PromoteOp(Node->getOperand(1))); + Ops.push_back(PromoteOp(Node->getOperand(2))); + } Ops.push_back(Node->getOperand(3)); // filename must be legal. Ops.push_back(Node->getOperand(4)); // working dir # must be legal. Result = DAG.getNode(ISD::LOCATION, MVT::Other, Ops); _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits