Changes in directory llvm/lib/CodeGen/SelectionDAG:
LegalizeDAG.cpp updated: 1.419 -> 1.420 --- Log message: Allow target to custom lower READCYCLECOUNTER (when it doesn't have to be expanded). --- Diffs of the changes: (+10 -2) LegalizeDAG.cpp | 12 ++++++++++-- 1 files changed, 10 insertions(+), 2 deletions(-) Index: llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp diff -u llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.419 llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.420 --- llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.419 Mon Nov 27 19:03:30 2006 +++ llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp Wed Nov 29 02:26:18 2006 @@ -1847,11 +1847,19 @@ case ISD::READCYCLECOUNTER: Tmp1 = LegalizeOp(Node->getOperand(0)); // Legalize the chain Result = DAG.UpdateNodeOperands(Result, Tmp1); + switch (TLI.getOperationAction(ISD::READCYCLECOUNTER, + Node->getValueType(0))) { + default: assert(0 && "This action is not supported yet!"); + case TargetLowering::Legal: break; + case TargetLowering::Custom: + Result = TLI.LowerOperation(Result, DAG); + break; + } // Since rdcc produce two values, make sure to remember that we legalized // both of them. - AddLegalizedOperand(SDOperand(Node, 0), Result.getValue(0)); - AddLegalizedOperand(SDOperand(Node, 1), Result.getValue(1)); + AddLegalizedOperand(SDOperand(Node, 0), LegalizeOp(Result.getValue(0))); + AddLegalizedOperand(SDOperand(Node, 1), LegalizeOp(Result.getValue(1))); return Result; case ISD::SELECT: _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits