|
|
|
@@ -241,7 +241,7 @@ function (build_core TARGET_CORE KDIR TSUFFIX KERNEL_DEFINITIONS) |
|
|
|
if (X86_64 OR ARM64) |
|
|
|
set(USE_DIRECT_SGEMM true) |
|
|
|
endif() |
|
|
|
if (UC_TARGET_CORE MATCHES ARMV9SME) |
|
|
|
if (UC_TARGET_CORE MATCHES ARMV9SME OR UC_TARGET_CORE MATCHES VORTEXM4) |
|
|
|
set (HAVE_SME true) |
|
|
|
endif () |
|
|
|
|
|
|
|
@@ -254,14 +254,16 @@ function (build_core TARGET_CORE KDIR TSUFFIX KERNEL_DEFINITIONS) |
|
|
|
GenerateNamedObjects("${KERNELDIR}/${SGEMMDIRECTKERNEL}" "" "gemm_direct" false "" "" false SINGLE) |
|
|
|
GenerateNamedObjects("${KERNELDIR}/${SGEMMDIRECTPERFORMANT}" "" "gemm_direct_performant" false "" "" false SINGLE) |
|
|
|
elseif (ARM64) |
|
|
|
set (SGEMMDIRECTPERFORMANT sgemm_direct_performant.c) |
|
|
|
set (SGEMMDIRECTKERNEL sgemm_direct_arm64_sme1.c) |
|
|
|
set (SGEMMDIRECTKERNEL_ALPHA_BETA sgemm_direct_alpha_beta_arm64_sme1.c) |
|
|
|
set (SGEMMDIRECTSMEKERNEL sgemm_direct_sme1.S) |
|
|
|
set (SGEMMDIRECTSMEKERNEL sgemm_direct_sme1_2VLx2VL.S) |
|
|
|
set (SGEMMDIRECTPREKERNEL sgemm_direct_sme1_preprocess.S) |
|
|
|
GenerateNamedObjects("${KERNELDIR}/${SGEMMDIRECTPERFORMANT}" "" "gemm_direct_performant" false "" "" false SINGLE) |
|
|
|
GenerateNamedObjects("${KERNELDIR}/${SGEMMDIRECTKERNEL}" "" "gemm_direct" false "" "" false SINGLE) |
|
|
|
GenerateNamedObjects("${KERNELDIR}/${SGEMMDIRECTKERNEL_ALPHA_BETA}" "" "gemm_direct_alpha_beta" false "" "" false SINGLE) |
|
|
|
if (HAVE_SME) |
|
|
|
GenerateNamedObjects("${KERNELDIR}/${SGEMMDIRECTSMEKERNEL}" "" "gemm_direct_sme1" false "" "" false SINGLE) |
|
|
|
GenerateNamedObjects("${KERNELDIR}/${SGEMMDIRECTSMEKERNEL}" "" "gemm_direct_sme1_2VLx2VL" false "" "" false SINGLE) |
|
|
|
GenerateNamedObjects("${KERNELDIR}/${SGEMMDIRECTPREKERNEL}" "" "gemm_direct_sme1_preprocess" false "" "" false SINGLE) |
|
|
|
endif () |
|
|
|
endif () |
|
|
|
|