Hi @MLS
I have shared the workshop presentation that @MaheshRavishankar referred to up here. Even though you say canonicalize such `linalg.generic
I am guessing you meant to say lift them to named ops. I agree with @MaheshRavishankar – linalg.generic is a more unique representation (hence canonical) rather than named ops, specially after -test-linalg-drop-unit-dims
(which you discovered) and -test-linalg-decompose-ops=remove-dead-args-and-results
.
But if its named ops that you require (whether we agree/disagree if that’s canonical or not – doesn’t really matter here), please let me know if any blockers are in your way. I am happy to add more patterns for lifting generic to named or fixing issues.