Commit 3ceec3b7 authored by Jakub Klinkovský's avatar Jakub Klinkovský
Browse files

Fixed Debug/Release compiler flags for hipcc

parent 4ad2ba2f
Loading
Loading
Loading
Loading
+22 −6
Original line number Diff line number Diff line
@@ -152,7 +152,7 @@ if( DEFINED ENV{CI_JOB_NAME} OR ${CMAKE_GENERATOR} STREQUAL "Ninja" )
   elseif( CMAKE_CXX_COMPILER_ID STREQUAL "GNU" )
      set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fdiagnostics-color" )
   endif()
   list(APPEND HIP_HIPCC_FLAGS -fcolor-diagnostics)
   set( HIP_HIPCC_FLAGS "${HIP_HIPCC_FLAGS} -fcolor-diagnostics")
endif()

# add the filesystem library to all targets
@@ -283,10 +283,24 @@ if( ${WITH_HIP} )
   if( ${HIP_FOUND} )
      set(BUILD_HIP TRUE)
      # available variables: HIP_HIPCC_FLAGS, HIP_HCC_FLAGS, HIP_CLANG_FLAGS, HIP_NVCC_FLAGS
      # note: --hipcc-func-supp disables "inline all functions for device code" which

      # set default build options
      set( HIP_HIPCC_FLAGS "-std=c++14 -DHAVE_HIP -pthread -Wall ${HIP_HIPCC_FLAGS}" )
      set( HIP_HIPCC_FLAGS_DEBUG "-g" )
      set( HIP_HIPCC_FLAGS_RELEASE "-O3 -DNDEBUG" )
      set( HIP_HIPCC_FLAGS_RELWITHDEBINFO "${HIP_HIPCC_FLAGS_RELEASE} ${HIP_HIPCC_FLAGS_DEBUG}" )
      # pass -rdynamic only in Debug mode
      set( CMAKE_SHARED_LIBRARY_LINK_HIP_FLAGS "" )
      set( CMAKE_SHARED_LIBRARY_LINK_HIP_FLAGS_DEBUG "-rdynamic" )
      set( CMAKE_SHARED_LIBRARY_LINK_HIP_FLAGS_RELEASE "" )

      # Note: --hipcc-func-supp disables "inline all functions for device code" which
      # leads to extremely long compilation time and memory requirements
      # see https://github.com/ROCm-Developer-Tools/HIP/issues/2285#issuecomment-856350254
      list(APPEND HIP_HIPCC_FLAGS -std=c++14 -DHAVE_HIP --hipcc-func-supp)
      set( HIP_HIPCC_FLAGS "${HIP_HIPCC_FLAGS} --hipcc-func-supp" )

      # disable some unimportant warnings
      set( HIP_HIPCC_FLAGS "${HIP_HIPCC_FLAGS} -Wno-unused-local-typedefs -Wno-unknown-pragmas" )

      #set(CMAKE_HIPCXX_FLAGS ${CMAKE_HIPCXX_FLAGS} -I${HIP_ROOT_DIR}/include -DHAVE_HIP -DHIP_PLATFORM=nvcc )
      #set(CMAKE_HIPCXX_FLAGS ${CMAKE_HIPCXX_FLAGS} -DHAVE_HIP )
@@ -451,7 +465,9 @@ message( " CMAKE_SHARED_LINKER_FLAGS = ${CMAKE_SHARED_LINKER_FLAGS}" )
message( "   CMAKE_SHARED_LINKER_FLAGS_DEBUG = ${CMAKE_SHARED_LINKER_FLAGS_DEBUG}" )
message( "   CMAKE_SHARED_LINKER_FLAGS_RELEASE = ${CMAKE_SHARED_LINKER_FLAGS_RELEASE}" )
message( "   CUDA_NVCC_FLAGS = ${CUDA_NVCC_FLAGS}" )
message( "   CMAKE_HIPCXX_FLAGS = ${CMAKE_HIPCXX_FLAGS}" )
message( "   HIP_HIPCC_FLAGS = ${HIP_HIPCC_FLAGS}")
message( "   HIP_HIPCC_FLAGS_DEBUG = ${HIP_HIPCC_FLAGS_DEBUG}")
message( "   HIP_HIPCC_FLAGS_RELEASE = ${HIP_HIPCC_FLAGS_RELEASE}")
message( "   GMP_LIBRARIES = ${GMP_LIBRARIES}" )
if( MPI_CXX_FOUND AND ${WITH_MPI} )
   message( "   MPI_CXX_COMPILE_OPTIONS = ${MPI_CXX_COMPILE_OPTIONS}" )