[mlir:Async] Fix a bug in automatic refence counting around function calls
authorEugene Zhulenev <ezhulenev@google.com>
Tue, 29 Jun 2021 16:30:54 +0000 (09:30 -0700)
committerEugene Zhulenev <ezhulenev@google.com>
Tue, 29 Jun 2021 16:35:43 +0000 (09:35 -0700)
commit9ccdaac8f9d5b06c35a18180c517342c435d75a1
tree6a67df1e8e5d85c342daf5bb183e4a52423c50ce
parent6088f86a2e1ce3ab6fe9573e26fc63a5cf338fa9
[mlir:Async] Fix a bug in automatic refence counting around function calls

Depends On D104998

Function calls "transfer ownership" to the callee and it puts additional constraints on the reference counting optimization pass

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D104999
mlir/lib/Dialect/Async/Transforms/AsyncRuntimeRefCountingOpt.cpp
mlir/lib/Dialect/Async/Transforms/CMakeLists.txt
mlir/test/Dialect/Async/async-runtime-ref-counting-opt.mlir
mlir/test/Integration/Dialect/Async/CPU/microbench-linalg-async-parallel-for.mlir
mlir/test/Integration/Dialect/Async/CPU/microbench-scf-async-parallel-for.mlir
mlir/test/Integration/Dialect/Async/CPU/test-async-parallel-for-1d.mlir
mlir/test/Integration/Dialect/Async/CPU/test-async-parallel-for-2d.mlir