[llvm] [CodeGen][ExpandIRInsts] Fix sitofp integer-to-float exponent overflow bug (PR #189142)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 10 05:58:27 PDT 2026


================
@@ -1111,7 +1111,24 @@ static void expandIToFP(Instruction *IToFP) {
   Retval0->addIncoming(A4, IfEnd26);
   Retval0->addIncoming(ConstantFP::getZero(IToFP->getType(), false), Entry);
 
-  IToFP->replaceAllUsesWith(Retval0);
+  unsigned MaxExp =
+      APFloat::semanticsMaxExponent(IToFP->getType()->getFltSemantics());
+  Value *Result = Retval0;
+
+  if (BitWidth >= MaxExp + 2) {
----------------
arsenm wrote:

Does this logic work for ppc_fp128?

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


More information about the llvm-commits mailing list