aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
diff options
context:
space:
mode:
authorMatthias Springer <springerm@google.com>2022-02-24 19:48:40 +0900
committerMatthias Springer <springerm@google.com>2022-02-24 19:58:05 +0900
commit25bc684603b1aa000b92aba2e4d4fd0bf524eb02 (patch)
treec2da320136fe16f02dde959b050d618f880d3c1f /llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
parentc64dbb66d98d78bfca80ef23959747fe76911a4a (diff)
downloadllvm-25bc684603b1aa000b92aba2e4d4fd0bf524eb02.zip
llvm-25bc684603b1aa000b92aba2e4d4fd0bf524eb02.tar.gz
llvm-25bc684603b1aa000b92aba2e4d4fd0bf524eb02.tar.bz2
[mlir][linalg][bufferize] Always bufferize in-place with "out" operands by default
In D115022, we introduced an optimization where OpResults of a `linalg.generic` may bufferize in-place with an "in" OpOperand if the corresponding "out" OpOperand is not used in the computation. This optimization can lead to unexpected behavior if the newly chosen OpOperand is in the same alias set as another OpOperand (that is used in the computation). In that case, the newly chosen OpOperand must bufferize out-of-place. This can be confusing to users, as always choosing the "out" OpOperand (regardless of whether it is used) would be expected when having the notion of "destination-passing style" in mind. With this change, we go back to always bufferizing in-place with "out" OpOperands by default, but letting users override the behavior with a bufferization option. Differential Revision: https://reviews.llvm.org/D120182
Diffstat (limited to 'llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp')
0 files changed, 0 insertions, 0 deletions