loongarch: add lsx simd opt

This commit is contained in:
yuanhecai
2025-08-26 14:21:45 +08:00
parent 9feadb98a9
commit c94458d8f2
11 changed files with 135 additions and 7 deletions

View File

@@ -2,6 +2,10 @@ function(add_kissfft_test_executable NAME)
add_kissfft_executable(${NAME} ${ARGN})
target_include_directories(${NAME} PRIVATE ..)
if(COMPILER_SUPPORT_LSX_FLAG)
target_compile_options(${NAME} PRIVATE -mlsx)
endif()
add_test(NAME ${NAME} COMMAND ${NAME})
set_tests_properties(${NAME} PROPERTIES TIMEOUT 3600)
endfunction()
@@ -46,7 +50,9 @@ add_kissfft_test_executable(testcpp testcpp.cc)
if(KISSFFT_DATATYPE MATCHES "^simd$")
add_kissfft_test_executable(tsimd test_simd.c)
target_compile_definitions(tsimd PRIVATE USE_SIMD)
if (NOT MSVC)
if(COMPILER_SUPPORT_LSX_FLAG)
target_compile_options(kissfft PRIVATE -mlsx)
elseif(NOT MSVC)
target_compile_options(kissfft PRIVATE -msse)
else()
target_compile_options(kissfft PRIVATE "/arch:SSE")