================
@@ -4268,4 +4269,45 @@ def int_nvvm_tensormap_replace_fill_mode :
      ArgInfo<ArgIndex<1>, [ArgName<"fill_mode">, 
                            ImmArgPrinter<"printTensormapFillMode">]>]>;
 
+// Create an opaque 128-bit fabric handle from a 32-bit logical-endpoint id and
+// a 64-bit offset.
+def int_nvvm_fabric_handle_pair
+  : NVVMPureIntrinsic<[llvm_fabric_handle_ptr_ty],
+                      [llvm_i32_ty, llvm_i64_ty], [],
+                      "llvm.nvvm.fabric.handle_pair">;
+
+def int_nvvm_fabric_try_put
+  : DefaultAttrsIntrinsicFlags<[],
+      [llvm_fabric_handle_ptr_ty,  // fabric handle
+       llvm_shared_ptr_ty,         // src_smem_ptr
+       llvm_shared_ptr_ty,         // mbarrier_ptr
+       llvm_i32_ty,                // size (bytes)
+       llvm_i16_ty,                // byte_mask (16-bit bytemask)
+       llvm_i64_ty],               // cache_hint
+      [llvm_i1_ty,                 // flag_cache_hint
+       llvm_i1_ty,                 // flag_cp_mask
+       llvm_i32_ty],               // flag_multimem (unitcast or multicast)
+      [IntrConvergent, IntrArgMemOnly, ReadOnly<ArgIndex<1>>,
+       NVVM_ARG_NAME_PROP<6, "flag_cache_hint">.Prop,
+       ArgInfo<ArgIndex<7>, [ArgName<"flag_cp_mask">]>,
+       Range<ArgIndex<8>, 0, 2>,
+       ArgInfo<ArgIndex<8>, [ArgName<"flag_multimem">]>],
+      "llvm.nvvm.fabric.try_put">;
----------------
kvederni wrote:

May we have the `.s2f` suffix in the name to specify a direction?

https://github.com/llvm/llvm-project/pull/229665
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to