arm: add softfp support in kernel/arm/nrm2_vfp*.S
This commit is contained in:
parent
54915ce343
commit
e25f4c01d6
|
@ -52,6 +52,11 @@ DDOTKERNEL = ddot_vfp.S
|
||||||
CDOTKERNEL = cdot_vfp.S
|
CDOTKERNEL = cdot_vfp.S
|
||||||
ZDOTKERNEL = zdot_vfp.S
|
ZDOTKERNEL = zdot_vfp.S
|
||||||
|
|
||||||
|
SNRM2KERNEL = nrm2_vfp.S
|
||||||
|
DNRM2KERNEL = nrm2_vfp.S
|
||||||
|
CNRM2KERNEL = nrm2_vfp.S
|
||||||
|
ZNRM2KERNEL = nrm2_vfp.S
|
||||||
|
|
||||||
SGEMMKERNEL = ../generic/gemmkernel_4x2.c
|
SGEMMKERNEL = ../generic/gemmkernel_4x2.c
|
||||||
ifneq ($(SGEMM_UNROLL_M), $(SGEMM_UNROLL_N))
|
ifneq ($(SGEMM_UNROLL_M), $(SGEMM_UNROLL_N))
|
||||||
SGEMMINCOPY = sgemm_ncopy_4_vfp.S
|
SGEMMINCOPY = sgemm_ncopy_4_vfp.S
|
||||||
|
@ -91,11 +96,6 @@ ZGEMMOTCOPYOBJ = zgemm_otcopy.o
|
||||||
|
|
||||||
ifeq ($(ARM_ABI),hard)
|
ifeq ($(ARM_ABI),hard)
|
||||||
|
|
||||||
SNRM2KERNEL = nrm2_vfp.S
|
|
||||||
DNRM2KERNEL = nrm2_vfp.S
|
|
||||||
CNRM2KERNEL = nrm2_vfp.S
|
|
||||||
ZNRM2KERNEL = nrm2_vfp.S
|
|
||||||
|
|
||||||
SSWAPKERNEL = swap_vfp.S
|
SSWAPKERNEL = swap_vfp.S
|
||||||
DSWAPKERNEL = swap_vfp.S
|
DSWAPKERNEL = swap_vfp.S
|
||||||
CSWAPKERNEL = swap_vfp.S
|
CSWAPKERNEL = swap_vfp.S
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
include $(KERNELDIR)/KERNEL.ARMV6
|
include $(KERNELDIR)/KERNEL.ARMV6
|
||||||
|
|
||||||
|
SNRM2KERNEL = nrm2_vfpv3.S
|
||||||
|
DNRM2KERNEL = nrm2_vfpv3.S
|
||||||
|
CNRM2KERNEL = nrm2_vfpv3.S
|
||||||
|
ZNRM2KERNEL = nrm2_vfpv3.S
|
||||||
|
|
||||||
STRMMKERNEL = ../generic/trmmkernel_4x4.c
|
STRMMKERNEL = ../generic/trmmkernel_4x4.c
|
||||||
DTRMMKERNEL = ../generic/trmmkernel_4x4.c
|
DTRMMKERNEL = ../generic/trmmkernel_4x4.c
|
||||||
|
|
||||||
|
@ -17,11 +22,6 @@ DGEMMOTCOPYOBJ = dgemm_otcopy.o
|
||||||
|
|
||||||
ifeq ($(ARM_ABI),hard)
|
ifeq ($(ARM_ABI),hard)
|
||||||
|
|
||||||
SNRM2KERNEL = nrm2_vfpv3.S
|
|
||||||
DNRM2KERNEL = nrm2_vfpv3.S
|
|
||||||
CNRM2KERNEL = nrm2_vfpv3.S
|
|
||||||
ZNRM2KERNEL = nrm2_vfpv3.S
|
|
||||||
|
|
||||||
SGEMVNKERNEL = gemv_n_vfpv3.S
|
SGEMVNKERNEL = gemv_n_vfpv3.S
|
||||||
DGEMVNKERNEL = gemv_n_vfpv3.S
|
DGEMVNKERNEL = gemv_n_vfpv3.S
|
||||||
|
|
||||||
|
|
|
@ -573,6 +573,13 @@ nrm2_kernel_L999:
|
||||||
#else
|
#else
|
||||||
vsqrt.f32 s1, s1
|
vsqrt.f32 s1, s1
|
||||||
vmul.f32 s0, s0, s1
|
vmul.f32 s0, s0, s1
|
||||||
|
#endif
|
||||||
|
#if !defined(__ARM_PCS_VFP)
|
||||||
|
#if !defined(DOUBLE)
|
||||||
|
vmov r0, s0
|
||||||
|
#else
|
||||||
|
vmov r0, r1, d0
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
bx lr
|
bx lr
|
||||||
|
|
|
@ -503,8 +503,13 @@ nrm2_kernel_L999:
|
||||||
#else
|
#else
|
||||||
vsqrt.f32 s1, s1
|
vsqrt.f32 s1, s1
|
||||||
vmul.f32 s0, s0, s1
|
vmul.f32 s0, s0, s1
|
||||||
#ifdef ARM_SOFTFP_ABI
|
#endif
|
||||||
vmov r0, s0
|
|
||||||
|
#if !defined(__ARM_PCS_VFP)
|
||||||
|
#if defined(DOUBLE)
|
||||||
|
vmov r0, r1, d0
|
||||||
|
#else
|
||||||
|
vmov r0, s0
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue