[RFC] Proposed interplay of Clang & Flang & LLVM wrt. OpenMP [@Flang-dev]

Hi,

[I started this discussion on a single mailing list (flang-dev [0]) but
this is a notice to the others (llvm, clang, openmp) so we hopefully
get all interested parties involved.]

This is an RFC for the design of the OpenMP front-ends under the LLVM
umbrella. It is necessary to talk about this now as Flang (aka. F18) is
maturing at a very promising rate and about to become a sub-project next
to Clang.

TLDR;
Keep AST nodes and Sema separated but unify LLVM-IR generation for
OpenMP constructs based on the (almost) identical OpenMP directive
level.

For more information and to participate in the discussion, please see
the flang-dev post [0].

Thanks,
  Johannes

[0] http://lists.flang-compiler.org/pipermail/flang-dev_lists.flang-compiler.org/2019-May/000197.html

What you’re talking about is the late outlining, which should be the part of the LLVM. As I understand, Intel already has preliminary implementation of this and they promised to publish it in May.

Also, this was discussed some time ago, if I remember it correctly, and it was recommended to implement this common codegen as a kind of plugin. I don’t remember the final result of this discussion, though.

Alexey, please move the discussion to the flang mailing list.