diff --git a/cmake/FindHIP.cmake b/cmake/FindHIP.cmake index 99ad26c32..b80dc3a94 100644 --- a/cmake/FindHIP.cmake +++ b/cmake/FindHIP.cmake @@ -108,6 +108,10 @@ if(UNIX AND NOT APPLE AND NOT CYGWIN) set(HIP_RUNTIME_DEFINE "__HIP_PLATFORM_AMD__") set(HIP_PLATFORM "hip-clang") endif() + elseif(${HIP_PLATFORM} STREQUAL "spirv") + set(HIP_INCLUDE_DIRS "${HIP_ROOT_DIR}/include") + set(HIP_LIBRARIES "${HIP_ROOT_DIR}/lib/libCHIP.so") + set(HIP_RUNTIME_DEFINE "__HIP_PLATFORM_SPIRV__") elseif(${HIP_PLATFORM} STREQUAL "nvidia") find_package(CUDA) diff --git a/src/occa/internal/modes/hip/device.cpp b/src/occa/internal/modes/hip/device.cpp index 56678c6b7..b957cb394 100644 --- a/src/occa/internal/modes/hip/device.cpp +++ b/src/occa/internal/modes/hip/device.cpp @@ -211,6 +211,9 @@ namespace occa { } void device::setArchCompilerFlags(occa::json &kernelProps) { +#if defined(__HIP_PLATFORM_SPIRV__) + return; // SPIR-V is architecture-agnostic; no arch flag +#endif const std::string hipccCompilerFlags = ( kernelProps.get("hipcc_compiler_flags") );