The Effect class hierarchy in the side effect infrastructure currently only
supports non-parametric effects uniquely identified by their type. Only one
instance of each effect is stored in method and returned by-pointer upon
request. Hook the Effect class hierarchy to StorageUniquer instead. This makes
Effect and derived classes value-types, similarly to types and attributes, and
prepares the ground for parametric effets.
Details
- Reviewers
rriddle nicolasvasilache
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
mlir/lib/IR/MLIRContext.cpp | ||
---|---|---|
27 | I don't really understand the layering here: I'm not convinced that the Context should be made aware of this? |
mlir/lib/IR/MLIRContext.cpp | ||
---|---|---|
27 | I am not happy with this either, this wouldn't scale to user-defined side effects. The other things that have uniquers are organized as follows:
Any suggestions? @rriddle ? |
clang-tidy: warning: invalid case style for function 'dyn_cast' [readability-identifier-naming]
not useful