Browse Source

updated gemv_n_vfpv3.S for armv7

tags/v0.2.16.rc1
Werner Saar 10 years ago
parent
commit
63a7d7fb24
2 changed files with 18 additions and 18 deletions
  1. +2
    -10
      kernel/arm/KERNEL.ARMV7
  2. +16
    -8
      kernel/arm/gemv_n_vfpv3.S

+ 2
- 10
kernel/arm/KERNEL.ARMV7 View File

@@ -72,8 +72,8 @@ DSCALKERNEL = scal.c
CSCALKERNEL = zscal.c
ZSCALKERNEL = zscal.c

SGEMVNKERNEL = gemv_n_vfp.S
DGEMVNKERNEL = gemv_n_vfp.S
SGEMVNKERNEL = gemv_n_vfpv3.S
DGEMVNKERNEL = gemv_n_vfpv3.S
CGEMVNKERNEL = cgemv_n_vfp.S
ZGEMVNKERNEL = zgemv_n_vfp.S

@@ -88,22 +88,14 @@ CTRMMKERNEL = ctrmm_kernel_2x2_vfpv3.S
ZTRMMKERNEL = ztrmm_kernel_2x2_vfpv3.S

SGEMMKERNEL = sgemm_kernel_4x4_vfpv3.S
SGEMMINCOPY =
SGEMMITCOPY =
SGEMMONCOPY = sgemm_ncopy_4_vfp.S
SGEMMOTCOPY = sgemm_tcopy_4_vfp.S
SGEMMINCOPYOBJ =
SGEMMITCOPYOBJ =
SGEMMONCOPYOBJ = sgemm_oncopy.o
SGEMMOTCOPYOBJ = sgemm_otcopy.o

DGEMMKERNEL = dgemm_kernel_4x4_vfpv3.S
DGEMMINCOPY =
DGEMMITCOPY =
DGEMMONCOPY = dgemm_ncopy_4_vfp.S
DGEMMOTCOPY = dgemm_tcopy_4_vfp.S
DGEMMINCOPYOBJ =
DGEMMITCOPYOBJ =
DGEMMONCOPYOBJ = dgemm_oncopy.o
DGEMMOTCOPYOBJ = dgemm_otcopy.o



+ 16
- 8
kernel/arm/gemv_n_vfpv3.S View File

@@ -62,6 +62,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define M [fp, #-252 ]
#define A [fp, #-256 ]

#define FP_ZERO [fp, #-228]
#define FP_ZERO_0 [fp, #-228]
#define FP_ZERO_1 [fp, #-224]


#define X_PRE 64
#define Y_PRE 0
@@ -79,7 +83,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
pld [ YO , #Y_PRE ]
pld [ YO , #Y_PRE+32 ]

vsub.f64 d24 , d24 , d24
fldd d24 , FP_ZERO
vmov.f64 d25 , d24
vmov.f64 d26 , d24
vmov.f64 d27 , d24
@@ -147,7 +151,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

.macro INIT_F1

vsub.f64 d24 , d24 , d24
fldd d24 , FP_ZERO

.endm

@@ -175,7 +179,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

.macro INIT_S8

vsub.f64 d24 , d24 , d24
fldd d24 , FP_ZERO
vmov.f64 d25 , d24
vmov.f64 d26 , d24
vmov.f64 d27 , d24
@@ -269,7 +273,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

.macro INIT_S1

vsub.f64 d24 , d24 , d24
fldd d24 , FP_ZERO

.endm

@@ -302,7 +306,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

pld [ YO , #Y_PRE ]

vsub.f32 s24 , s24 , s24
flds s24 , FP_ZERO
vmov.f32 s25 , s24
vmov.f32 s26 , s24
vmov.f32 s27 , s24
@@ -368,7 +372,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

.macro INIT_F1

vsub.f32 s24 , s24 , s24
flds s24 , FP_ZERO

.endm

@@ -396,7 +400,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

.macro INIT_S8

vsub.f32 s24 , s24 , s24
flds s24 , FP_ZERO
vmov.f32 s25 , s24
vmov.f32 s26 , s24
vmov.f32 s27 , s24
@@ -489,7 +493,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

.macro INIT_S1

vsub.f32 s24 , s24 , s24
flds s24 , FP_ZERO

.endm

@@ -538,6 +542,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
vstm r12, { s8 - s31 } // store floating point registers
#endif

movs r12, #0
str r12, FP_ZERO
str r12, FP_ZERO_1

cmp OLD_M, #0
ble gemvn_kernel_L999



Loading…
Cancel
Save