Browse Source

arm: add softfp support in kernel/arm/rot_vfp.S

tags/v0.2.20^2
Ashwin Sekhar T K 9 years ago
parent
commit
0150fabdb6
2 changed files with 23 additions and 6 deletions
  1. +5
    -5
      kernel/arm/KERNEL.ARMV6
  2. +18
    -1
      kernel/arm/rot_vfp.S

+ 5
- 5
kernel/arm/KERNEL.ARMV6 View File

@@ -42,6 +42,11 @@ DAXPYKERNEL = axpy_vfp.S
CAXPYKERNEL = axpy_vfp.S CAXPYKERNEL = axpy_vfp.S
ZAXPYKERNEL = axpy_vfp.S ZAXPYKERNEL = axpy_vfp.S


SROTKERNEL = rot_vfp.S
DROTKERNEL = rot_vfp.S
CROTKERNEL = rot_vfp.S
ZROTKERNEL = rot_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 @@ DNRM2KERNEL = nrm2_vfp.S
CNRM2KERNEL = nrm2_vfp.S CNRM2KERNEL = nrm2_vfp.S
ZNRM2KERNEL = nrm2_vfp.S ZNRM2KERNEL = nrm2_vfp.S


SROTKERNEL = rot_vfp.S
DROTKERNEL = rot_vfp.S
CROTKERNEL = rot_vfp.S
ZROTKERNEL = rot_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


+ 18
- 1
kernel/arm/rot_vfp.S View File

@@ -40,6 +40,15 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


#define OLD_INC_Y [fp, #0 ] #define OLD_INC_Y [fp, #0 ]


#if !defined(__ARM_PCS_VFP)
#if !defined(DOUBLE)
#define OLD_C [fp, #4]
#define OLD_S [fp, #8]
#else
#define OLD_C [fp, #8]
#define OLD_S [fp, #16]
#endif
#endif


#define N r0 #define N r0
#define X r1 #define X r1
@@ -462,7 +471,15 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
add fp, sp, #8 add fp, sp, #8


ldr INC_Y , OLD_INC_Y ldr INC_Y , OLD_INC_Y

#if !defined(__ARM_PCS_VFP)
#if !defined(DOUBLE)
vldr s0, OLD_C
vldr s1, OLD_S
#else
vldr d0, OLD_C
vldr d1, OLD_S
#endif
#endif


cmp N, #0 cmp N, #0
ble rot_kernel_L999 ble rot_kernel_L999


Loading…
Cancel
Save