LoongArch64: Fixed compilation issues when enable DYNAMIC_ARCH

This commit is contained in:
gxw 2023-09-27 09:40:40 +08:00
parent e2ca22f8d8
commit d15e0a055c
5 changed files with 21 additions and 16 deletions

View File

@ -341,7 +341,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
fmadd.d $f10, $f12, $f2, $f10 fmadd.d $f10, $f12, $f2, $f10
.endm .endm
.macro DGEMV_N XW:req, X_8:req, X_4:req, X_2:req, X_1:req, Y_8:req, Y_4:req, Y_1:req .macro DGEMV_N_LASX XW:req, X_8:req, X_4:req, X_2:req, X_1:req, Y_8:req, Y_4:req, Y_1:req
PTR_SRLI J, N, 3 PTR_SRLI J, N, 3
beqz J, .L_\XW\()_N_7 beqz J, .L_\XW\()_N_7
PTR_SLLI K_LDA, LDA, 3 PTR_SLLI K_LDA, LDA, 3
@ -541,13 +541,13 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.hword .L_GAP_1_0 - .L_GAP_TABLE .hword .L_GAP_1_0 - .L_GAP_TABLE
.hword .L_GAP_1_1 - .L_GAP_TABLE .hword .L_GAP_1_1 - .L_GAP_TABLE
.L_GAP_0_0: /* if (inc_x == 1) && (incy == 1) */ .L_GAP_0_0: /* if (inc_x == 1) && (incy == 1) */
DGEMV_N GAP_0_0, X_8, X_4, X_2, X_1, Y_8, Y_4, Y_1 DGEMV_N_LASX GAP_0_0, X_8, X_4, X_2, X_1, Y_8, Y_4, Y_1
.L_GAP_0_1: /* if (inc_x == 1) && (incy != 1) */ .L_GAP_0_1: /* if (inc_x == 1) && (incy != 1) */
DGEMV_N GAP_0_1, X_8, X_4, X_2, X_1, Y_8_GAP, Y_4_GAP, Y_1 DGEMV_N_LASX GAP_0_1, X_8, X_4, X_2, X_1, Y_8_GAP, Y_4_GAP, Y_1
.L_GAP_1_0: /* if (inc_x != 1) && (incy == 1) */ .L_GAP_1_0: /* if (inc_x != 1) && (incy == 1) */
DGEMV_N GAP_1_0, X_8_GAP, X_4_GAP, X_2_GAP, X_1, Y_8, Y_4, Y_1 DGEMV_N_LASX GAP_1_0, X_8_GAP, X_4_GAP, X_2_GAP, X_1, Y_8, Y_4, Y_1
.L_GAP_1_1: /* if (inc_x != 1) && (incy != 1) */ .L_GAP_1_1: /* if (inc_x != 1) && (incy != 1) */
DGEMV_N GAP_1_1, X_8_GAP, X_4_GAP, X_2_GAP, X_1, Y_8_GAP, Y_4_GAP, Y_1 DGEMV_N_LASX GAP_1_1, X_8_GAP, X_4_GAP, X_2_GAP, X_1, Y_8_GAP, Y_4_GAP, Y_1
.L_END: .L_END:
pop_if_used 17 + 7, 24 + 4 pop_if_used 17 + 7, 24 + 4
jirl $r0, $r1, 0x0 jirl $r0, $r1, 0x0

View File

@ -220,7 +220,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
GMADD xvf, d, TP0, A0, X0, TP0, TP1, A2, X0, TP1 GMADD xvf, d, TP0, A0, X0, TP0, TP1, A2, X0, TP1
.endm .endm
.macro DGEMV_T XW:req X8:req, X4:req .macro DGEMV_T_LASX XW:req X8:req, X4:req
PTR_SRLI J, N, 3 PTR_SRLI J, N, 3
beqz J, .L_\XW\()_N_7 beqz J, .L_\XW\()_N_7
PTR_SLLI K_LDA, LDA, 3 PTR_SLLI K_LDA, LDA, 3
@ -472,9 +472,9 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.hword .L_GAP_0 - .L_GAP_TABLE .hword .L_GAP_0 - .L_GAP_TABLE
.hword .L_GAP_1 - .L_GAP_TABLE .hword .L_GAP_1 - .L_GAP_TABLE
.L_GAP_0: /* if (incx == 1) */ .L_GAP_0: /* if (incx == 1) */
DGEMV_T GAP_0, X8, X4 DGEMV_T_LASX GAP_0, X8, X4
.L_GAP_1: /* if (incx != 1) */ .L_GAP_1: /* if (incx != 1) */
DGEMV_T GAP_1, X8_GAP, X4_GAP DGEMV_T_LASX GAP_1, X8_GAP, X4_GAP
.L_END: .L_END:
pop_if_used 17 + 8, 24 + 3 pop_if_used 17 + 8, 24 + 3
jirl $r0, $r1, 0x0 jirl $r0, $r1, 0x0

View File

