@@ -158,48 +158,45 @@ function(ggml_add_cpu_backend_variant_impl tag_name)
158
158
if (GGML_CPU_ARM_ARCH )
159
159
list (APPEND ARCH_FLAGS -march=${GGML_CPU_ARM_ARCH} )
160
160
elseif (GGML_CPU_ALL_VARIANTS )
161
- if (CMAKE_SYSTEM_NAME MATCHES "Linux" )
162
- # Begin with the lowest baseline
163
- set (ARM_MCPU "armv8-a" )
164
- set (ARCH_TAGS "" )
165
- set (ARCH_DEFINITIONS "" )
166
-
167
- # When a feature is selected, bump the MCPU to the first
168
- # version that supported it
169
- if (GGML_INTERNAL_DOTPROD )
170
- set (ARM_MCPU "armv8.2-a" )
171
- set (ARCH_TAGS "${ARCH_TAGS} +dotprod" )
172
- list (APPEND ARCH_DEFINITIONS GGML_USE_DOTPROD )
173
- endif ()
174
- if (GGML_INTERNAL_FP16_VECTOR_ARITHMETIC )
175
- set (ARM_MCPU "armv8.2-a" )
176
- set (ARCH_TAGS "${ARCH_TAGS} +fp16" )
177
- list (APPEND ARCH_DEFINITIONS GGML_USE_FP16_VECTOR_ARITHMETIC )
178
- endif ()
179
- if (GGML_INTERNAL_SVE )
180
- set (ARM_MCPU "armv8.2-a" )
181
- set (ARCH_TAGS "${ARCH_TAGS} +sve" )
182
- list (APPEND ARCH_DEFINITIONS GGML_USE_SVE )
183
- endif ()
184
- if (GGML_INTERNAL_MATMUL_INT8 )
185
- set (ARM_MCPU "armv8.6-a" )
186
- set (ARCH_TAGS "${ARCH_TAGS} +i8mm" )
187
- list (APPEND ARCH_DEFINITIONS GGML_USE_MATMUL_INT8 )
188
- endif ()
189
- if (GGML_INTERNAL_SVE2 )
190
- set (ARM_MCPU "armv8.6-a" )
191
- set (ARCH_TAGS "${ARCH_TAGS} +sve2" )
192
- list (APPEND ARCH_DEFINITIONS GGML_USE_SVE2 )
193
- endif ()
194
- if (GGML_INTERNAL_SME )
195
- set (ARM_MCPU "armv9.2-a" )
196
- set (ARCH_TAGS "${ARCH_TAGS} +sme" )
197
- list (APPEND ARCH_DEFINITIONS GGML_USE_SME )
198
- endif ()
199
-
200
- list (APPEND ARCH_FLAGS "-march=${ARM_MCPU}${ARCH_TAGS} " )
201
- ggml_add_cpu_backend_features (${GGML_CPU_NAME} arm ${ARCH_DEFINITIONS} )
161
+ # Begin with the lowest baseline
162
+ set (ARM_MCPU "armv8-a" )
163
+ set (ARCH_TAGS "" )
164
+ set (ARCH_DEFINITIONS "" )
165
+
166
+ # When a feature is selected, bump the MCPU to the first
167
+ # version that supported it
168
+ if (GGML_INTERNAL_DOTPROD )
169
+ set (ARM_MCPU "armv8.2-a" )
170
+ set (ARCH_TAGS "${ARCH_TAGS} +dotprod" )
171
+ list (APPEND ARCH_DEFINITIONS GGML_USE_DOTPROD )
172
+ endif ()
173
+ if (GGML_INTERNAL_FP16_VECTOR_ARITHMETIC )
174
+ set (ARM_MCPU "armv8.2-a" )
175
+ set (ARCH_TAGS "${ARCH_TAGS} +fp16" )
176
+ list (APPEND ARCH_DEFINITIONS GGML_USE_FP16_VECTOR_ARITHMETIC )
177
+ endif ()
178
+ if (GGML_INTERNAL_SVE )
179
+ set (ARM_MCPU "armv8.2-a" )
180
+ set (ARCH_TAGS "${ARCH_TAGS} +sve" )
181
+ list (APPEND ARCH_DEFINITIONS GGML_USE_SVE )
182
+ endif ()
183
+ if (GGML_INTERNAL_MATMUL_INT8 )
184
+ set (ARM_MCPU "armv8.6-a" )
185
+ set (ARCH_TAGS "${ARCH_TAGS} +i8mm" )
186
+ list (APPEND ARCH_DEFINITIONS GGML_USE_MATMUL_INT8 )
187
+ endif ()
188
+ if (GGML_INTERNAL_SVE2 )
189
+ set (ARM_MCPU "armv8.6-a" )
190
+ set (ARCH_TAGS "${ARCH_TAGS} +sve2" )
191
+ list (APPEND ARCH_DEFINITIONS GGML_USE_SVE2 )
192
+ endif ()
193
+ if (GGML_INTERNAL_SME )
194
+ set (ARM_MCPU "armv9.2-a" )
195
+ set (ARCH_TAGS "${ARCH_TAGS} +sme" )
196
+ list (APPEND ARCH_DEFINITIONS GGML_USE_SME )
202
197
endif ()
198
+ list (APPEND ARCH_FLAGS "-march=${ARM_MCPU}${ARCH_TAGS} " )
199
+ ggml_add_cpu_backend_features (${GGML_CPU_NAME} arm ${ARCH_DEFINITIONS} )
203
200
endif ()
204
201
endif ()
205
202
0 commit comments