diff options
| author | Duncan Sands <baldrick@free.fr> | 2008-07-02 17:40:58 +0000 | 
|---|---|---|
| committer | Duncan Sands <baldrick@free.fr> | 2008-07-02 17:40:58 +0000 | 
| commit | 698842f7b62573cc6a3af154727e5d59daea4c1d (patch) | |
| tree | 902058a537253135caf66ca0ef4ee6ad3c8a2035 /lib/CodeGen/SelectionDAG/LegalizeDAG.cpp | |
| parent | a87452522c61dda6327dc319106e019cd3ed8b03 (diff) | |
| download | external_llvm-698842f7b62573cc6a3af154727e5d59daea4c1d.zip external_llvm-698842f7b62573cc6a3af154727e5d59daea4c1d.tar.gz external_llvm-698842f7b62573cc6a3af154727e5d59daea4c1d.tar.bz2 | |
Add a new getMergeValues method that does not need
to be passed the list of value types, and use this
where appropriate.  Inappropriate places are where
the value type list is already known and may be
long, in which case the existing method is more
efficient.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53035 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/LegalizeDAG.cpp')
| -rw-r--r-- | lib/CodeGen/SelectionDAG/LegalizeDAG.cpp | 15 | 
1 files changed, 7 insertions, 8 deletions
| diff --git a/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp b/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp index 196b2fc..e5599b6 100644 --- a/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp +++ b/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp @@ -652,7 +652,7 @@ SDOperand ExpandUnalignedLoad(LoadSDNode *LD, SelectionDAG &DAG,        Result = DAG.getNode(ISD::FP_EXTEND, VT, Result);      SDOperand Ops[] = { Result, Chain }; -    return DAG.getMergeValues(DAG.getVTList(VT, MVT::Other), Ops, 2); +    return DAG.getMergeValues(Ops, 2);    }    assert(LoadedVT.isInteger() && !LoadedVT.isVector() &&           "Unaligned load of unsupported type."); @@ -701,7 +701,7 @@ SDOperand ExpandUnalignedLoad(LoadSDNode *LD, SelectionDAG &DAG,                               Hi.getValue(1));    SDOperand Ops[] = { Result, TF }; -  return DAG.getMergeValues(DAG.getVTList(VT, MVT::Other), Ops, 2); +  return DAG.getMergeValues(Ops, 2);  }  /// UnrollVectorOp - We know that the given vector has a legal type, however @@ -931,7 +931,7 @@ SDOperand SelectionDAGLegalize::LegalizeOp(SDOperand Op) {        // Fall Thru      case TargetLowering::Legal: {        SDOperand Ops[] = { DAG.getConstant(0, VT), Tmp1 }; -      Result = DAG.getMergeValues(DAG.getVTList(VT, MVT::Other), Ops, 2); +      Result = DAG.getMergeValues(Ops, 2);        break;      }      } @@ -965,7 +965,7 @@ SDOperand SelectionDAGLegalize::LegalizeOp(SDOperand Op) {        // Fall Thru      case TargetLowering::Legal: {        SDOperand Ops[] = { DAG.getConstant(0, VT), Tmp2 }; -      Result = DAG.getMergeValues(DAG.getVTList(VT, MVT::Other), Ops, 2); +      Result = DAG.getMergeValues(Ops, 2);        break;      }      } @@ -4728,16 +4728,15 @@ void SelectionDAGLegalize::LegalizeSetCCOperands(SDOperand &LHS,        }        SDOperand Dummy; -      Tmp1 = ExpandLibCall(LC1, -                           DAG.getNode(ISD::MERGE_VALUES, VT, LHS, RHS).Val, +      SDOperand Ops[2] = { LHS, RHS }; +      Tmp1 = ExpandLibCall(LC1, DAG.getMergeValues(Ops, 2).Val,                             false /*sign irrelevant*/, Dummy);        Tmp2 = DAG.getConstant(0, MVT::i32);        CC = DAG.getCondCode(TLI.getCmpLibcallCC(LC1));        if (LC2 != RTLIB::UNKNOWN_LIBCALL) {          Tmp1 = DAG.getNode(ISD::SETCC, TLI.getSetCCResultType(Tmp1), Tmp1, Tmp2,                             CC); -        LHS = ExpandLibCall(LC2, -                            DAG.getNode(ISD::MERGE_VALUES, VT, LHS, RHS).Val, +        LHS = ExpandLibCall(LC2, DAG.getMergeValues(Ops, 2).Val,                              false /*sign irrelevant*/, Dummy);          Tmp2 = DAG.getNode(ISD::SETCC, TLI.getSetCCResultType(LHS), LHS, Tmp2,                             DAG.getCondCode(TLI.getCmpLibcallCC(LC2))); | 