@ -274,7 +274,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
GST f, s, Y0_F, Y, 0 GST f, s, Y0_F, Y, 0
.endm .endm
.macro SGEMV_N XW:req, X_8:req, X_4:req, X_2:req, X_1:req, Y_8:req, Y_4:req, Y_1:req .macro SGEMV_N_LASX XW:req, X_8:req, X_4:req, X_2:req, X_1:req, Y_8:req, Y_4:req, Y_1:req
PTR_SRLI J, N, 3 PTR_SRLI J, N, 3
beqz J, .L_\XW\()_N_7 beqz J, .L_\XW\()_N_7
PTR_SLLI K_LDA, LDA, 3 PTR_SLLI K_LDA, LDA, 3
@ -450,13 +450,13 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.hword .L_GAP_1_0 - .L_GAP_TABLE .hword .L_GAP_1_0 - .L_GAP_TABLE
.hword .L_GAP_1_1 - .L_GAP_TABLE .hword .L_GAP_1_1 - .L_GAP_TABLE
.L_GAP_0_0: /* if (inc_x == 1) && (incy == 1) */ .L_GAP_0_0: /* if (inc_x == 1) && (incy == 1) */
SGEMV_N GAP_0_0, X_8, X_4, X_2, X_1, Y_8, Y_4, Y_1 SGEMV_N_LASX GAP_0_0, X_8, X_4, X_2, X_1, Y_8, Y_4, Y_1
.L_GAP_0_1: /* if (inc_x == 1) && (incy != 1) */ .L_GAP_0_1: /* if (inc_x == 1) && (incy != 1) */
SGEMV_N GAP_0_1, X_8, X_4, X_2, X_1, Y_8_GAP, Y_4_GAP, Y_1 SGEMV_N_LASX GAP_0_1, X_8, X_4, X_2, X_1, Y_8_GAP, Y_4_GAP, Y_1
.L_GAP_1_0: /* if (inc_x != 1) && (incy == 1) */ .L_GAP_1_0: /* if (inc_x != 1) && (incy == 1) */
SGEMV_N GAP_1_0, X_8_GAP, X_4_GAP, X_2_GAP, X_1, Y_8, Y_4, Y_1 SGEMV_N_LASX GAP_1_0, X_8_GAP, X_4_GAP, X_2_GAP, X_1, Y_8, Y_4, Y_1
.L_GAP_1_1: /* if (inc_x != 1) && (incy != 1) */ .L_GAP_1_1: /* if (inc_x != 1) && (incy != 1) */
SGEMV_N GAP_1_1, X_8_GAP, X_4_GAP, X_2_GAP, X_1, Y_8_GAP, Y_4_GAP, Y_1 SGEMV_N_LASX GAP_1_1, X_8_GAP, X_4_GAP, X_2_GAP, X_1, Y_8_GAP, Y_4_GAP, Y_1
.L_END: .L_END:
pop_if_used 17 + 7, 19 pop_if_used 17 + 7, 19
jirl $r0, $r1, 0x0 jirl $r0, $r1, 0x0

View File

@ -160,7 +160,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
GMADD xvf, s, TP0, A0, X0, TP0, TP1, A1, X0, TP1 GMADD xvf, s, TP0, A0, X0, TP0, TP1, A1, X0, TP1
.endm .endm
.macro SGEMV_T XW:req X8:req, X4:req .macro SGEMV_T_LASX XW:req X8:req, X4:req
PTR_SRLI J, N, 3 PTR_SRLI J, N, 3
beqz J, .L_\XW\()_N_7 beqz J, .L_\XW\()_N_7
PTR_SLLI K_LDA, LDA, 3 PTR_SLLI K_LDA, LDA, 3
@ -396,9 +396,9 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.hword .L_GAP_0 - .L_GAP_TABLE .hword .L_GAP_0 - .L_GAP_TABLE
.hword .L_GAP_1 - .L_GAP_TABLE .hword .L_GAP_1 - .L_GAP_TABLE
.L_GAP_0: /* if (incx == 1) */ .L_GAP_0: /* if (incx == 1) */
SGEMV_T GAP_0, X8, X4 SGEMV_T_LASX GAP_0, X8, X4
.L_GAP_1: /* if (incx != 1) */ .L_GAP_1: /* if (incx != 1) */
SGEMV_T GAP_1, X8_GAP, X4_GAP SGEMV_T_LASX GAP_1, X8_GAP, X4_GAP
.L_END: .L_END:
pop_if_used 17 + 8, 18 pop_if_used 17 + 8, 18
jirl $r0, $r1, 0x0 jirl $r0, $r1, 0x0

View File

@ -1,6 +1,11 @@
TOPDIR = ../../.. TOPDIR = ../../..
include ../../../Makefile.system include ../../../Makefile.system
ifeq ($(DYNAMIC_ARCH), 1)
LASWP = ../generic/laswp_k_4.c
ZLASWP = ../generic/zlaswp_k_4.c
endif
ifndef LASWP ifndef LASWP
LASWP = ../generic/laswp_k.c LASWP = ../generic/laswp_k.c
endif endif