[Mlir-commits] [mlir] [mlir][vector][spirv] Lower vector.transfer_read and vector.transfer_write to SPIR-V (PR #69708)

Kai Wang llvmlistbot at llvm.org
Tue Oct 31 05:05:42 PDT 2023


Hsiangkai wrote:

> Thanks for the patterns. Actually I'm wondering whether we need them--vector transfer ops are high level abstractions; they provide powerful mechansisms with padding, in bounds, and permutation maps. We'd typically want to first lower these transfer ops into vector.load/store or memref.load/store and then lower them to SPIR-V. Have you considered that paths?

There is a description in the document. That is, "A vector.transfer_read can be lowered to a simple load if all dimensions are specified to be within bounds and no mask was specified". Under these conditions, does it make sense to convert transfer_read/transfer_write to SPIR-V directly? I have not tried the way to convert transfer_read to memref.load though.

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


More information about the Mlir-commits mailing list