summaryrefslogtreecommitdiffstats
path: root/Modules
diff options
context:
space:
mode:
authorKonstantin Pyzhov <konstantin.pyzhov@gmail.com>2019-10-11 09:46:29 (GMT)
committerBrad King <brad.king@kitware.com>2019-10-12 15:04:45 (GMT)
commitdb5a8d78761e59d43db2b463a8f8aaa5e7d2be48 (patch)
tree2f2f71f64c6dc94a9972d80548fec3b51dbc27d5 /Modules
parent9150c818b7d2afb868575fcb2e0c9ba62b9d7f85 (diff)
downloadCMake-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.
Diffstat (limited to 'Modules')
-rw-r--r--Modules/FindOpenMP.cmake2
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