[mlir] [VectorOps] Improve lowering of extract_strided_slice (and friends like shape_cast)
Using a shuffle for the last recursive step in progressive lowering not only results in much more compact IR, but also more efficient code (since the backend is no longer confused on subvector aliasing for longer vectors). E.g. the following %f = vector.shape_cast %v0: vector<1024xf32> to vector<32x32xf32> yields much better x86-64 code that runs 3x faster than the original. Reviewed By: bkramer, nicolasvasilache Differential Revision: https://reviews.llvm.org/D85482
Loading
Please sign in to comment