Skip to content

Commit 0447f4a

Browse files
authored
More documentation on ops with AffineMap instantiations (#202)
1 parent af591a2 commit 0447f4a

File tree

4 files changed

+30
-1
lines changed

4 files changed

+30
-1
lines changed
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
added:
2+
- documentation

include/llzk/Dialect/Array/IR/Ops.td

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,9 +172,20 @@ def LLZK_CreateArrayOp
172172
```
173173
}];
174174

175-
let arguments = (ins Variadic<ArrayElemType>:$elements,
175+
// See `VerifySizesForMultiAffineOps` for more explanation of these arguments.
176+
let arguments = (ins
177+
// Elements to initialize the array. Length is either zero or equal to
178+
// the length of the flattened/linearized result ArrayType.
179+
Variadic<ArrayElemType>:$elements,
180+
// List of AffineMap operand groups where each group provides the
181+
// arguments to instantiate the next (left-to-right) AffineMap used as an
182+
// array dimension in the result ArrayType.
176183
VariadicOfVariadic<Index, "mapOpGroupSizes">:$mapOperands,
184+
// Within each group in '$mapOperands', denotes the number of values that
185+
// are AffineMap "dimensional" arguments with the remaining values being
186+
// AffineMap "symbolic" arguments.
177187
DefaultValuedAttr<DenseI32ArrayAttr, "{}">:$numDimsPerMap,
188+
// Denotes the size of each variadic group in '$mapOperands'.
178189
DenseI32ArrayAttr:$mapOpGroupSizes);
179190
let results = (outs LLZK_ArrayType:$result);
180191

include/llzk/Dialect/Function/IR/Ops.td

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -297,10 +297,18 @@ def CallOp : FunctionDialectOp<
297297
```
298298
}];
299299

300+
// See `VerifySizesForMultiAffineOps` for more explanation of these arguments.
300301
let arguments = (ins SymbolRefAttr:$callee,
301302
Variadic<AnyLLZKType>:$argOperands,
303+
// List of AffineMap operand groups where each group provides the
304+
// arguments to instantiate the next (left-to-right) AffineMap used as a
305+
// struct parameter in the result StructType.
302306
VariadicOfVariadic<Index, "mapOpGroupSizes">:$mapOperands,
307+
// Within each group in '$mapOperands', denotes the number of values that
308+
// are AffineMap "dimensional" arguments with the remaining values being
309+
// AffineMap "symbolic" arguments.
303310
DefaultValuedAttr<DenseI32ArrayAttr, "{}">:$numDimsPerMap,
311+
// Denotes the size of each variadic group in '$mapOperands'.
304312
DenseI32ArrayAttr:$mapOpGroupSizes);
305313
let results = (outs Variadic<AnyLLZKType>);
306314

include/llzk/Dialect/Struct/IR/Ops.td

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -226,12 +226,20 @@ def LLZK_FieldReadOp
226226
}];
227227
let isRead = 1;
228228

229+
// See `VerifySizesForMultiAffineOps` for more explanation of these arguments.
229230
let arguments = (ins LLZK_StructType:$component,
230231
FlatSymbolRefAttr:$field_name,
231232
OptionalAttr<AnyAttrOf<[SymbolRefAttr, IndexAttr,
232233
AffineMapAttr]>>:$tableOffset,
234+
// List of AffineMap operand groups where each group provides the
235+
// arguments to instantiate the next (left-to-right) AffineMap used in
236+
// `tableOffset`.
233237
VariadicOfVariadic<Index, "mapOpGroupSizes">:$mapOperands,
238+
// Within each group in '$mapOperands', denotes the number of values that
239+
// are AffineMap "dimensional" arguments with the remaining values being
240+
// AffineMap "symbolic" arguments.
234241
DefaultValuedAttr<DenseI32ArrayAttr, "{}">:$numDimsPerMap,
242+
// Denotes the size of each variadic group in '$mapOperands'.
235243
DenseI32ArrayAttr:$mapOpGroupSizes);
236244
let results = (outs AnyLLZKType:$val);
237245

0 commit comments

Comments
 (0)