diff options
author | Andrzej WarzyĆski <andrzej.warzynski@arm.com> | 2023-12-04 16:56:43 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-04 16:56:43 +0000 |
commit | bbd2b08b95fe76bea138c1b03c1cd42ed3ee04df (patch) | |
tree | 8eddda7b522f76c5b344d1f0138c6cdcd09da31a /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 74e59e7752ac80607d817308a63d0574a6e8cbe1 (diff) | |
download | llvm-bbd2b08b95fe76bea138c1b03c1cd42ed3ee04df.zip llvm-bbd2b08b95fe76bea138c1b03c1cd42ed3ee04df.tar.gz llvm-bbd2b08b95fe76bea138c1b03c1cd42ed3ee04df.tar.bz2 |
[mlir][vector] Make `TransposeOpLowering` configurable (#73915)
Following the discussion here:
* https://github.com/llvm/llvm-project/pull/72105
this patch makes the `TransposeOpLowering` configurable so that one can select
whether to favour `vector.shape_cast` over `vector.transpose`.
As per the discussion in #72105, using `vector.shape_cast` is very beneficial
and desirable when targeting `LLVM IR` (CPU lowering), but won't work when
targeting `SPIR-V` today (GPU lowering). Hence the need for a mechanism to be
able to disable/enable the pattern introduced in #72105. This patch proposes one
such mechanism.
While this should solve the problem that we are facing today, it's understood to
be a temporary workaround. It should be removed once support for lowering
`vector.shape_cast` to SPIR-V is added. Also, (once implemented) the following
proposal might make this workaround redundant:
* https://discourse.llvm.org/t/improving-handling-of-unit-dimensions-in-the-vector-dialect/
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions