diff options
author | Brad King <brad.king@kitware.com> | 2021-06-09 11:53:16 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2021-06-09 11:53:32 (GMT) |
commit | 7aad9e8685b0231abfb11d0f7d8c613cf5364fef (patch) | |
tree | 2d2b547cbc6708936c98ae52c0f181d78fb0652d /Tests/HIP/MixedLanguage/main.cxx | |
parent | b6faa5e2df22fecac877dc866294e8b5a36ab03a (diff) | |
parent | 8514ee9b315b4ad02eed0e3cf11d8579f307fac0 (diff) | |
download | CMake-7aad9e8685b0231abfb11d0f7d8c613cf5364fef.zip CMake-7aad9e8685b0231abfb11d0f7d8c613cf5364fef.tar.gz CMake-7aad9e8685b0231abfb11d0f7d8c613cf5364fef.tar.bz2 |
Merge topic 'add_hip_language'
8514ee9b31 HIP: analyze output of `hipcc` to determine default GPU architecture
20d086f1a2 HIP: All HIP tests now run on CMake's current AMD hardware
2e86e50c2f HIP: Add HIP to all the Check* modules
947dbed0aa HIP: Automatically inject the `hip::device` runtime target
b50bfc8913 HIP: Add language to CMake
ff0d2858e1 HIP: Extract clang compiler details from hipcc
bd844387df ROCMClang: Add the ROCm toolkit derived clang compiler to CMake
590553f322 Compilers: protect use of __has_include
...
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Zack Galbreath <zack.galbreath@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Acked-by: Axel Huebl <axel.huebl@plasma.ninja>
Merge-request: !6121
Diffstat (limited to 'Tests/HIP/MixedLanguage/main.cxx')
-rw-r--r-- | Tests/HIP/MixedLanguage/main.cxx | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/Tests/HIP/MixedLanguage/main.cxx b/Tests/HIP/MixedLanguage/main.cxx new file mode 100644 index 0000000..003d18a --- /dev/null +++ b/Tests/HIP/MixedLanguage/main.cxx @@ -0,0 +1,40 @@ + +#include <iostream> + +#ifdef __HIP_PLATFORM_HCC__ +# error "__HIP_PLATFORM_HCC__ propagated to C++ compilation!" +#endif + +#ifdef __HIP_ROCclr__ +# error "__HIP_ROCclr__ propagated to C++ compilation!" +#endif + +#ifdef _WIN32 +# define IMPORT __declspec(dllimport) +#else +# define IMPORT +#endif + +extern "C" { +IMPORT int shared_c_func(int); +int static_c_func(int); +} + +IMPORT int shared_cxx_func(int); +IMPORT int shared_hip_func(int); + +int static_cxx_func(int); +int static_hip_func(int); + +int main(int argc, char** argv) +{ + static_c_func(int(42)); + static_cxx_func(int(42)); + static_hip_func(int(42)); + + shared_c_func(int(42)); + shared_cxx_func(int(42)); + shared_hip_func(int(42)); + + return 0; +} |