mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-27 04:52:05 +08:00
1368b914e9
Now that all port tests live under testsuite/sim/*/, and none live in testsuite/ directly, flatten the structure by moving all of the dirs under testsuite/sim/ to testsuite/ directly. We need to stop passing --tool to dejagnu so that it searches all dirs and not just ones that start with "sim". Since we have no other dirs in this tree, and no plans to add any, should be fine.
92 lines
1.4 KiB
ArmAsm
92 lines
1.4 KiB
ArmAsm
# mach: aarch64
|
|
|
|
# Check the bitwise vector instructions: bif, bit, bsl, eor.
|
|
|
|
.include "testutils.inc"
|
|
|
|
.data
|
|
.align 4
|
|
inputa:
|
|
.word 0x04030201
|
|
.word 0x08070605
|
|
.word 0x0c0b0a09
|
|
.word 0x100f0e0d
|
|
inputb:
|
|
.word 0x40302010
|
|
.word 0x80706050
|
|
.word 0xc0b0a090
|
|
.word 0x01f0e0d0
|
|
mask:
|
|
.word 0xFF00FF00
|
|
.word 0x00FF00FF
|
|
.word 0xF0F0F0F0
|
|
.word 0x0F0F0F0F
|
|
|
|
start
|
|
adrp x0, inputa
|
|
ldr q0, [x0, #:lo12:inputa]
|
|
adrp x0, inputb
|
|
ldr q1, [x0, #:lo12:inputb]
|
|
adrp x0, mask
|
|
ldr q2, [x0, #:lo12:mask]
|
|
|
|
mov v3.8b, v0.8b
|
|
bif v3.8b, v1.8b, v2.8b
|
|
addv b4, v3.8b
|
|
mov x1, v4.d[0]
|
|
cmp x1, #50
|
|
bne .Lfailure
|
|
|
|
mov v3.16b, v0.16b
|
|
bif v3.16b, v1.16b, v2.16b
|
|
addv b4, v3.16b
|
|
mov x1, v4.d[0]
|
|
cmp x1, #252
|
|
bne .Lfailure
|
|
|
|
mov v3.8b, v0.8b
|
|
bit v3.8b, v1.8b, v2.8b
|
|
addv b4, v3.8b
|
|
mov x1, v4.d[0]
|
|
cmp x1, #50
|
|
bne .Lfailure
|
|
|
|
mov v3.16b, v0.16b
|
|
bit v3.16b, v1.16b, v2.16b
|
|
addv b4, v3.16b
|
|
mov x1, v4.d[0]
|
|
cmp x1, #13
|
|
bne .Lfailure
|
|
|
|
mov v3.8b, v2.8b
|
|
bsl v3.8b, v0.8b, v1.8b
|
|
addv b4, v3.8b
|
|
mov x1, v4.d[0]
|
|
cmp x1, #50
|
|
bne .Lfailure
|
|
|
|
mov v3.16b, v2.16b
|
|
bsl v3.16b, v0.16b, v1.16b
|
|
addv b4, v3.16b
|
|
mov x1, v4.d[0]
|
|
cmp x1, #252
|
|
bne .Lfailure
|
|
|
|
mov v3.8b, v0.8b
|
|
eor v3.8b, v1.8b, v2.8b
|
|
addv b4, v3.8b
|
|
mov x1, v4.d[0]
|
|
cmp x1, #252
|
|
bne .Lfailure
|
|
|
|
mov v3.16b, v0.16b
|
|
eor v3.16b, v1.16b, v2.16b
|
|
addv b4, v3.16b
|
|
mov x1, v4.d[0]
|
|
cmp x1, #247
|
|
bne .Lfailure
|
|
|
|
pass
|
|
.Lfailure:
|
|
fail
|