[Mlir-commits] [mlir] Add non-temporal support for LLVM masked loads (PR #104598)

Tobias Gysi llvmlistbot at llvm.org
Fri Aug 16 09:37:04 PDT 2024


================
@@ -842,22 +842,26 @@ def LLVM_GetActiveLaneMaskOp
 /// Create a call to Masked Load intrinsic.
 def LLVM_MaskedLoadOp : LLVM_OneResultIntrOp<"masked.load"> {
   let arguments = (ins LLVM_AnyPointer:$data, LLVM_VectorOf<I1>:$mask,
-                   Variadic<LLVM_AnyVector>:$pass_thru, I32Attr:$alignment);
+                   Variadic<LLVM_AnyVector>:$pass_thru, I32Attr:$alignment,
+                   DefaultValuedAttr<BoolAttr, "false">:$nontemporal);
----------------
gysit wrote:

Ok maybe we have no access then to the builder that takes a bool. 

Then something like `hasMetadata ? $_builder.getUnitAttr() : nullptr` may work? If not feel free to use the boolean (maybe using $_builder.getBoolAttr(hasMetadata))

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


More information about the Mlir-commits mailing list