[mlir][vector] Add lowering of Transfer_read with broadcast and permutation map
authorthomasraoux <thomasraoux@google.com>
Wed, 24 Mar 2021 16:53:53 +0000 (09:53 -0700)
committerthomasraoux <thomasraoux@google.com>
Mon, 29 Mar 2021 15:38:43 +0000 (08:38 -0700)
commit5288c25c7008debf2a1401cd288fda1179d00484
tree151afad020ffeb6095270ca57eec5646022e2f60
parente06f1a8e3cc60bb8d2a937f47f6dac06a8818a17
[mlir][vector] Add lowering of Transfer_read with broadcast and permutation map

Convert transfer_read ops with permutation maps into simpler
transfer_read with minority map + vector.braodcast and vector.transpose.
And transfer_read with leading dimensions broacast into transfer_read of
lower rank.

Differential Revision: https://reviews.llvm.org/D99019
mlir/include/mlir/IR/AffineMap.h
mlir/lib/Dialect/Vector/VectorTransforms.cpp
mlir/lib/IR/AffineMap.cpp
mlir/test/Dialect/Vector/vector-transfer-lowering.mlir