diff --git a/kernel/loongarch64/dgemv_t_lsx.S b/kernel/loongarch64/dgemv_t_lsx.S index 76f0d9bdcc..ee16c798b9 100644 --- a/kernel/loongarch64/dgemv_t_lsx.S +++ b/kernel/loongarch64/dgemv_t_lsx.S @@ -26,10 +26,8 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *******************************************************************************/ #define ASSEMBLER - #include "common.h" -/* Param */ #define M $r4 #define N $r5 #define A $r7 @@ -41,44 +39,26 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define BUFFER $r16 #define ALPHA $f0 -#define YORIG $r18 -#define T0 $r19 -#define T1 $r20 -#define AO3 $r12 -#define AO4 $r13 #define I $r14 #define J $r15 -#define AO1 $r23 -#define AO2 $r24 +#define AO $r23 +#define XORG $r24 #define IX $r25 #define IY $r26 #define II $r27 +#define T0 $r19 +#define T1 $r20 #define T2 $r28 #define T3 $r29 #define T4 $r30 -/* LSX vectors */ -#define U0 $vr11 -#define U1 $vr12 -#define U2 $vr2 -#define U3 $vr3 -#define U4 $vr4 -#define U5 $vr5 -#define U6 $vr6 -#define U7 $vr7 -#define U8 $vr8 -#define U9 $vr9 -#define VALPHA $vr10 - -#define a1 $f3 -#define a2 $f4 -#define a3 $f5 -#define a4 $f6 -#define a5 $f7 -#define a6 $f8 -#define a7 $f9 -#define a8 $f10 - +#define ACC $vr11 +#define VX $vr12 +#define VA $vr13 +#define VT $vr14 +#define FAC $f17 +#define FAX $f18 +#define FAY $f19 PROLOGUE @@ -86,7 +66,6 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. LDARG BUFFER, $sp, 8 addi.d $sp, $sp, -80 - SDARG $r23, $sp, 0 SDARG $r24, $sp, 8 SDARG $r25, $sp, 16 @@ -97,8 +76,6 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. SDARG $r30, $sp, 64 ST ALPHA, $sp, 72 - vldrepl.d VALPHA, $sp, 72 - slli.d LDA, LDA, BASE_SHIFT slli.d INCX, INCX, BASE_SHIFT slli.d INCY, INCY, BASE_SHIFT @@ -108,160 +85,82 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. move J, $r0 move IY, $r0 - - move AO1, A //a_ptr1 - - srai.d T0, N, 2 //n/4 - beq J, T0, .L04 - -.L01: /* j