[llvm] [NVPTX] Add float to tf32 conversion intrinsic (PR #121507)

Alex MacLean via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 3 13:42:14 PST 2025


================
@@ -1466,6 +1466,14 @@ let TargetPrefix = "nvvm" in {
   def int_nvvm_e5m2x2_to_f16x2_rn_relu : ClangBuiltin<"__nvvm_e5m2x2_to_f16x2_rn_relu">,
       Intrinsic<[llvm_v2f16_ty], [llvm_i16_ty], [IntrNoMem, IntrNoCallback]>;
 
+// Convert float to TF32
+def int_nvvm_convert_to_tf32_float : DefaultAttrsIntrinsic<[llvm_i32_ty],
+    [llvm_float_ty,    // Input float
+     llvm_metadata_ty, // Metadata for Rounding modes
+     llvm_i8_ty,       // Flag for Saturation modes
+     llvm_i1_ty],      // Flag for relu
+    [IntrNoMem, ImmArg<ArgIndex<2>>, ImmArg<ArgIndex<3>>]>;
----------------
AlexMaclean wrote:

Can you add `IntrSpeculatable` to the attrs?

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


More information about the llvm-commits mailing list