From c842d0b38f920b0f8ba9c0d77b0a383ca5dadc31 Mon Sep 17 00:00:00 2001 From: "Larsen, Steffen" Date: Wed, 21 Jun 2023 04:40:48 -0700 Subject: [PATCH] Add -fsycl-link-huge-device-code linker flags for DPCPP This commit adds the -fsycl-link-huge-device-code to the linker flags for DPC++. This allows the linking of very large device-code object files, which can be produced by select categories in the CTS in full conformance mode. This flag is currently not supported on Windows. Signed-off-by: Larsen, Steffen --- cmake/FindDPCPP.cmake | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/cmake/FindDPCPP.cmake b/cmake/FindDPCPP.cmake index df0255423..64707d304 100644 --- a/cmake/FindDPCPP.cmake +++ b/cmake/FindDPCPP.cmake @@ -41,6 +41,12 @@ set(CMAKE_CXX_FLAGS "${DPCPP_FP_FLAG} ${CMAKE_CXX_FLAGS}") # Disable range rounding feature to reduce # of SYCL kernels. set(CMAKE_CXX_FLAGS "-D__SYCL_DISABLE_PARALLEL_FOR_RANGE_ROUNDING__ ${CMAKE_CXX_FLAGS}") +# Set flag to allow linking of large device code files. This option is currently +# not available on Windows. +if(NOT WIN32) + set(CMAKE_CXX_LINK_FLAGS "-fsycl-link-huge-device-code ${CMAKE_CXX_LINK_FLAGS}") +endif() + option(DPCPP_DISABLE_SYCL2020_DEPRECATION_WARNINGS "Disable SYCL 2020 deprecation warnings" ON) if(DPCPP_DISABLE_SYCL2020_DEPRECATION_WARNINGS)