[llvm] [LLVM][NVPTX] Add support for TMA prefetch Rubin extensions (PR #217630)

Rajat Bajpai via llvm-commits llvm-commits at lists.llvm.org
Sun Aug 23 03:14:08 PDT 2026


================
@@ -1357,10 +1363,85 @@ class CP_ASYNC_BULK_TENSOR_REDUCE_OVERRIDE_INTR<int dim, string mode, string ove
         Range<ArgIndex<RedOpIdx>, 0, 8>,
         ArgInfo<ArgIndex<RedOpIdx>, [ArgName<"red_op">,
                                      ImmArgPrinter<"printTMAReductionOp">]>,
-        ArgInfo<ArgIndex<!add(RedOpIdx, 1)>, [ArgName<"flag_cache_hint">]>
+        NVVM_CACHE_HINT_ARGPROP<!add(RedOpIdx, 1)>.Prop
+  ];
+}
+
+// Helper that emits the intrinsic-property set for the evict_policy argument.
+// `upperBound` is the exclusive upper bound of the allowed policy value range.
+// Prefetch accepts both EVICT_NORMAL and EVICT_LAST (default 2).
+// Applypriority only accepts EVICT_NORMAL (upperBound = 1).
+class NVVM_EVICT_POLICY_ARGPROP<int argNo, int upperBound = 2> {
----------------
rajatbajpai wrote:

Sure!

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


More information about the llvm-commits mailing list