[clang] [llvm] [clang][NVPTX] Add builtins and intrinsics for conversions of new FP types (PR #134345)
Srinivasa Ravi via cfe-commits
cfe-commits at lists.llvm.org
Sun Apr 13 23:09:35 PDT 2025
================
@@ -703,6 +703,41 @@ let hasSideEffects = false in {
defm CVT_to_tf32_rz_satf : CVT_TO_TF32<"rz.satfinite", [hasPTX<86>, hasSM<100>]>;
defm CVT_to_tf32_rn_relu_satf : CVT_TO_TF32<"rn.relu.satfinite", [hasPTX<86>, hasSM<100>]>;
defm CVT_to_tf32_rz_relu_satf : CVT_TO_TF32<"rz.relu.satfinite", [hasPTX<86>, hasSM<100>]>;
+
+ // FP6 conversions.
+ foreach type = ["e2m3x2", "e3m2x2"] in {
+ def CVT_ # type # _f32 : NVPTXInst<(outs Int16Regs:$dst),
----------------
Wolfram70 wrote:
I had initially omitted the suffix since we appear to do that for the only other case with the `.satfinite` modifier mandatorily required (the `f32` to `f8x2` conversions). But I agree that it would be better to have all the modifiers as a suffix in the intrinsic and builtin names since we do that for everything else. I have updated the names of those intrinsics and builtins now. Thanks!
https://github.com/llvm/llvm-project/pull/134345
More information about the cfe-commits
mailing list