120 lines · plain
1 2 README for the LLVM* OpenMP* Runtime Library3 ============================================4 5How to Build Documentation6==========================7 8The main documentation is in Doxygen* format, and this distribution9should come with pre-built PDF documentation in doc/Reference.pdf.10However, an HTML version can be built by executing:11 12% doxygen doc/doxygen/config13 14in the runtime directory.15 16That will produce HTML documentation in the doc/doxygen/generated17directory, which can be accessed by pointing a web browser at the18index.html file there.19 20If you don't have Doxygen installed, you can download it from21www.doxygen.org.22 23 24How to Build the LLVM* OpenMP* Runtime Library25==============================================26In-tree build:27 28$ cd where-you-want-to-live29Check out openmp into llvm/projects30$ cd where-you-want-to-build31$ mkdir build && cd build32$ cmake path/to/llvm -DCMAKE_C_COMPILER=<C compiler> -DCMAKE_CXX_COMPILER=<C++ compiler>33$ make omp34 35Out-of-tree build:36 37$ cd where-you-want-to-live38Check out openmp39$ cd where-you-want-to-live/openmp/runtime40$ mkdir build && cd build41$ cmake path/to/openmp -DCMAKE_C_COMPILER=<C compiler> -DCMAKE_CXX_COMPILER=<C++ compiler>42$ make43 44For details about building, please look at README.rst in the parent directory.45 46Architectures Supported47=======================48* IA-32 architecture49* Intel(R) 64 architecture50* Intel(R) Many Integrated Core Architecture51* ARM* architecture52* Aarch64 (64-bit ARM) architecture53* IBM(R) Power architecture (big endian)54* IBM(R) Power architecture (little endian)55* IBM(R) Z (s390x) architecture56* MIPS and MIPS64 architecture57* RISCV64 architecture58* LoongArch64 architecture59 60Supported RTL Build Configurations61==================================62 63Supported Architectures: IA-32 architecture, Intel(R) 64, and64Intel(R) Many Integrated Core Architecture65 66 ----------------------------------------------67 | icc/icl | gcc | clang |68--------------|---------------|----------------------------|69| Linux* OS | Yes(1,5) | Yes(2,4) | Yes(4,6,7) |70| FreeBSD* | No | No | Yes(4,6,7,8) |71| OS X* | Yes(1,3,4) | No | Yes(4,6,7) |72| Windows* OS | Yes(1,4) | No | No |73------------------------------------------------------------74 75(1) On IA-32 architecture and Intel(R) 64, icc/icl versions 12.x are76 supported (12.1 is recommended).77(2) GCC* version 4.7 is supported.78(3) For icc on OS X*, OS X* version 10.5.8 is supported.79(4) Intel(R) Many Integrated Core Architecture not supported.80(5) On Intel(R) Many Integrated Core Architecture, icc/icl versions 13.081 or later are required.82(6) Clang* version 3.3 is supported.83(7) Clang* currently does not offer a software-implemented 128 bit extended84 precision type. Thus, all entry points reliant on this type are removed85 from the library and cannot be called in the user program. The following86 functions are not available:87 __kmpc_atomic_cmplx16_*88 __kmpc_atomic_float16_*89 __kmpc_atomic_*_fp90(8) Community contribution provided AS IS, not tested by Intel.91 92Supported Architectures: IBM(R) Power 7 and Power 893 94 -----------------------------95 | gcc | clang |96--------------|------------|--------------|97| Linux* OS | Yes(1,2) | Yes(3,4) |98-------------------------------------------99 100(1) On Power 7, gcc version 4.8.2 is supported.101(2) On Power 8, gcc version 4.8.2 is supported.102(3) On Power 7, clang version 3.7 is supported.103(4) On Power 8, clang version 3.7 is supported.104 105 106Front-end Compilers that work with this RTL107===========================================108 109The following compilers are known to do compatible code generation for110this RTL: clang (from the OpenMP development branch at111http://clang-omp.github.io/ ), Intel compilers, GCC. See the documentation112for more details.113 114-----------------------------------------------------------------------115 116Notices117=======118 119*Other names and brands may be claimed as the property of others.120