@@ -1233,11 +1233,7 @@ def LLVM_TBAATagArrayAttr
12331233}
12341234
12351235//===----------------------------------------------------------------------===//
1236- // Memory Model Relaxation Annations (mmra) Attributes
1237- //===----------------------------------------------------------------------===//
1238-
1239- //===----------------------------------------------------------------------===//
1240- // MMRATagAttr - single MMRA tag
1236+ // MMRATagAttr
12411237//===----------------------------------------------------------------------===//
12421238
12431239def LLVM_MMRATagAttr : LLVM_Attr<"MMRATag", "mmra_tag"> {
@@ -1260,6 +1256,14 @@ def LLVM_MMRATagAttr : LLVM_Attr<"MMRATag", "mmra_tag"> {
12601256 #mmra_tag1 = #llvm.mmra_tag<"foo":"bar">
12611257 ```
12621258
1259+ Either one MMRA tag or an array of them may be added to any LLVM
1260+ operation that operates on memory.
1261+
1262+ ```mlir
1263+ %v = llvm.load %ptr {llvm.mmra = #mmra_tag} : !llvm.ptr -> i8
1264+ llvm.store %v, %ptr2 {llvm.mmra [#mmra_tag, #mmra_tag1]} : i8, !llvm.ptr
1265+ ```
1266+
12631267 See the following link for more details:
12641268 https://llvm.org/docs/MemoryModelRelaxationAnnotations.html
12651269 }];
@@ -1269,10 +1273,6 @@ def LLVM_MMRATagAttr : LLVM_Attr<"MMRATag", "mmra_tag"> {
12691273 let genMnemonicAlias = 1;
12701274}
12711275
1272- def LLVM_MMRATagArrayAttr : TypedArrayAttrBase<
1273- LLVM_MMRATagAttr,
1274- LLVM_MMRATagAttr.summary # " array">;
1275-
12761276//===----------------------------------------------------------------------===//
12771277// ConstantRangeAttr
12781278//===----------------------------------------------------------------------===//
0 commit comments