Skip to content

Commit

Permalink
fixed cache strings
Browse files Browse the repository at this point in the history
  • Loading branch information
DiamonDinoia committed Jul 29, 2024
1 parent 607cdb8 commit 3284de6
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 9 deletions.
18 changes: 15 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,15 @@ set(FINUFFT_CXX_FLAGS_RELEASE
-fcx-limited-range
/fp:fast
-O3
/O2)
/O2
/Ox
/GF
/GY
/GS-
/Ob
/Oi
/Ot
/Oy)

filter_supported_compiler_flags(FINUFFT_CXX_FLAGS_RELEASE
FINUFFT_CXX_FLAGS_RELEASE)
Expand All @@ -77,10 +85,14 @@ message(
STATUS "FINUFFT RelWithDebInfo flags: ${FINUFFT_CXX_FLAGS_RELWITHDEBINFO}")

if(FINUFFT_ARCH_FLAGS STREQUAL "native")
set(FINUFFT_ARCH_FLAGS CACHE STRING -march=native FORCE)
set(FINUFFT_ARCH_FLAGS
-march=native
CACHE STRING "" FORCE)
filter_supported_compiler_flags(FINUFFT_ARCH_FLAGS FINUFFT_ARCH_FLAGS)
if(NOT FINUFFT_ARCH_FLAGS)
set(FINUFFT_ARCH_FLAGS CACHE STRING -mtune=native FORCE)
set(FINUFFT_ARCH_FLAGS
-mtune=native
CACHE STRING "" FORCE)
filter_supported_compiler_flags(FINUFFT_ARCH_FLAGS FINUFFT_ARCH_FLAGS)
endif()
if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
Expand Down
12 changes: 6 additions & 6 deletions cmake/utils.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ function(filter_supported_compiler_flags input_flags_var output_flags_var)
# Iterate over each flag in the input list
foreach(flag ${${input_flags_var}})
string(REPLACE "=" "_" flag_var ${flag}) # Convert flag to a valid variable
# name
# name
string(REPLACE "-" "" flag_var ${flag_var}) # Remove '-' for the variable
# name
# name

# Append the test linker flag to the existing flags
list(APPEND CMAKE_EXE_LINKER_FLAGS ${flag})
Expand Down Expand Up @@ -40,19 +40,19 @@ function(check_arch_support)
if(RUN_OUTPUT MATCHES "AVX512")
set(FINUFFT_ARCH_FLAGS
"/arch:AVX512"
CACHE STRING FORCE)
CACHE STRING "" FORCE)
elseif(RUN_OUTPUT MATCHES "AVX")
set(FINUFFT_ARCH_FLAGS
"/arch:AVX"
CACHE STRING FORCE)
CACHE STRING "" FORCE)
elseif(RUN_OUTPUT MATCHES "SSE")
set(FINUFFT_ARCH_FLAGS
"/arch:SSE"
CACHE STRING FORCE)
CACHE STRING "" FORCE)
else()
set(FINUFFT_ARCH_FLAGS
""
CACHE STRING FORCE)
CACHE STRING "" FORCE)
endif()
message(STATUS "CPU supports: ${RUN_OUTPUT}")
message(STATUS "Using MSVC flags: ${FINUFFT_ARCH_FLAGS}")
Expand Down

0 comments on commit 3284de6

Please sign in to comment.