[llvm] 0263baa - InstCombine: Use SimplifyDemandedFPClass epilog helper function for fma (#176017)

via llvm-commits llvm-commits at lists.llvm.org
Sat Jan 24 06:19:51 PST 2026


Author: Matt Arsenault
Date: 2026-01-24T15:19:47+01:00
New Revision: 0263baa0b586620248a5778d27f6af8e3bc4d249

URL: https://github.com/llvm/llvm-project/commit/0263baa0b586620248a5778d27f6af8e3bc4d249
DIFF: https://github.com/llvm/llvm-project/commit/0263baa0b586620248a5778d27f6af8e3bc4d249.diff

LOG: InstCombine: Use SimplifyDemandedFPClass epilog helper function for fma (#176017)

NFC refactor to use shared code for fold to constant or set fast math
flags.

Added: 
    

Modified: 
    llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp b/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
index 83573054067a2..6846f13dced66 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
@@ -2761,20 +2761,8 @@ Value *InstCombinerImpl::SimplifyDemandedUseFPClass(Instruction *I,
         Known = KnownFPClass::fma(KnownSrc[0], KnownSrc[1], KnownSrc[2], Mode);
       }
 
-      FPClassTest ValidResults = DemandedMask & Known.KnownFPClasses;
-      if (Constant *SingleVal =
-              getFPClassConstant(VTy, ValidResults, /*IsCanonicalizing=*/true))
-        return SingleVal;
-
-      FastMathFlags InferredFMF =
-          inferFastMathValueFlags(FMF, ValidResults, KnownSrc);
-      if (InferredFMF != FMF) {
-        CI->dropUBImplyingAttrsAndMetadata();
-        CI->setFastMathFlags(InferredFMF);
-        return I;
-      }
-
-      break;
+      return simplifyDemandedFPClassResult(CI, FMF, DemandedMask, Known,
+                                           {KnownSrc});
     }
     case Intrinsic::maximum:
     case Intrinsic::minimum:


        


More information about the llvm-commits mailing list