Skip to content

Commit 3492e6b

Browse files
committed
ggml-cpu : fix riscv arch flags
1 parent 3bab1c9 commit 3492e6b

File tree

2 files changed

+13
-8
lines changed

2 files changed

+13
-8
lines changed

ggml/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,8 @@ endif()
129129
option(GGML_LASX "ggml: enable lasx" ON)
130130
option(GGML_LSX "ggml: enable lsx" ON)
131131
option(GGML_RVV "ggml: enable rvv" ON)
132-
option(GGML_RV_ZFH "ggml: enable riscv zfh" OFF)
132+
option(GGML_RV_ZFH "ggml: enable riscv zfh" ON)
133+
option(GGML_RV_ZVFH "ggml: enable riscv zvfh" ON)
133134
option(GGML_XTHEADVECTOR "ggml: enable xtheadvector" OFF)
134135
option(GGML_VXE "ggml: enable vxe" ON)
135136
option(GGML_NNPA "ggml: enable nnpa" OFF) # temp disabled by default, see: https://github.com/ggml-org/llama.cpp/issues/14877

ggml/src/ggml-cpu/CMakeLists.txt

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -433,15 +433,19 @@ function(ggml_add_cpu_backend_variant_impl tag_name)
433433
ggml-cpu/arch/riscv/quants.c
434434
ggml-cpu/arch/riscv/repack.cpp
435435
)
436-
if (GGML_RVV)
437-
if (GGML_XTHEADVECTOR)
438-
list(APPEND ARCH_FLAGS -march=rv64gc_zfhmin_xtheadvector -mabi=lp64d)
439-
elseif (GGML_RV_ZFH)
440-
list(APPEND ARCH_FLAGS -march=rv64gcv_zfhmin -mabi=lp64d)
441-
else()
442-
list(APPEND ARCH_FLAGS -march=rv64gcv -mabi=lp64d)
436+
set(MARCH_STR "rv64gc")
437+
if (GGML_RV_ZFH)
438+
string(APPEND MARCH_STR "_zfh")
439+
endif()
440+
if (GGML_XTHEADVECTOR)
441+
string(APPEND MARCH_STR "_xtheadvector")
442+
elseif (GGML_RVV)
443+
string(APPEND MARCH_STR "_v")
444+
if (GGML_ZVFH)
445+
string(APPEND MARCH_STR "_zvfh")
443446
endif()
444447
endif()
448+
list(APPEND ARCH_FLAGS "-march=${MARCH_STR}" -mabi=lp64d)
445449
elseif (GGML_SYSTEM_ARCH STREQUAL "s390x")
446450
message(STATUS "s390x detected")
447451
list(APPEND GGML_CPU_SOURCES ggml-cpu/arch/s390/quants.c)

0 commit comments

Comments
 (0)