
For many months now Intel has had some of their compiler engineers working on OpenMP support for LLVM/Clang after attempts in the past by other parties haven't brought mainlining of any support. In August they announced OpenMP 3.1 support for LLVM Clang in an out-of-tree code-base.
The OpenMP 3.1 code has yet to be mainlined in full but that's Intel's ambition. Intel's OpenMP Clang work actually builds upon work originally started by AMD to achieve the same goal. Aside from the compiler support, there's also the run-time library needed for OpenMP. In getting that effort cleared, Intel decided to ship a copy of their Intel Open-Source OpenMP Run-Time as a new LLVM sub-project. This OpenMP run-time support is dual-licensed under the MIT and UIUC (BSD-like) license. OpenMP 4.0 support is planned in the future and this implementation should already be high-performance and have ABI compatibility with GCC and Intel's own ICC compiler.
There's still some work ahead for this run-time as right now it requires building under GCC or ICC while obviously it will need to be build-able under Clang. The new LLVM OpenMP sub-project site is openmp.llvm.org. Intel's open-source OpenMP run-time site is OpenMPRTL.org where they have had code for some time but is now moving to LLVM as a new sub-project.
Jim Cownie of Intel announced their open-source contribution via the LLVM project blog.
4 Comments