[llvm] [AMDGPU] Make direct f16 <-> i32 conversion illegal (PR #205565)

Jay Foad via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 24 07:11:04 PDT 2026


================
@@ -3674,31 +3669,18 @@ SDValue AMDGPUTargetLowering::LowerSINT_TO_FP(SDValue Op,
     return DAG.getNode(ISD::SINT_TO_FP, DL, DestVT, Ext);
   }
 
-  if (DestVT == MVT::bf16) {
-    SDLoc SL(Op);
-    SDValue ToF32 = DAG.getNode(ISD::SINT_TO_FP, SL, MVT::f32, Src);
-    SDValue FPRoundFlag = DAG.getIntPtrConstant(0, SL, /*isTarget=*/true);
-    return DAG.getNode(ISD::FP_ROUND, SL, MVT::bf16, ToF32, FPRoundFlag);
-  }
+  if (DestVT == MVT::bf16)
+    return LowerINT_TO_FP16(Op, DAG, MVT::bf16);
+
+  if (DestVT == MVT::f16 && isTypeLegal(MVT::f16) &&
----------------
jayfoad wrote:

Same kind of questions here.

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


More information about the llvm-commits mailing list