Lines Matching refs:constraints
37 about each op, including its constraints, custom assembly form, etc. This
93 and constraints of the operation, including whether the operation has side
99 constraints over operands or results. A notable subclass hierarchy is
100 `Type`, which stands for constraints for common C++ types.
102 constraints over attributes. A notable subclass hierarchy is `Attr`, which
103 stands for constraints for attributes whose values are of common types.
106 constraints imposed on them using the `predicate` field or the
213 of `Property` (constraints can be imposed onto it using its `predicate` field
228 - provide a handle to reference for other places like constraints.
292 constraints on attributes beyond the ones brought by value types. You can use
293 `ConfinedAttr` to compose complex constraints out of more primitive ones. For
297 Right now, the following primitive constraints are supported:
334 TODO: Design and implement more primitive constraints
348 #### Combining constraints
350 `AllAttrOf` is provided to allow combination of multiple constraints which
428 ### Operation traits and constraints
434 and constraints involving multiple operands/attributes/results are provided as
436 the `OpTrait` class. See [Constraints](#constraints) for more information.
640 [constraints](#constraints) specified on various entities of the op. To perform
650 verification constraints. For verificaiton which needs to access the nested
743 - The constraints on `inputs` and `outputs` are the same as the `input` of
1071 via type constraints or other information available. In these cases, the type of
1076 Some type constraints may only have one representation, allowing for them to be
1083 There are many operations that have known type equality constraints registered
1086 these equal constraints to discern the types of missing variables. The currently
1294 constraints. So both the operation definition and rewrite rules specification
1295 significantly involve writing constraints. We have the `Constraint` class in
1296 [`OpBase.td`][OpBase] as the common base class for all constraints.
1316 To help modelling constraints of common types, a set of `TypeConstraint`s are
1318 constraints of being a float, `TensorOf<[F32]>` for the constraints of being a
1322 constraints of common attribute kinds. They are the `Attr` subclass hierarchy.
1323 It includes `F32Attr` for the constraints of being a float attribute,
1324 `F32ArrayAttr` for the constraints of being a float array attribute, and so on.
1330 results. These constraints should be specified as the `Op` class template
1332 [Operation traits and constraints](#operation-traits-and-constraints).
1334 Multi-entity constraints are modeled as `PredOpTrait` (a subclass of `OpTrait`)
1341 commutative or not, whether is a terminator, etc. These constraints should be
1343 [Operation traits and constraints](#operation-traits-and-constraints).
1353 for composing constraints. The predicate for a constraint is typically built up
1382 replaced by `$attr`. For type constraints, it's a little bit special since
1383 we want the constraints on each type definition reads naturally and we want
1384 to attach type constraints directly to an operand/result, `$_self` will be
1417 TODO: Build up a library of reusable primitive constraints
1459 fine-grained constraints. For example, `StrAttr` directly maps to `StringAttr`;
1478 [further constraints](#confining-attributes).
1480 [multiple constraints](#combining-constraints).
1794 this means specifying traits, constraints and shape inference information in a
1828 * The op's operand/return type constraints are modelled along with the op in