Commit 1bbe1e95 authored by Cianciosa, Mark's avatar Cianciosa, Mark
Browse files

Merge branch 'llvm' into 'main'

The sanitizer and profile build types confilict with llvm. Remove them.

See merge request !27
parents c93a18db f37bd7a7
Loading
Loading
Loading
Loading
+12 −21
Original line number Diff line number Diff line
@@ -22,8 +22,8 @@ endif ()
set_property (CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS
              Debug
              Release
              Sanitized
              Profile
              MinSizeRel
              RelWithDebInfo
)

#-------------------------------------------------------------------------------
@@ -89,36 +89,27 @@ target_compile_options (sanitizer
                        $<$<CONFIG:Sanitized>:-g>
)

macro (register_sanitizer_option name default)
macro (register_sanitizer_option name)
    string (TOUPPER ${name} upper_name)

    option (SANITIZE_${upper_name} "Enable the ${name} sanitizer" ${default})
    option (SANITIZE_${upper_name} "Enable the ${name} sanitizer" OFF)

    target_compile_options (sanitizer
                            INTERFACE
                            $<$<CONFIG:Sanitized>:$<$<BOOL:${SANITIZE_${upper_name}}>:-fsanitize=${name}>>
                            $<$<BOOL:${SANITIZE_${upper_name}}>:-fsanitize=${name}>
    )
    target_link_options (sanitizer
                         INTERFACE
                         $<$<CONFIG:Sanitized>:$<$<BOOL:${SANITIZE_${upper_name}}>:-fsanitize=${name}>>
                         $<$<BOOL:${SANITIZE_${upper_name}}>:-fsanitize=${name}>
    )
endmacro ()

register_sanitizer_option (address ON)
register_sanitizer_option (leak OFF)
register_sanitizer_option (memory OFF)
register_sanitizer_option (thread OFF)
register_sanitizer_option (undefined ON)
register_sanitizer_option (float-divide-by-zero ON)

target_compile_options (sanitizer
                        INTERFACE
                        $<$<AND:$<CONFIG:Sanitized>,$<PLATFORM_ID:Darwin>>:-fsanitize-trap=all>
)
target_link_options (sanitizer
                     INTERFACE
                     $<$<AND:$<CONFIG:Sanitized>,$<PLATFORM_ID:Darwin>>:-fsanitize-trap=all>
)
register_sanitizer_option (address)
register_sanitizer_option (leak)
register_sanitizer_option (memory)
register_sanitizer_option (thread)
register_sanitizer_option (undefined)
register_sanitizer_option (float-divide-by-zero)

#-------------------------------------------------------------------------------
#  Setup access method.
+2 −6
Original line number Diff line number Diff line
@@ -5,16 +5,12 @@ target_compile_features (rays
                         INTERFACE
                         cxx_std_20
)
target_compile_options (rays
                        INTERFACE
                        $<$<CONFIG:Profile>:-g -O3>
)
target_compile_definitions (rays
                            INTERFACE
                            $<$<PLATFORM_ID:Darwin>:CXX="${CMAKE_CXX_COMPILER} -isysroot ${CMAKE_OSX_SYSROOT} -I${CMAKE_CURRENT_SOURCE_DIR} -std=gnu++2a">
                            $<$<PLATFORM_ID:Darwin>:CXX_FLAGS="-g -fsanitize=undefined -fsanitize=float-divide-by-zero -fsanitize-trap=all">
                            $<$<PLATFORM_ID:Darwin>:CXX_FLAGS="-g">
                            $<$<PLATFORM_ID:Linux>:CXX="${CMAKE_CXX_COMPILER} -I${CMAKE_CURRENT_SOURCE_DIR} -std=gnu++2a -fPIC -fno-use-cxa-atexit">
                            $<$<PLATFORM_ID:Linux>:CXX_FLAGS="-g"> #-fsanitize=undefined -fsanitize=float-divide-by-zero">
                            $<$<PLATFORM_ID:Linux>:CXX_FLAGS="-g">
                            EFIT_FILE="${CMAKE_CURRENT_SOURCE_DIR}/../graph_tests/efit.nc"
                            VMEC_FILE="${CMAKE_CURRENT_SOURCE_DIR}/../graph_tests/vmec.nc"
                            $<$<BOOL:${USE_CUDA}>:HEADER_DIR="$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>">
+1 −1
Original line number Diff line number Diff line
@@ -242,7 +242,7 @@ namespace gpu {
            if (!kernel) {
                std::cerr << "Failed to load function. " << kernel_name
                          << std::endl;
                exit(1);
                exit(-1);
            }

            std::map<size_t, T *> buffers;