diff options
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG')
| -rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp | 4 | 
1 files changed, 4 insertions, 0 deletions
| diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp index bb3b42c383f..33eddae7f90 100644 --- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp @@ -1140,6 +1140,10 @@ SDValue SelectionDAG::getCondCode(ISD::CondCode Cond) {  SDValue SelectionDAG::getConvertRndSat(MVT VT, SDValue Val, SDValue DTy,                                         SDValue STy, SDValue Rnd, SDValue Sat,                                         ISD::CvtCode Code) { +  // If the src and dest types are the same, no conversion is necessary. +  if (DTy == STy) +    return Val; +    FoldingSetNodeID ID;    void* IP = 0;    if (SDNode *E = CSEMap.FindNodeOrInsertPos(ID, IP)) | 

