[llvm] r319853 - [SelectionDAG] Don't promote the condition operand of VSELECT when promoting the result.

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 5 15:08:33 PST 2017


Author: ctopper
Date: Tue Dec  5 15:08:32 2017
New Revision: 319853

URL: http://llvm.org/viewvc/llvm-project?rev=319853&view=rev
Log:
[SelectionDAG] Don't promote the condition operand of VSELECT when promoting the result.

The condition operand should be promoted during operand promotion.

Modified:
    llvm/trunk/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp

Modified: llvm/trunk/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp?rev=319853&r1=319852&r2=319853&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp (original)
+++ llvm/trunk/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp Tue Dec  5 15:08:32 2017
@@ -573,8 +573,6 @@ SDValue DAGTypeLegalizer::PromoteIntRes_
 
   SDValue LHS = GetPromotedInteger(N->getOperand(1));
   SDValue RHS = GetPromotedInteger(N->getOperand(2));
-  // Promote all the way up to the canonical SetCC type.
-  Mask = PromoteTargetBoolean(Mask, LHS.getValueType());
   return DAG.getNode(ISD::VSELECT, SDLoc(N),
                      LHS.getValueType(), Mask, LHS, RHS);
 }




More information about the llvm-commits mailing list