xref: /openbmc/qemu/tests/tcg/cris/bare/check_cmpxm.s (revision 8482ff2e)
1*d4f6e58fSAlex Bennée# mach: crisv0 crisv3 crisv8 crisv10 crisv32
2*d4f6e58fSAlex Bennée# output: 2\n2\n2\n2\nffff\nffff\nffff\nffff\nffffffff\nffffffff\nffffffff\n78134452\n78134452\n78134452\n78134452\n4452\n80000032\n
3*d4f6e58fSAlex Bennée
4*d4f6e58fSAlex Bennée .include "testutils.inc"
5*d4f6e58fSAlex Bennée .data
6*d4f6e58fSAlex Bennéex:
7*d4f6e58fSAlex Bennée .byte 0xff
8*d4f6e58fSAlex Bennée .word 0xffff
9*d4f6e58fSAlex Bennée .word 0xff
10*d4f6e58fSAlex Bennée .word 0xffff
11*d4f6e58fSAlex Bennée .byte 0x89
12*d4f6e58fSAlex Bennée .word 0xf789
13*d4f6e58fSAlex Bennée .word 0x8002
14*d4f6e58fSAlex Bennée .word 0x764
15*d4f6e58fSAlex Bennée
16*d4f6e58fSAlex Bennée start
17*d4f6e58fSAlex Bennée moveq 2,r3
18*d4f6e58fSAlex Bennée move.d x,r5
19*d4f6e58fSAlex Bennée cmps.b [r5+],r3
20*d4f6e58fSAlex Bennée test_cc 0 0 0 1
21*d4f6e58fSAlex Bennée checkr3 2
22*d4f6e58fSAlex Bennée
23*d4f6e58fSAlex Bennée moveq 2,r3
24*d4f6e58fSAlex Bennée cmps.w [r5+],r3
25*d4f6e58fSAlex Bennée test_cc 0 0 0 1
26*d4f6e58fSAlex Bennée checkr3 2
27*d4f6e58fSAlex Bennée
28*d4f6e58fSAlex Bennée moveq 2,r3
29*d4f6e58fSAlex Bennée subq 3,r5
30*d4f6e58fSAlex Bennée cmpu.b [r5+],r3
31*d4f6e58fSAlex Bennée test_cc 1 0 0 1
32*d4f6e58fSAlex Bennée checkr3 2
33*d4f6e58fSAlex Bennée
34*d4f6e58fSAlex Bennée moveq 2,r3
35*d4f6e58fSAlex Bennée cmpu.w [r5+],r3
36*d4f6e58fSAlex Bennée test_cc 1 0 0 1
37*d4f6e58fSAlex Bennée subq 3,r5
38*d4f6e58fSAlex Bennée checkr3 2
39*d4f6e58fSAlex Bennée
40*d4f6e58fSAlex Bennée move.d 0xffff,r3
41*d4f6e58fSAlex Bennée cmpu.b [r5],r3
42*d4f6e58fSAlex Bennée test_cc 0 0 0 0
43*d4f6e58fSAlex Bennée checkr3 ffff
44*d4f6e58fSAlex Bennée
45*d4f6e58fSAlex Bennée move.d 0xffff,r3
46*d4f6e58fSAlex Bennée cmpu.w [r5],r3
47*d4f6e58fSAlex Bennée test_cc 0 1 0 0
48*d4f6e58fSAlex Bennée checkr3 ffff
49*d4f6e58fSAlex Bennée
50*d4f6e58fSAlex Bennée move.d 0xffff,r3
51*d4f6e58fSAlex Bennée cmps.b [r5],r3
52*d4f6e58fSAlex Bennée test_cc 0 0 0 1
53*d4f6e58fSAlex Bennée checkr3 ffff
54*d4f6e58fSAlex Bennée
55*d4f6e58fSAlex Bennée move.d 0xffff,r3
56*d4f6e58fSAlex Bennée cmps.w [r5],r3
57*d4f6e58fSAlex Bennée test_cc 0 0 0 1
58*d4f6e58fSAlex Bennée checkr3 ffff
59*d4f6e58fSAlex Bennée
60*d4f6e58fSAlex Bennée moveq -1,r3
61*d4f6e58fSAlex Bennée cmps.b [r5],r3
62*d4f6e58fSAlex Bennée test_cc 0 1 0 0
63*d4f6e58fSAlex Bennée addq 3,r5
64*d4f6e58fSAlex Bennée checkr3 ffffffff
65*d4f6e58fSAlex Bennée
66*d4f6e58fSAlex Bennée moveq -1,r3
67*d4f6e58fSAlex Bennée cmps.w [r5+],r3
68*d4f6e58fSAlex Bennée test_cc 1 0 0 0
69*d4f6e58fSAlex Bennée checkr3 ffffffff
70*d4f6e58fSAlex Bennée
71*d4f6e58fSAlex Bennée moveq -1,r3
72*d4f6e58fSAlex Bennée cmps.w [r5+],r3
73*d4f6e58fSAlex Bennée test_cc 0 1 0 0
74*d4f6e58fSAlex Bennée checkr3 ffffffff
75*d4f6e58fSAlex Bennée
76*d4f6e58fSAlex Bennée move.d 0x78134452,r3
77*d4f6e58fSAlex Bennée cmpu.b [r5],r3
78*d4f6e58fSAlex Bennée test_cc 0 0 0 0
79*d4f6e58fSAlex Bennée checkr3 78134452
80*d4f6e58fSAlex Bennée
81*d4f6e58fSAlex Bennée move.d 0x78134452,r3
82*d4f6e58fSAlex Bennée cmps.b [r5+],r3
83*d4f6e58fSAlex Bennée test_cc 0 0 0 1
84*d4f6e58fSAlex Bennée checkr3 78134452
85*d4f6e58fSAlex Bennée
86*d4f6e58fSAlex Bennée move.d 0x78134452,r3
87*d4f6e58fSAlex Bennée cmpu.w [r5],r3
88*d4f6e58fSAlex Bennée test_cc 0 0 0 0
89*d4f6e58fSAlex Bennée checkr3 78134452
90*d4f6e58fSAlex Bennée
91*d4f6e58fSAlex Bennée move.d 0x78134452,r3
92*d4f6e58fSAlex Bennée cmps.w [r5+],r3
93*d4f6e58fSAlex Bennée test_cc 0 0 0 1
94*d4f6e58fSAlex Bennée checkr3 78134452
95*d4f6e58fSAlex Bennée
96*d4f6e58fSAlex Bennée move.d 0x4452,r3
97*d4f6e58fSAlex Bennée cmps.w [r5+],r3
98*d4f6e58fSAlex Bennée test_cc 0 0 0 1
99*d4f6e58fSAlex Bennée checkr3 4452
100*d4f6e58fSAlex Bennée
101*d4f6e58fSAlex Bennée move.d 0x80000032,r3
102*d4f6e58fSAlex Bennée cmpu.w [r5+],r3
103*d4f6e58fSAlex Bennée test_cc 0 0 1 0
104*d4f6e58fSAlex Bennée checkr3 80000032
105*d4f6e58fSAlex Bennée
106*d4f6e58fSAlex Bennée quit
107