summaryrefslogtreecommitdiff
path: root/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
diff options
context:
space:
mode:
authorBenoit Jacob <benoitjacob@google.com>2021-12-13 20:00:28 +0000
committerNicolas Vasilache <nicolas.vasilache@gmail.com>2021-12-13 21:49:04 +0000
commit0aea49a7308322e6987c7b45e4e0d7ab15609e78 (patch)
treef10d78deffe0b487104b65feb2abfd28016766ca /llvm/lib/Bitcode/Reader/BitcodeReader.cpp
parentc10995a8adcec00cc929d9fa742758a415316fb2 (diff)
[mlir][Vector] Patterns flattening vector transfers to 1D
This is the first part of https://reviews.llvm.org/D114993 which has been split into small independent commits. This is needed at the moment to get good codegen from 2d vector.transfer ops that aim to compile to SIMD load/store instructions but that can only do so if the whole 2d transfer shape is handled in one piece, in particular taking advantage of the memref being contiguous rowmajor. For instance, if the target architecture has 128bit SIMD then we would expect that contiguous row-major transfers of <4x4xi8> map to one SIMD load/store instruction each. The current generic lowering of multi-dimensional vector.transfer ops can't achieve that because it peels dimensions one by one, so a transfer of <4x4xi8> becomes 4 transfers of <4xi8>. The new patterns here are only enabled for now by -test-vector-transfer-flatten-patterns. Reviewed By: nicolasvasilache
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions