[llvm] [ConstantFold] Fold `log1p` and `log1pf` when the input parameter is a constant value. (PR #112113)
Yingwei Zheng via llvm-commits
llvm-commits at lists.llvm.org
Mon Oct 14 08:45:44 PDT 2024
================
@@ -2394,6 +2395,11 @@ static Constant *ConstantFoldScalarCall1(StringRef Name,
if (!APF.isZero() && TLI->has(Func))
return ConstantFoldFP(logb, APF, Ty);
break;
+ case LibFunc_log1p:
+ case LibFunc_log1pf:
+ if (APF > APFloat(APF.getSemantics(), "-1") && TLI->has(Func))
----------------
dtcxzyw wrote:
`IEEEFloat::IEEEFloat(const fltSemantics &ourSemantics, integerPart value)` doesn't support initialize itself with a negative value:
https://github.com/llvm/llvm-project/blob/81fee740d073640c79c0d45a8e8e804c1c5fea40/llvm/lib/Support/APFloat.cpp#L1197-L1205
https://github.com/llvm/llvm-project/blob/a31e834ba8beaeed411b85af51ebd6598cb6007c/llvm/include/llvm/ADT/APFloat.h#L1045-L1050
https://github.com/llvm/llvm-project/pull/112113
More information about the llvm-commits
mailing list