[llvm-branch-commits] [llvm] InstCombine: Use SimplifyDemandedFPClass epilog helper function for fma (PR #176017)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Wed Jan 14 11:40:39 PST 2026
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-llvm-support
Author: Matt Arsenault (arsenm)
<details>
<summary>Changes</summary>
NFC refactor to use shared code for fold to constant or set fast math
flags.
---
Full diff: https://github.com/llvm/llvm-project/pull/176017.diff
1 Files Affected:
- (modified) llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp (+2-14)
``````````diff
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp b/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
index b198e5e824f1f..ce9dec699b06f 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
@@ -2582,20 +2582,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:
``````````
</details>
https://github.com/llvm/llvm-project/pull/176017
More information about the llvm-branch-commits
mailing list