[llvm] [missed-opt][X86] Optimize fptosi+select down to a single cvttsd2si Instruction on X86 (PR #172710)

via llvm-commits llvm-commits at lists.llvm.org
Sat Jan 31 02:55:44 PST 2026


================
@@ -48163,6 +48150,91 @@ static SDValue combineSelect(SDNode *N, SelectionDAG &DAG,
   bool CondConstantVector = ISD::isBuildVectorOfConstantSDNodes(Cond.getNode());
   unsigned EltBitWidth = VT.getScalarSizeInBits();
 
+  // select in presence of fp_to_sint can be replaced with just fp_to_sint
+  // fold (SELECT (SETCC (FABS X), MAXFLOAT), (FP_TO_SINT X), INT_MIN)
+  // -> (FP_TO_SINT X)
+  using namespace SDPatternMatch;
----------------
Bhuvan1527 wrote:

Addressed in the latest commit.

https://github.com/llvm/llvm-project/pull/172710


More information about the llvm-commits mailing list