[Mlir-commits] [mlir] [mlir][vector] Canonicalize/fold 'order preserving' transposes (PR #135841)

James Newling llvmlistbot at llvm.org
Wed Apr 30 20:00:14 PDT 2025


newling wrote:

> > Thanks @banach-space I'll address these comments, but just to mention that there still is test that fails (hangs) for me, it is test/Dialect/ArmSME/vector-legalization.mlir
> 
> In that case, I think the right approach is to first remove `ConvertIllegalShapeCastOpsToTransposes` (I suspect it's no longer needed), and then we can relax this logic.
> 
> Sorry for the back-and-forth, but let’s keep things as-is for now. Would you mind leaving a TODO for me to revisit and relax these constraints? Ideally, reference `ConvertIllegalShapeCastOpsToTransposes` in the comment.
> 
> Also, would you mind replacing `failure()` with `notifyMatchFailure()`? Thanks!

I think this approach makes sense. I've made these updates (and am about to push them). I realized that only one of the 2 patterns needs to have scalable vectors disabled, so I've enabled the other one (i.e. transpose(shape_cast) -> shape_cast can handle scalable vectors fine, I didn't need to fail in this case too). 
Thanks!  

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


More information about the Mlir-commits mailing list