[Mlir-commits] [mlir] [mlir][ArmSME] Rewrite illegal `shape_casts` to `vector.transpose` ops (PR #82985)

Benjamin Maxwell llvmlistbot at llvm.org
Mon Feb 26 10:55:34 PST 2024


MacDue wrote:

> > ```mlir
> > // Case 1:
> > %a = vector.shape_cast %0 : vector<[4]x1xf32> to vector<1x[4]xf32>
> > ```
> 
> ...
> 
> > Various lowerings and drop unit-dims patterns add such shape_casts, however, if they do not cancel out (which they likely won't if we've reached the vector-legalization pass) they will prevent lowering the IR.
> 
> something not clear to me here, `Case 1` would be introduced by `TransposeOpLowering` in `-convert-vector-to-llvm` and vector legalization is way before then? Or is the ordering slightly different in IREE?

In IREE the generic vector lowering happens quite a bit earlier than the ArmSME pipeline (and it's not part of `-convert-vector-to-llvm`, it's just a general vector dialect level pass). 

https://github.com/llvm/llvm-project/pull/82985


More information about the Mlir-commits mailing list