diff options
author | Konstantin Pyzhov <konstantin.pyzhov@gmail.com> | 2019-10-11 09:46:29 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2019-10-12 15:04:45 (GMT) |
commit | db5a8d78761e59d43db2b463a8f8aaa5e7d2be48 (patch) | |
tree | 2f2f71f64c6dc94a9972d80548fec3b51dbc27d5 | |
parent | 9150c818b7d2afb868575fcb2e0c9ba62b9d7f85 (diff) | |
download | CMake-db5a8d78761e59d43db2b463a8f8aaa5e7d2be48.zip CMake-db5a8d78761e59d43db2b463a8f8aaa5e7d2be48.tar.gz CMake-db5a8d78761e59d43db2b463a8f8aaa5e7d2be48.tar.bz2 |
FindOpenMP: Add support for HIP clang device pass
The HIP clang makes 2 passes when compiling HIP programs: the DEVICE
pass and the HOST pass. For openmp, the `-fopenmp` option is only
passed to the HOST compilation pass. Therefore, the small test that
CMake uses for OpenMP detection fails to compile, and CMake reports
failure to detect OpenMP support in the compiler. The suggested
solution is to add check for `__HIP_DEVICE_COMPILE__` macro defined by
HIP clang for the DEVICE pass to the OpenMP detection test.
-rw-r--r-- | Modules/FindOpenMP.cmake | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/Modules/FindOpenMP.cmake b/Modules/FindOpenMP.cmake index def23bb..ab9d73a 100644 --- a/Modules/FindOpenMP.cmake +++ b/Modules/FindOpenMP.cmake @@ -128,6 +128,8 @@ int main(void) { #ifdef _OPENMP omp_get_max_threads(); return 0; +#elif defined(__HIP_DEVICE_COMPILE__) + return 0; #else breaks_on_purpose #endif |