[llvm] [AMDGPU] Make direct f16 <-> i32 conversion illegal (PR #205565)
Lukas Sommer via llvm-commits
llvm-commits at lists.llvm.org
Wed Jun 24 07:51:55 PDT 2026
================
@@ -3628,28 +3635,16 @@ SDValue AMDGPUTargetLowering::LowerUINT_TO_FP(SDValue Op,
return DAG.getNode(ISD::UINT_TO_FP, DL, DestVT, Ext);
}
- if (DestVT == MVT::bf16) {
- SDLoc SL(Op);
- SDValue ToF32 = DAG.getNode(ISD::UINT_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) &&
----------------
sommerlukas wrote:
Good point, I've removed that check.
https://github.com/llvm/llvm-project/pull/205565
More information about the llvm-commits
mailing list