[clang] [CIR] Upstream handling for __builtin_prefetch (PR #164387)

Andy Kaylor via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 21 13:09:37 PDT 2025


================
@@ -4049,6 +4049,39 @@ def CIR_ExpectOp : CIR_Op<"expect", [
   }];
 }
 
+//===----------------------------------------------------------------------===//
+// PrefetchOp
+//===----------------------------------------------------------------------===//
+
+def CIR_PrefetchOp : CIR_Op<"prefetch"> {
+  let summary = "prefetch operation";
+  let description = [{
+    The `cir.prefetch` op prefetches data from the memmory address.
+
+    ```mlir
+    cir.prefetch(%0 : !cir.ptr<!void>) locality(1) write
+    ```
+
+    This opcode has the three attributes:
+    1. The $locality is a temporal locality specifier
+    ranging from (0) - no locality, to (3) - extremely local keep in cache.
----------------
andykaylor wrote:

Please add. "If $locality is not present, the default value is 3."

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


More information about the cfe-commits mailing list