feat(loong64): encode the full LSX and LASX table
Assisted-by: GLM 5.3 Flash
This commit is contained in:
+209
@@ -0,0 +1,209 @@
|
||||
// Differential kernel: the arith_add vector slice against the Go
|
||||
// toolchain's loong64enc1.s rows (gasm v. go tool asm, byte for byte).
|
||||
|
||||
#include "textflag.h"
|
||||
|
||||
TEXT ·VADDB(SB), NOSPLIT, $0
|
||||
VADDB V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDH(SB), NOSPLIT, $0
|
||||
VADDH V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDQ(SB), NOSPLIT, $0
|
||||
VADDQ V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDB(SB), NOSPLIT, $0
|
||||
XVADDB X3, X2, X1
|
||||
RET
|
||||
|
||||
TEXT ·XVADDH(SB), NOSPLIT, $0
|
||||
XVADDH X3, X2, X1
|
||||
RET
|
||||
|
||||
TEXT ·XVADDW(SB), NOSPLIT, $0
|
||||
XVADDW X3, X2, X1
|
||||
RET
|
||||
|
||||
TEXT ·XVADDQ(SB), NOSPLIT, $0
|
||||
XVADDQ X3, X2, X1
|
||||
RET
|
||||
|
||||
TEXT ·VADDBU(SB), NOSPLIT, $0
|
||||
VADDBU $1, V2
|
||||
VADDBU $1, V2, V1
|
||||
RET
|
||||
|
||||
TEXT ·VADDHU(SB), NOSPLIT, $0
|
||||
VADDHU $2, V2, V1
|
||||
RET
|
||||
|
||||
TEXT ·VADDWU(SB), NOSPLIT, $0
|
||||
VADDWU $3, V2, V1
|
||||
RET
|
||||
|
||||
TEXT ·VADDVU(SB), NOSPLIT, $0
|
||||
VADDVU $4, V2, V1
|
||||
RET
|
||||
|
||||
TEXT ·XVADDBU(SB), NOSPLIT, $0
|
||||
XVADDBU $9, X1, X2
|
||||
RET
|
||||
|
||||
TEXT ·XVADDHU(SB), NOSPLIT, $0
|
||||
XVADDHU $10, X1, X2
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWU(SB), NOSPLIT, $0
|
||||
XVADDWU $11, X1, X2
|
||||
RET
|
||||
|
||||
TEXT ·XVADDVU(SB), NOSPLIT, $0
|
||||
XVADDVU $12, X1, X2
|
||||
RET
|
||||
|
||||
TEXT ·VADDWEVHB(SB), NOSPLIT, $0
|
||||
VADDWEVHB V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWEVWH(SB), NOSPLIT, $0
|
||||
VADDWEVWH V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWEVVW(SB), NOSPLIT, $0
|
||||
VADDWEVVW V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWEVQV(SB), NOSPLIT, $0
|
||||
VADDWEVQV V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWODHB(SB), NOSPLIT, $0
|
||||
VADDWODHB V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWODWH(SB), NOSPLIT, $0
|
||||
VADDWODWH V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWODVW(SB), NOSPLIT, $0
|
||||
VADDWODVW V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWODQV(SB), NOSPLIT, $0
|
||||
VADDWODQV V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWEVHB(SB), NOSPLIT, $0
|
||||
XVADDWEVHB X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWEVWH(SB), NOSPLIT, $0
|
||||
XVADDWEVWH X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWEVVW(SB), NOSPLIT, $0
|
||||
XVADDWEVVW X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWEVQV(SB), NOSPLIT, $0
|
||||
XVADDWEVQV X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWODHB(SB), NOSPLIT, $0
|
||||
XVADDWODHB X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWODWH(SB), NOSPLIT, $0
|
||||
XVADDWODWH X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWODVW(SB), NOSPLIT, $0
|
||||
XVADDWODVW X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWODQV(SB), NOSPLIT, $0
|
||||
XVADDWODQV X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWEVHBU(SB), NOSPLIT, $0
|
||||
VADDWEVHBU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWEVWHU(SB), NOSPLIT, $0
|
||||
VADDWEVWHU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWEVVWU(SB), NOSPLIT, $0
|
||||
VADDWEVVWU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWEVQVU(SB), NOSPLIT, $0
|
||||
VADDWEVQVU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWODHBU(SB), NOSPLIT, $0
|
||||
VADDWODHBU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWODWHU(SB), NOSPLIT, $0
|
||||
VADDWODWHU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWODVWU(SB), NOSPLIT, $0
|
||||
VADDWODVWU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDWODQVU(SB), NOSPLIT, $0
|
||||
VADDWODQVU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWEVHBU(SB), NOSPLIT, $0
|
||||
XVADDWEVHBU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWEVWHU(SB), NOSPLIT, $0
|
||||
XVADDWEVWHU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWEVVWU(SB), NOSPLIT, $0
|
||||
XVADDWEVVWU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWEVQVU(SB), NOSPLIT, $0
|
||||
XVADDWEVQVU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWODHBU(SB), NOSPLIT, $0
|
||||
XVADDWODHBU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWODWHU(SB), NOSPLIT, $0
|
||||
XVADDWODWHU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWODVWU(SB), NOSPLIT, $0
|
||||
XVADDWODVWU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDWODQVU(SB), NOSPLIT, $0
|
||||
XVADDWODQVU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·VADDF(SB), NOSPLIT, $0
|
||||
VADDF V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VADDD(SB), NOSPLIT, $0
|
||||
VADDD V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDF(SB), NOSPLIT, $0
|
||||
XVADDF X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVADDD(SB), NOSPLIT, $0
|
||||
XVADDD X1, X2, X3
|
||||
RET
|
||||
Reference in New Issue
Block a user