From a9ae422de6c3cb02b32c95dce471787997b9e5e4 Mon Sep 17 00:00:00 2001 From: "hrushit.kakadia" Date: Thu, 20 Nov 2025 14:38:14 +0530 Subject: [PATCH 1/3] added sve flag --- build2cmake/src/templates/cpu/preamble.cmake | 5 +++++ build2cmake/src/templates/utils.cmake | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/build2cmake/src/templates/cpu/preamble.cmake b/build2cmake/src/templates/cpu/preamble.cmake index 18046454..cdd7c2c1 100644 --- a/build2cmake/src/templates/cpu/preamble.cmake +++ b/build2cmake/src/templates/cpu/preamble.cmake @@ -42,3 +42,8 @@ endif() {% endif %} add_compile_definitions(CPU_KERNEL) + +check_for_sve(HAVE_SVE) +if(HAVE_SVE) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=armv8.2-a+sve") +endif() \ No newline at end of file diff --git a/build2cmake/src/templates/utils.cmake b/build2cmake/src/templates/utils.cmake index d4d4cef2..e4c64d5d 100644 --- a/build2cmake/src/templates/utils.cmake +++ b/build2cmake/src/templates/utils.cmake @@ -555,3 +555,16 @@ function (define_gpu_extension_target GPU_MOD_NAME) install(TARGETS ${GPU_MOD_NAME} LIBRARY DESTINATION ${GPU_DESTINATION} COMPONENT ${GPU_MOD_NAME}) endfunction() + +include(CheckCXXSourceCompiles) + +macro(check_for_sve HAVE_SVE_VAR) + set(CMAKE_REQUIRED_FLAGS "-march=armv8.2-a+sve") + check_cxx_source_compiles(" + #include + int main() { + svint32_t v = svdup_s32(0); + return svaddv_s32(svptrue_b32(), v); + } + " ${HAVE_SVE_VAR}) +endmacro() \ No newline at end of file From c9889f32a106d4e158b737ba09b82af03df37e38 Mon Sep 17 00:00:00 2001 From: hrushitfujitsu Date: Wed, 17 Dec 2025 15:16:29 +0530 Subject: [PATCH 2/3] Fix missing newline at end of preamble.cmake --- build2cmake/src/templates/cpu/preamble.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build2cmake/src/templates/cpu/preamble.cmake b/build2cmake/src/templates/cpu/preamble.cmake index cdd7c2c1..3e2b5de8 100644 --- a/build2cmake/src/templates/cpu/preamble.cmake +++ b/build2cmake/src/templates/cpu/preamble.cmake @@ -46,4 +46,4 @@ add_compile_definitions(CPU_KERNEL) check_for_sve(HAVE_SVE) if(HAVE_SVE) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=armv8.2-a+sve") -endif() \ No newline at end of file +endif() From 13672f94766d355aad17036bac41c5f89daf363a Mon Sep 17 00:00:00 2001 From: hrushitfujitsu Date: Wed, 17 Dec 2025 15:16:55 +0530 Subject: [PATCH 3/3] Add newline at end of utils.cmake --- build2cmake/src/templates/utils.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build2cmake/src/templates/utils.cmake b/build2cmake/src/templates/utils.cmake index e4c64d5d..67c2661c 100644 --- a/build2cmake/src/templates/utils.cmake +++ b/build2cmake/src/templates/utils.cmake @@ -567,4 +567,4 @@ macro(check_for_sve HAVE_SVE_VAR) return svaddv_s32(svptrue_b32(), v); } " ${HAVE_SVE_VAR}) -endmacro() \ No newline at end of file +endmacro()