Hi everyone,
I just sent out a WIP PR in which I ad an AVX2-specific vector.transpose lowering and expose it to LinalgStrategyPasses. This is enough for me to be functional but I am not a fan of the layering.
The trick is that generic vector.transpose transform and lowering patterns need to be applied at the same time as “more beneficial” AVX2-specific patterns.
I am wondering if people have strong opinions on how this control should be done. I’ve heard in the past talks of TargetMachine-like abstractions for MLIR but I am unaware of any progress in the field.
Ideally I am not looking for being blocked for weeks for something principled to emerge when I can easily make progress, isolate HW-specific options / patterns and refactor later.
Still, we need to start the conversation at some point…
So, here goes: https://reviews.llvm.org/D113347.
Thanks!