[mlir][PDLL] Don't use the result of `Constraint::getDefName()` when uniquingIn the case of anonymous defs this may return the name of the base def class,which can lead to two different defs with
[mlir][PDLL] Don't use the result of `Constraint::getDefName()` when uniquingIn the case of anonymous defs this may return the name of the base def class,which can lead to two different defs with the same name (which hits an assert).This commit adds a new `getUniqueDefName` method that returns a unique namefor the constraint.Differential Revision: https://reviews.llvm.org/D124074
show more ...
[PDLL] Add support for tablegen includes and importing ODS informationThis commit adds support for processing tablegen include files, and importingvarious information from ODS. This includes opera
[PDLL] Add support for tablegen includes and importing ODS informationThis commit adds support for processing tablegen include files, and importingvarious information from ODS. This includes operations, attribute+type constraints,attribute/operation/type interfaces, etc. This will allow for much more robust tooling,and also allows for referencing ODS constructs directly within PDLL (imported interfacescan be used as constraints, operation result names can be used for member access, etc).Differential Revision: https://reviews.llvm.org/D119900
[mlir][PDLL] Add an initial frontend for PDLLThis is a new pattern rewrite frontend designed from the groundup to support MLIR constructs, and to target PDL. This frontendlanguage was proposed in
[mlir][PDLL] Add an initial frontend for PDLLThis is a new pattern rewrite frontend designed from the groundup to support MLIR constructs, and to target PDL. This frontendlanguage was proposed in https://llvm.discourse.group/t/rfc-pdll-a-new-declarative-rewrite-frontend-for-mlir/4798This commit starts sketching out the base structure of thefrontend, and is intended to be a minimal starting point forbuilding up the language. It essentially contains support fordefining a pattern, variables, and erasing an operation. Thefeatures mentioned in the proposal RFC (including IDE support)will be added incrementally in followup commits.I intend to upstream the documentation for the language in afollowup when a bit more of the pieces have been landed.Differential Revision: https://reviews.llvm.org/D115093