Files
gasm-sdk/testdata/verify/vector_shuffle_loong64.s
T

133 lines
2.2 KiB
ArmAsm
Raw Normal View History

// Differential kernel: the shuffle vector slice against the Go
// toolchain's loong64enc1.s rows (gasm v. go tool asm, byte for byte).
#include "textflag.h"
TEXT ·VSHUF4IB(SB), NOSPLIT, $0
VSHUF4IB $0, V2, V1
VSHUF4IB $16, V2, V1
VSHUF4IB $255, V2, V1
RET
TEXT ·VSHUF4IH(SB), NOSPLIT, $0
VSHUF4IH $0, V2, V1
VSHUF4IH $128, V2, V1
VSHUF4IH $255, V2, V1
RET
TEXT ·VSHUF4IW(SB), NOSPLIT, $0
VSHUF4IW $0, V2, V1
VSHUF4IW $96, V2, V1
VSHUF4IW $255, V2, V1
RET
TEXT ·VSHUF4IV(SB), NOSPLIT, $0
VSHUF4IV $0, V2, V1
VSHUF4IV $8, V2, V1
VSHUF4IV $15, V2, V1
RET
TEXT ·XVSHUF4IB(SB), NOSPLIT, $0
XVSHUF4IB $0, X1, X2
XVSHUF4IB $16, X1, X2
XVSHUF4IB $255, X1, X2
RET
TEXT ·XVSHUF4IH(SB), NOSPLIT, $0
XVSHUF4IH $0, X1, X2
XVSHUF4IH $128, X1, X2
XVSHUF4IH $255, X1, X2
RET
TEXT ·XVSHUF4IW(SB), NOSPLIT, $0
XVSHUF4IW $0, X1, X2
XVSHUF4IW $96, X1, X2
XVSHUF4IW $255, X1, X2
RET
TEXT ·XVSHUF4IV(SB), NOSPLIT, $0
XVSHUF4IV $0, X1, X2
XVSHUF4IV $8, X1, X2
XVSHUF4IV $15, X1, X2
RET
TEXT ·VSHUFH(SB), NOSPLIT, $0
VSHUFH V1, V2, V3
RET
TEXT ·VSHUFW(SB), NOSPLIT, $0
VSHUFW V1, V2, V3
RET
TEXT ·VSHUFV(SB), NOSPLIT, $0
VSHUFV V1, V2, V3
RET
TEXT ·XVSHUFH(SB), NOSPLIT, $0
XVSHUFH X1, X2, X3
RET
TEXT ·XVSHUFW(SB), NOSPLIT, $0
XVSHUFW X1, X2, X3
RET
TEXT ·XVSHUFV(SB), NOSPLIT, $0
XVSHUFV X1, X2, X3
RET
TEXT ·VSHUFB(SB), NOSPLIT, $0
VSHUFB V1, V2, V3, V4
RET
TEXT ·XVSHUFB(SB), NOSPLIT, $0
XVSHUFB X1, X2, X3, X4
RET
TEXT ·VPERMIW(SB), NOSPLIT, $0
VPERMIW $0x1B, V1, V2
RET
TEXT ·XVPERMIW(SB), NOSPLIT, $0
XVPERMIW $0x2B, X1, X2
RET
TEXT ·XVPERMIV(SB), NOSPLIT, $0
XVPERMIV $0x3B, X1, X2
RET
TEXT ·XVPERMIQ(SB), NOSPLIT, $0
XVPERMIQ $0x4B, X1, X2
RET
TEXT ·VEXTRINSB(SB), NOSPLIT, $0
VEXTRINSB $0x18, V1, V2
RET
TEXT ·VEXTRINSH(SB), NOSPLIT, $0
VEXTRINSH $0x27, V1, V2
RET
TEXT ·VEXTRINSW(SB), NOSPLIT, $0
VEXTRINSW $0x36, V1, V2
RET
TEXT ·VEXTRINSV(SB), NOSPLIT, $0
VEXTRINSV $0x45, V1, V2
RET
TEXT ·XVEXTRINSB(SB), NOSPLIT, $0
XVEXTRINSB $0x54, X1, X2
RET
TEXT ·XVEXTRINSH(SB), NOSPLIT, $0
XVEXTRINSH $0x63, X1, X2
RET
TEXT ·XVEXTRINSW(SB), NOSPLIT, $0
XVEXTRINSW $0x72, X1, X2
RET
TEXT ·XVEXTRINSV(SB), NOSPLIT, $0
XVEXTRINSV $0x81, X1, X2
RET