You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
qemu/tests/tcg/xtensa/test_b.S

246 lines
3.2 KiB
ArmAsm

#include "macros.inc"
test_suite b
test bnone
movi a2, 0xa5a5ff00
movi a3, 0x5a5a00ff
bnone a2, a3, 1f
test_fail
1:
movi a2, 0xa5a5ff01
bnone a2, a3, 1f
j 2f
1:
test_fail
2:
test_end
test beq
movi a2, 0
movi a3, 0
beq a2, a3, 1f
test_fail
1:
movi a2, 1
beq a2, a3, 1f
j 2f
1:
test_fail
2:
test_end
test blt
movi a2, 6
movi a3, 7
blt a2, a3, 1f
test_fail
1:
movi a2, 0xffffffff
blt a2, a3, 1f
test_fail
1:
movi a2, 7
blt a2, a3, 1f
j 2f
1:
test_fail
2:
test_end
test bltu
movi a2, 6
movi a3, 7
bltu a2, a3, 1f
test_fail
1:
movi a2, 7
bltu a2, a3, 1f
j 2f
1:
test_fail
2:
movi a2, 0xffffffff
bltu a2, a3, 1f
j 2f
1:
test_fail
2:
test_end
test ball
movi a2, 0xa5a5ffa5
movi a3, 0xa5a5ff00
ball a2, a3, 1f
test_fail
1:
movi a2, 0xa5a5a5a5
ball a2, a3, 1f
j 2f
1:
test_fail
2:
test_end
test bbc
movi a2, 0xfffffffd
#undef BIT
#if XCHAL_HAVE_BE
#define BIT 0xfffffffe
#else
#define BIT 0xffffff01
#endif
movi a3, BIT
bbc a2, a3, 1f
test_fail
1:
movi a2, 8
#undef BIT
#if XCHAL_HAVE_BE
#define BIT 0xfffffffc
#else
#define BIT 0xffffff03
#endif
movi a3, BIT
bbc a2, a3, 1f
j 2f
1:
test_fail
2:
test_end
test bbci
movi a2, 0xfffdffff
bbci.l a2, 17, 1f
test_fail
1:
movi a2, 0x00020000
bbci.l a2, 17, 1f
j 2f
1:
test_fail
2:
test_end
test bany
movi a2, 0xa5a5ff01
movi a3, 0x5a5a00ff
bany a2, a3, 1f
test_fail
1:
movi a2, 0xa5a5ff00
bany a2, a3, 1f
j 2f
1:
test_fail
2:
test_end
test bne
movi a2, 1
movi a3, 0
bne a2, a3, 1f
test_fail
1:
movi a2, 0
bne a2, a3, 1f
j 2f
1:
test_fail
2:
test_end
test bge
movi a2, 7
movi a3, 7
bge a2, a3, 1f
test_fail
1:
movi a2, 6
bge a2, a3, 1f
j 2f
1:
test_fail
2:
movi a2, 0xffffffff
bge a2, a3, 1f
j 2f
1:
test_fail
2:
test_end
test bgeu
movi a2, 7
movi a3, 7
bgeu a2, a3, 1f
test_fail
1:
movi a2, 0xffffffff
bgeu a2, a3, 1f
test_fail
1:
movi a2, 6
bgeu a2, a3, 1f
j 2f
1:
test_fail
2:
test_end
test bnall
movi a2, 0xa5a5a5a5
movi a3, 0xa5a5ff00
bnall a2, a3, 1f
test_fail
1:
movi a2, 0xa5a5ffa5
bnall a2, a3, 1f
j 2f
1:
test_fail
2:
test_end
test bbs
movi a2, 8
#undef BIT
#if XCHAL_HAVE_BE
#define BIT 0xfffffffc
#else
#define BIT 0xffffff03
#endif
movi a3, BIT
bbs a2, a3, 1f
test_fail
1:
movi a2, 0xfffffffd
#undef BIT
#if XCHAL_HAVE_BE
#define BIT 0xfffffffe
#else
#define BIT 0xffffff01
#endif
movi a3, BIT
bbs a2, a3, 1f
j 2f
1:
test_fail
2:
test_end
test bbsi
movi a2, 0x00020000
bbsi.l a2, 17, 1f
test_fail
1:
movi a2, 0xfffdffff
bbsi.l a2, 17, 1f
j 2f
1:
test_fail
2:
test_end
test_suite_end