This revision belongs to a series of patches that reduce reliance of Linalg transformations on templated rewrite and conversion patterns.
Instead, this uses a MatchAnyTag pattern for the vast majority of cases and dispatches internally.
Details
- Reviewers
pifon2a ftynse mravishankar
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Nice cleanup! Concerned about drop in coverage though.
mlir/lib/Dialect/Linalg/Transforms/Loops.cpp | ||
---|---|---|
385 | Nit: Crux of this method and the one below are the same. Can we just have a emitScalarPoolingMinMaxOpImplementation and combine the logic (the explicit instantiation would be just calling this impl function). But maybe not be worth it, so a suggestion that can be ignored. | |
523 | TIL TypeSwitch! This looks great! Thanks! | |
mlir/test/Dialect/Linalg/loops.mlir | ||
2 | Does this need to be split. Having the entire command line in one line looks fine to me. | |
3 | Does R_UN work? Will this not stop the test from executing? | |
6 | Is this actually running the test? | |
81 | This seems to be dropping coverage a lot. For example, the pooling ops, conv ops, etc. arent being tests. Not sure whats happening here? |
Nit: Crux of this method and the one below are the same. Can we just have a emitScalarPoolingMinMaxOpImplementation and combine the logic (the explicit instantiation would be just calling this impl function). But maybe not be worth it, so a suggestion that can be ignored.