Support for multiple OpenMP runtimes in Clang

Currently Clang support to OpenMP pragma directives is limited to a single runtime, that is Intel OpenMP Runtime Library.

I am member of a research group focused on hw/sw design of embedded systems, and for many years we have used the API exposed by GNU libgomp to build OpenMP-compliant libraries for several embedded architectures.
Consequently, we are planning to modify codegen classes of Clang in order to support the ligomp API used in our projects.

I have a couple of questions about this topic.

1. As far as you know, is there any work in progress to support libgomp?
2. What do you think about introducing an intermediate layer in Clang codegen module, with the aim to target different OpenMP runtimes (for example by using a compilation flag)?

Not to avoid or push back against your question, but why not port the Intel OpenMP runtime which is officially part of clang now? Is there a specific feature in the GNU rt? Just a blind comment, but I expect Intel's runtime and engineers to care a lot about performance.

They even posted a minimal porting guide on the openmp list (I can forward it)

source
git clone http://llvm.org/git/openmp.git

Currently Clang support to OpenMP pragma directives is limited to a single runtime, that is Intel OpenMP Runtime Library.

I am member of a research group focused on hw/sw design of embedded systems, and for many years we have used the API exposed by GNU libgomp to build OpenMP-compliant libraries for several embedded architectures.
Consequently, we are planning to modify codegen classes of Clang in order to support the ligomp API used in our projects.

I have a couple of questions about this topic.

1. As far as you know, is there any work in progress to support libgomp?
2. What do you think about introducing an intermediate layer in Clang codegen module, with the aim to target different OpenMP runtimes (for example by using a compilation flag)?

Not sure on 1, but 2 isn't necessarily a bad idea. I'm sure someone
will review the patches if you send them.

Thanks!

-eric