[llvm] [X86] Don't rely on global contraction flag (PR #167252)

Phoebe Wang via llvm-commits llvm-commits at lists.llvm.org
Sun Nov 9 16:54:09 PST 2025


================
@@ -54188,14 +54181,14 @@ static SDValue combineFaddCFmul(SDNode *N, SelectionDAG &DAG,
   SDValue RHS = N->getOperand(1);
   bool IsConj;
   SDValue FAddOp1, MulOp0, MulOp1;
-  auto GetCFmulFrom = [&MulOp0, &MulOp1, &IsConj, &AllowContract,
+  auto GetCFmulFrom = [&MulOp0, &MulOp1, &IsConj, AllowContract,
                        &IsVectorAllNegativeZero,
                        &HasNoSignedZero](SDValue N) -> bool {
     if (!N.hasOneUse() || N.getOpcode() != ISD::BITCAST)
       return false;
     SDValue Op0 = N.getOperand(0);
     unsigned Opcode = Op0.getOpcode();
-    if (Op0.hasOneUse() && AllowContract(Op0->getFlags())) {
+    if (Op0.hasOneUse() && AllowContract) {
----------------
phoebewang wrote:

Isn't it `Op0->getFlags().hasAllowContract()`?

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


More information about the llvm-commits mailing list