diff --git a/clang/tools/amdgpu-arch/AMDGPUArch.cpp b/clang/tools/amdgpu-arch/AMDGPUArch.cpp --- a/clang/tools/amdgpu-arch/AMDGPUArch.cpp +++ b/clang/tools/amdgpu-arch/AMDGPUArch.cpp @@ -11,7 +11,24 @@ // //===----------------------------------------------------------------------===// -#include +#if defined(__has_include) +#if __has_include("hsa.h") +#define HSA_HEADER_FOUND 1 +#include "hsa.h" +#elif __has_include("hsa/hsa.h") +#define HSA_HEADER_FOUND 1 +#include "hsa/hsa.h" +#else +#define HSA_HEADER_FOUND 0 +#endif +#else +#define HSA_HEADER_FOUND 0 +#endif + +#if !HSA_HEADER_FOUND +int main() { return 1; } +#else + #include #include @@ -57,3 +74,5 @@ hsa_shut_down(); return 0; } + +#endif