[clang] [llvm] [NVPTX] Add intrinsics for cvt .f6x2 and .ue8m0x2 variants (PR #134345)

Artem Belevich via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 4 13:58:46 PDT 2025


================
@@ -596,6 +605,28 @@ def __nvvm_e4m3x2_to_f16x2_rn_relu : NVPTXBuiltinSMAndPTX<"_Vector<2, __fp16>(sh
 def __nvvm_e5m2x2_to_f16x2_rn : NVPTXBuiltinSMAndPTX<"_Vector<2, __fp16>(short)", SM_89, PTX81>;
 def __nvvm_e5m2x2_to_f16x2_rn_relu : NVPTXBuiltinSMAndPTX<"_Vector<2, __fp16>(short)", SM_89, PTX81>;
 
+def __nvvm_ff_to_e2m3x2_rn : NVPTXBuiltinSMAndPTX<"short(float, float)", SM<"100a", [SM_101a, SM_120a]>, PTX86>;
----------------
Artem-B wrote:

Is there a particular reason `short` was chosen as the return type for `e2m3x2` here, and not a vector of opaque int8, like what we're using for bf16/fp16? 

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


More information about the llvm-commits mailing list