[PATCH] D86071: [MLIR][OpenMP] Add omp.do operation

Johannes Doerfert via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 10 10:50:01 PDT 2020


jdoerfert added a comment.

In D86071#2266169 <https://reviews.llvm.org/D86071#2266169>, @ftynse wrote:

>> It has to be the OpenMPIRBuilder that lowers it into a CFG (eventually) because it is not "a fortran/mlir/affine/... loop" but an OpenMP worksharing loop with all what that entails.
>
> If there is an `OpenMPIRBuilder::CreateForLoop` or a plan to have it? So far, it looks a there is a non-negligible amount of code in Clang that emits the IR for loops, and replicating that code in mlir-translate is a no go.



In D86071#2266169 <https://reviews.llvm.org/D86071#2266169>, @ftynse wrote:

>> It has to be the OpenMPIRBuilder that lowers it into a CFG (eventually) because it is not "a fortran/mlir/affine/... loop" but an OpenMP worksharing loop with all what that entails.
>
> If there is an `OpenMPIRBuilder::CreateForLoop` or a plan to have it?

Yes.

> So far, it looks a there is a non-negligible amount of code in Clang that emits the IR for loops, and replicating that code in mlir-translate is a no go.

All OpenMP related LLVM-IR code generation is (eventually) going to be moved into `OpenMPIRBuilder` so we do not duplicate the rather nontrivial parts in two places which would become a maintenance nightmare. That is (among other things) the point ;)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D86071/new/

https://reviews.llvm.org/D86071



More information about the llvm-commits mailing list