@@ -1714,6 +1714,7 @@ def Vector_LoadOp : Vector_Op<"load", [
1714
1714
load operation. It must be a positive power of 2. The operation must access
1715
1715
memory at an address aligned to this boundary. Violations may lead to
1716
1716
architecture-specific faults or performance penalties.
1717
+ A value of 0 indicates no specific alignment requirement.
1717
1718
}];
1718
1719
1719
1720
let arguments = (ins Arg<AnyMemRef, "the reference to load from",
@@ -1829,6 +1830,7 @@ def Vector_StoreOp : Vector_Op<"store", [
1829
1830
store operation. It must be a positive power of 2. The operation must access
1830
1831
memory at an address aligned to this boundary. Violations may lead to
1831
1832
architecture-specific faults or performance penalties.
1833
+ A value of 0 indicates no specific alignment requirement.
1832
1834
}];
1833
1835
1834
1836
let arguments = (ins
@@ -1917,6 +1919,7 @@ def Vector_MaskedLoadOp :
1917
1919
load operation. It must be a positive power of 2. The operation must access
1918
1920
memory at an address aligned to this boundary. Violations may lead to
1919
1921
architecture-specific faults or performance penalties.
1922
+ A value of 0 indicates no specific alignment requirement.
1920
1923
}];
1921
1924
let extraClassDeclaration = [{
1922
1925
MemRefType getMemRefType() {
@@ -2009,6 +2012,7 @@ def Vector_MaskedStoreOp :
2009
2012
store operation. It must be a positive power of 2. The operation must access
2010
2013
memory at an address aligned to this boundary. Violations may lead to
2011
2014
architecture-specific faults or performance penalties.
2015
+ A value of 0 indicates no specific alignment requirement.
2012
2016
}];
2013
2017
let extraClassDeclaration = [{
2014
2018
MemRefType getMemRefType() {
@@ -2083,6 +2087,12 @@ def Vector_GatherOp :
2083
2087
during progressively lowering to bring other memory operations closer to
2084
2088
hardware ISA support for a gather.
2085
2089
2090
+ An optional `alignment` attribute allows to specify the byte alignment of the
2091
+ scatter operation. It must be a positive power of 2. The operation must access
2092
+ memory at an address aligned to this boundary. Violations may lead to
2093
+ architecture-specific faults or performance penalties.
2094
+ A value of 0 indicates no specific alignment requirement.
2095
+
2086
2096
Examples:
2087
2097
2088
2098
```mlir
@@ -2182,6 +2192,7 @@ def Vector_ScatterOp :
2182
2192
scatter operation. It must be a positive power of 2. The operation must access
2183
2193
memory at an address aligned to this boundary. Violations may lead to
2184
2194
architecture-specific faults or performance penalties.
2195
+ A value of 0 indicates no specific alignment requirement.
2185
2196
2186
2197
Examples:
2187
2198
@@ -2265,6 +2276,7 @@ def Vector_ExpandLoadOp :
2265
2276
load operation. It must be a positive power of 2. The operation must access
2266
2277
memory at an address aligned to this boundary. Violations may lead to
2267
2278
architecture-specific faults or performance penalties.
2279
+ A value of 0 indicates no specific alignment requirement.
2268
2280
2269
2281
Note, at the moment this Op is only available for fixed-width vectors.
2270
2282
@@ -2353,6 +2365,7 @@ def Vector_CompressStoreOp :
2353
2365
store operation. It must be a positive power of 2. The operation must access
2354
2366
memory at an address aligned to this boundary. Violations may lead to
2355
2367
architecture-specific faults or performance penalties.
2368
+ A value of 0 indicates no specific alignment requirement.
2356
2369
2357
2370
Note, at the moment this Op is only available for fixed-width vectors.
2358
2371
0 commit comments