From f01b37001f8cac660f597a2fc23e1b26bb59af52 Mon Sep 17 00:00:00 2001 From: Philip Pfaffe Date: Thu, 7 Jun 2018 21:10:49 +0000 Subject: [PATCH] Back out of GPU Codegen if NVPTX is not available Summary: When enabling GPU codegen in polly, CMake will fail if NVPTX is not a target supported by the LLVM polly is being built against. In that case, GPU codegen should be switched off. Reviewers: Meinersbur, grosser, bollu Reviewed By: Meinersbur Subscribers: mgorny, bollu, pollydev, llvm-commits Differential Revision: https://reviews.llvm.org/D47888 git-svn-id: https://llvm.org/svn/llvm-project/polly/trunk@334233 91177308-0d34-0410-b5e6-96231b3b80d8 --- CMakeLists.txt | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index af0263b7..d2556b5b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -97,14 +97,17 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${POLLY_SOURCE_DIR}/cmake") SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) option(POLLY_ENABLE_GPGPU_CODEGEN "Enable GPGPU code generation feature" OFF) +set(GPU_CODEGEN FALSE) if (POLLY_ENABLE_GPGPU_CODEGEN) # Do not require CUDA/OpenCL, as GPU code generation test cases can be run # without a CUDA/OpenCL library. - FIND_PACKAGE(CUDA) - FIND_PACKAGE(OpenCL) - set(GPU_CODEGEN TRUE) -else(POLLY_ENABLE_GPGPU_CODEGEN) - set(GPU_CODEGEN FALSE) + if ("NVPTX" IN_LIST LLVM_TARGETS_TO_BUILD) + FIND_PACKAGE(CUDA) + FIND_PACKAGE(OpenCL) + set(GPU_CODEGEN TRUE) + else() + message(WARNING "The LLVM NVPTX target is required for GPU code generation") + endif() endif(POLLY_ENABLE_GPGPU_CODEGEN) -- 2.11.4.GIT