diff options
author | Alex Bennée <alex.bennee@linaro.org> | 2018-12-07 10:28:31 +0000 |
---|---|---|
committer | Alex Bennée <alex.bennee@linaro.org> | 2019-03-12 17:05:21 +0000 |
commit | d4f6e58fcbab1fa2df123e3849dd95f30400a896 (patch) | |
tree | dc63da617d6ddf108554dd379cc56a7b9014d080 /tests/tcg/cris/bare/check_cmpm.s | |
parent | 6b970dd62cb67375f6267294d38798d9199e487b (diff) |
tests/tcg: split cris tests into bare and libc directories
Bare tests are standalone assembly tests that don't require linking to
any libc and hence can be built with kernel only compilers. The libc
tests need a compiler capable of building properly linked userspace
binaries. As we don't have such a cross compiler at the moment we
won't be building those tests.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Diffstat (limited to 'tests/tcg/cris/bare/check_cmpm.s')
-rw-r--r-- | tests/tcg/cris/bare/check_cmpm.s | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/tests/tcg/cris/bare/check_cmpm.s b/tests/tcg/cris/bare/check_cmpm.s new file mode 100644 index 0000000000..e4dde15b32 --- /dev/null +++ b/tests/tcg/cris/bare/check_cmpm.s @@ -0,0 +1,96 @@ +# mach: crisv0 crisv3 crisv8 crisv10 crisv32 +# output: ffffffff\n2\nffff\nffffffff\n78134452\nffffffff\n2\nffff\nfedaffff\n78134452\nffffffff\n2\nff\nfeda49ff\n78134452\n85649222\n + + .include "testutils.inc" + .data +x: + .dword -2,1,-0xffff,1,-0x5432f789 + .word -2,1,1,0x877 + .byte -2,1,0x77 + .byte 0x22 + + start + moveq -1,r3 + move.d x,r5 + cmp.d [r5+],r3 + test_cc 0 0 0 0 + checkr3 ffffffff + + moveq 2,r3 + cmp.d [r5],r3 + test_cc 0 0 0 0 + addq 4,r5 + checkr3 2 + + move.d 0xffff,r3 + cmp.d [r5+],r3 + test_cc 0 0 0 1 + checkr3 ffff + + moveq -1,r3 + cmp.d [r5+],r3 + test_cc 1 0 0 0 + checkr3 ffffffff + + move.d 0x78134452,r3 + cmp.d [r5+],r3 + test_cc 1 0 1 1 + checkr3 78134452 + + moveq -1,r3 + cmp.w [r5+],r3 + test_cc 0 0 0 0 + checkr3 ffffffff + + moveq 2,r3 + cmp.w [r5+],r3 + test_cc 0 0 0 0 + checkr3 2 + + move.d 0xffff,r3 + cmp.w [r5],r3 + test_cc 1 0 0 0 + checkr3 ffff + + move.d 0xfedaffff,r3 + cmp.w [r5+],r3 + test_cc 1 0 0 0 + checkr3 fedaffff + + move.d 0x78134452,r3 + cmp.w [r5+],r3 + test_cc 0 0 0 0 + checkr3 78134452 + + moveq -1,r3 + cmp.b [r5],r3 + test_cc 0 0 0 0 + addq 1,r5 + checkr3 ffffffff + + moveq 2,r3 + cmp.b [r5],r3 + test_cc 0 0 0 0 + checkr3 2 + + move.d 0xff,r3 + cmp.b [r5],r3 + test_cc 1 0 0 0 + checkr3 ff + + move.d 0xfeda49ff,r3 + cmp.b [r5+],r3 + test_cc 1 0 0 0 + checkr3 feda49ff + + move.d 0x78134452,r3 + cmp.b [r5+],r3 + test_cc 1 0 0 1 + checkr3 78134452 + + move.d 0x85649222,r3 + cmp.b [r5],r3 + test_cc 0 1 0 0 + checkr3 85649222 + + quit |