feat(loong64): encode the full LSX and LASX table
Assisted-by: GLM 5.3 Flash
This commit is contained in:
+204
@@ -0,0 +1,204 @@
|
||||
// Differential kernel: the mulwiden vector slice against the Go
|
||||
// toolchain's loong64enc1.s rows (gasm v. go tool asm, byte for byte).
|
||||
|
||||
#include "textflag.h"
|
||||
|
||||
TEXT ·VMULW(SB), NOSPLIT, $0
|
||||
VMULW V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULW(SB), NOSPLIT, $0
|
||||
XVMULW X3, X2, X1
|
||||
RET
|
||||
|
||||
TEXT ·VMULWEVHB(SB), NOSPLIT, $0
|
||||
VMULWEVHB V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWEVWH(SB), NOSPLIT, $0
|
||||
VMULWEVWH V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWEVVW(SB), NOSPLIT, $0
|
||||
VMULWEVVW V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWEVQV(SB), NOSPLIT, $0
|
||||
VMULWEVQV V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWODHB(SB), NOSPLIT, $0
|
||||
VMULWODHB V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWODWH(SB), NOSPLIT, $0
|
||||
VMULWODWH V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWODVW(SB), NOSPLIT, $0
|
||||
VMULWODVW V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWODQV(SB), NOSPLIT, $0
|
||||
VMULWODQV V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWEVHBU(SB), NOSPLIT, $0
|
||||
VMULWEVHBU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWEVWHU(SB), NOSPLIT, $0
|
||||
VMULWEVWHU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWEVVWU(SB), NOSPLIT, $0
|
||||
VMULWEVVWU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWEVQVU(SB), NOSPLIT, $0
|
||||
VMULWEVQVU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWODHBU(SB), NOSPLIT, $0
|
||||
VMULWODHBU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWODWHU(SB), NOSPLIT, $0
|
||||
VMULWODWHU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWODVWU(SB), NOSPLIT, $0
|
||||
VMULWODVWU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWODQVU(SB), NOSPLIT, $0
|
||||
VMULWODQVU V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWEVHB(SB), NOSPLIT, $0
|
||||
XVMULWEVHB X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWEVWH(SB), NOSPLIT, $0
|
||||
XVMULWEVWH X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWEVVW(SB), NOSPLIT, $0
|
||||
XVMULWEVVW X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWEVQV(SB), NOSPLIT, $0
|
||||
XVMULWEVQV X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWODHB(SB), NOSPLIT, $0
|
||||
XVMULWODHB X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWODWH(SB), NOSPLIT, $0
|
||||
XVMULWODWH X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWODVW(SB), NOSPLIT, $0
|
||||
XVMULWODVW X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWODQV(SB), NOSPLIT, $0
|
||||
XVMULWODQV X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWEVHBU(SB), NOSPLIT, $0
|
||||
XVMULWEVHBU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWEVWHU(SB), NOSPLIT, $0
|
||||
XVMULWEVWHU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWEVVWU(SB), NOSPLIT, $0
|
||||
XVMULWEVVWU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWEVQVU(SB), NOSPLIT, $0
|
||||
XVMULWEVQVU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWODHBU(SB), NOSPLIT, $0
|
||||
XVMULWODHBU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWODWHU(SB), NOSPLIT, $0
|
||||
XVMULWODWHU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWODVWU(SB), NOSPLIT, $0
|
||||
XVMULWODVWU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWODQVU(SB), NOSPLIT, $0
|
||||
XVMULWODQVU X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWEVHBUB(SB), NOSPLIT, $0
|
||||
VMULWEVHBUB V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWEVWHUH(SB), NOSPLIT, $0
|
||||
VMULWEVWHUH V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWEVVWUW(SB), NOSPLIT, $0
|
||||
VMULWEVVWUW V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWEVQVUV(SB), NOSPLIT, $0
|
||||
VMULWEVQVUV V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWODHBUB(SB), NOSPLIT, $0
|
||||
VMULWODHBUB V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWODWHUH(SB), NOSPLIT, $0
|
||||
VMULWODWHUH V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWODVWUW(SB), NOSPLIT, $0
|
||||
VMULWODVWUW V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·VMULWODQVUV(SB), NOSPLIT, $0
|
||||
VMULWODQVUV V1, V2, V3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWEVHBUB(SB), NOSPLIT, $0
|
||||
XVMULWEVHBUB X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWEVWHUH(SB), NOSPLIT, $0
|
||||
XVMULWEVWHUH X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWEVVWUW(SB), NOSPLIT, $0
|
||||
XVMULWEVVWUW X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWEVQVUV(SB), NOSPLIT, $0
|
||||
XVMULWEVQVUV X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWODHBUB(SB), NOSPLIT, $0
|
||||
XVMULWODHBUB X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWODWHUH(SB), NOSPLIT, $0
|
||||
XVMULWODWHUH X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWODVWUW(SB), NOSPLIT, $0
|
||||
XVMULWODVWUW X1, X2, X3
|
||||
RET
|
||||
|
||||
TEXT ·XVMULWODQVUV(SB), NOSPLIT, $0
|
||||
XVMULWODQVUV X1, X2, X3
|
||||
RET
|
||||
Reference in New Issue
Block a user