forked from OSchip/llvm-project
7161aa06ef
Instead of modifying the existing scf.for op, create a new op with memref OpOperands/OpResults and delete the old op. New allocations / other memrefs can now be yielded from the loop. This functionality is deactivated by default and guarded against by AssertDestinationPassingStyle. This change also introduces `replaceOp`, which will be utilized by all other `bufferize` implementations in future commits. Bufferization will then no longer rely on old (pre-bufferize) ops to DCE away. Instead old ops are deleted on the spot. This improves debuggability because there won't be any duplicate ops anymore (bufferized + not-yet-bufferized) when dumping IR during bufferization. It is also less fragile because unbufferized IR can no longer silently "hang around" due to an implementation bug. Differential Revision: https://reviews.llvm.org/D114926 |
||
---|---|---|
.. | ||
Analysis | ||
Bindings/Python | ||
CAPI | ||
Conversion | ||
Dialect | ||
ExecutionEngine | ||
IR | ||
Interfaces | ||
Parser | ||
Pass | ||
Reducer | ||
Rewrite | ||
Support | ||
TableGen | ||
Target | ||
Tools | ||
Transforms | ||
Translation | ||
CMakeLists.txt |