205 lines
3.3 KiB
ArmAsm
205 lines
3.3 KiB
ArmAsm
// 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
|