[all-commits] [llvm/llvm-project] c41297: [mlir] Async reference counting for block successo...
Eugene Zhulenev via All-commits
all-commits at lists.llvm.org
Thu May 27 09:22:22 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: c412979cde54ec3b5d9f3b83f2b8b5b4b353ed65
https://github.com/llvm/llvm-project/commit/c412979cde54ec3b5d9f3b83f2b8b5b4b353ed65
Author: Eugene Zhulenev <ezhulenev at google.com>
Date: 2021-05-27 (Thu, 27 May 2021)
Changed paths:
M mlir/lib/Dialect/Async/Transforms/AsyncRuntimeRefCounting.cpp
M mlir/test/Dialect/Async/async-runtime-ref-counting.mlir
Log Message:
-----------
[mlir] Async reference counting for block successors with divergent reference counted liveness
Support reference counted values implicitly passed (live) only to some of the successors.
Example: if branched to ^bb2 token will leak, unless `drop_ref` operation is properly created
```
^entry:
%token = async.runtime.create : !async.token
cond_br %cond, ^bb1, ^bb2
^bb1:
async.runtime.await %token
async.runtime.drop_ref %token
br ^bb2
^bb2:
return
```
Reviewed By: mehdi_amini
Differential Revision: https://reviews.llvm.org/D103102
More information about the All-commits
mailing list