[llvm] [InstCombine] Propagate ninf from fptrunc when folding `fptrunc fabs(X) -> fabs(fptrunc X)` (PR #143352)
Nikita Popov via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 9 00:53:26 PDT 2025
================
@@ -1926,6 +1926,9 @@ Instruction *InstCombinerImpl::visitFPTrunc(FPTruncInst &FPT) {
CallInst *NewCI =
CallInst::Create(Overload, {InnerTrunc}, OpBundles, II->getName());
NewCI->copyFastMathFlags(II);
+ // A normal value may be converted to an infinity.
+ if (II->getIntrinsicID() == Intrinsic::fabs)
+ NewCI->setHasNoInfs(FPT.hasNoInfs());
----------------
nikic wrote:
Now that we have FMF on fptrunc, can we always use the fptrunc flags here instead and not bother with the intrinsic flags at all?
https://github.com/llvm/llvm-project/pull/143352
More information about the llvm-commits
mailing list