File tree Expand file tree Collapse file tree 6 files changed +289
-114
lines changed Expand file tree Collapse file tree 6 files changed +289
-114
lines changed Original file line number Diff line number Diff line change @@ -129,7 +129,9 @@ endif()
129
129
option (GGML_LASX "ggml: enable lasx" ON )
130
130
option (GGML_LSX "ggml: enable lsx" ON )
131
131
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 )
134
+ option (GGML_RV_ZICBOP "ggml: enable riscv zicbop" ON )
133
135
option (GGML_XTHEADVECTOR "ggml: enable xtheadvector" OFF )
134
136
option (GGML_VXE "ggml: enable vxe" ON )
135
137
option (GGML_NNPA "ggml: enable nnpa" OFF ) # temp disabled by default, see: https://github.com/ggml-org/llama.cpp/issues/14877
Original file line number Diff line number Diff line change @@ -433,15 +433,22 @@ function(ggml_add_cpu_backend_variant_impl tag_name)
433
433
ggml-cpu/arch/riscv/quants.c
434
434
ggml-cpu/arch/riscv/repack.cpp
435
435
)
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_RV_ZVFH)
445
+ string (APPEND MARCH_STR "_zvfh" )
443
446
endif ()
444
447
endif ()
448
+ if (GGML_RV_ZICBOP)
449
+ string (APPEND MARCH_STR "_zicbop" )
450
+ endif ()
451
+ list (APPEND ARCH_FLAGS "-march=${MARCH_STR} " -mabi=lp64d)
445
452
elseif (GGML_SYSTEM_ARCH STREQUAL "s390x" )
446
453
message (STATUS "s390x detected" )
447
454
list (APPEND GGML_CPU_SOURCES ggml-cpu/arch/s390/quants.c)
You can’t perform that action at this time.
0 commit comments