If create-deallocs=0, mark all bufferization.alloc_tensor ops as escaping. (Unless they already have an escape attribute.) In the absence of analysis information, check SSA use-def chains to see if the value may be yielded.
Depends On D127301
Paths
| Differential D127302
[mlir][bufferize] Better implementation of AnalysisState::isTensorYielded ClosedPublic Authored by springerm on Jun 8 2022, 6:49 AM.
Details Summary If create-deallocs=0, mark all bufferization.alloc_tensor ops as escaping. (Unless they already have an escape attribute.) In the absence of analysis information, check SSA use-def chains to see if the value may be yielded. Depends On D127301
Diff Detail
Event Timelinespringerm added a child revision: D127652: [mlir][bufferize] Bufferize after TensorCopyInsertion.Jun 13 2022, 8:23 AM This revision is now accepted and ready to land.Jun 14 2022, 8:57 AM This revision was landed with ongoing or failed builds.Jun 15 2022, 1:18 AM Closed by commit rGa36c801d127a: [mlir][bufferize] Better implementation of AnalysisState::isTensorYielded (authored by springerm). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 437072 mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
mlir/lib/Dialect/Bufferization/Transforms/TensorCopyInsertion.cpp
mlir/test/Dialect/Bufferization/Transforms/tensor-copy-insertion.mlir
|
move out, or empty line