[mlir] Async: add support for lowering async value operands to LLVM
authorEugene Zhulenev <ezhulenev@google.com>
Thu, 24 Dec 2020 13:08:47 +0000 (05:08 -0800)
committerEugene Zhulenev <ezhulenev@google.com>
Fri, 25 Dec 2020 10:25:20 +0000 (02:25 -0800)
commit61422c8b661c506b25b5ac705cdbb2265af120d1
treead303c98d185801ddbb6ceeadc0291a64e0b9bc7
parent621ad468d99d4013a4298465f02707a5e9e89cae
[mlir] Async: add support for lowering async value operands to LLVM

Depends On D93592

Add support for `async.execute` async value unwrapping operands:

```
%token = async.execute(%async_value as %unwrapped : !async.value<!my.type>) {
  ...
  async.yield
}
```

Reviewed By: csigg

Differential Revision: https://reviews.llvm.org/D93598
mlir/lib/Conversion/AsyncToLLVM/AsyncToLLVM.cpp
mlir/test/Conversion/AsyncToLLVM/convert-to-llvm.mlir
mlir/test/mlir-cpu-runner/async-value.mlir