xref: /openbmc/qemu/tests/tcg/cris/bare/check_scc.s (revision 8482ff2e)
1*d4f6e58fSAlex Bennée# mach: crisv0 crisv3 crisv8 crisv10 crisv32
2*d4f6e58fSAlex Bennée# output: 1\n0\n1\n0\n1\n0\n1\n0\n0\n1\n1\n0\n1\n0\n1\n0\n1\n0\n0\n1\n0\n1\n1\n0\n1\n0\n0\n1\n1\n0\n1\n1\n0\n
3*d4f6e58fSAlex Bennée
4*d4f6e58fSAlex Bennée .include "testutils.inc"
5*d4f6e58fSAlex Bennée
6*d4f6e58fSAlex Bennée .macro lcheckr3 v
7*d4f6e58fSAlex Bennée	move	 $ccs, $r9
8*d4f6e58fSAlex Bennée	checkr3 \v
9*d4f6e58fSAlex Bennée	move	$r9, $ccs
10*d4f6e58fSAlex Bennée .endm
11*d4f6e58fSAlex Bennée
12*d4f6e58fSAlex Bennée start
13*d4f6e58fSAlex Bennée clearf nzvc
14*d4f6e58fSAlex Bennée scc r3
15*d4f6e58fSAlex Bennée lcheckr3 1
16*d4f6e58fSAlex Bennée scs r3
17*d4f6e58fSAlex Bennée lcheckr3 0
18*d4f6e58fSAlex Bennée sne r3
19*d4f6e58fSAlex Bennée lcheckr3 1
20*d4f6e58fSAlex Bennée seq r3
21*d4f6e58fSAlex Bennée lcheckr3 0
22*d4f6e58fSAlex Bennée svc r3
23*d4f6e58fSAlex Bennée lcheckr3 1
24*d4f6e58fSAlex Bennée svs r3
25*d4f6e58fSAlex Bennée lcheckr3 0
26*d4f6e58fSAlex Bennée spl r3
27*d4f6e58fSAlex Bennée lcheckr3 1
28*d4f6e58fSAlex Bennée smi r3
29*d4f6e58fSAlex Bennée lcheckr3 0
30*d4f6e58fSAlex Bennée sls r3
31*d4f6e58fSAlex Bennée lcheckr3 0
32*d4f6e58fSAlex Bennée shi r3
33*d4f6e58fSAlex Bennée lcheckr3 1
34*d4f6e58fSAlex Bennée sge r3
35*d4f6e58fSAlex Bennée lcheckr3 1
36*d4f6e58fSAlex Bennée slt r3
37*d4f6e58fSAlex Bennée lcheckr3 0
38*d4f6e58fSAlex Bennée sgt r3
39*d4f6e58fSAlex Bennée lcheckr3 1
40*d4f6e58fSAlex Bennée sle r3
41*d4f6e58fSAlex Bennée lcheckr3 0
42*d4f6e58fSAlex Bennée sa r3
43*d4f6e58fSAlex Bennée lcheckr3 1
44*d4f6e58fSAlex Bennée setf nzvc
45*d4f6e58fSAlex Bennée scc r3
46*d4f6e58fSAlex Bennée lcheckr3 0
47*d4f6e58fSAlex Bennée scs r3
48*d4f6e58fSAlex Bennée lcheckr3 1
49*d4f6e58fSAlex Bennée sne r3
50*d4f6e58fSAlex Bennée lcheckr3 0
51*d4f6e58fSAlex Bennée svc r3
52*d4f6e58fSAlex Bennée lcheckr3 0
53*d4f6e58fSAlex Bennée svs r3
54*d4f6e58fSAlex Bennée lcheckr3 1
55*d4f6e58fSAlex Bennée spl r3
56*d4f6e58fSAlex Bennée lcheckr3 0
57*d4f6e58fSAlex Bennée smi r3
58*d4f6e58fSAlex Bennée lcheckr3 1
59*d4f6e58fSAlex Bennée sls r3
60*d4f6e58fSAlex Bennée lcheckr3 1
61*d4f6e58fSAlex Bennée shi r3
62*d4f6e58fSAlex Bennée lcheckr3 0
63*d4f6e58fSAlex Bennée sge r3
64*d4f6e58fSAlex Bennée lcheckr3 1
65*d4f6e58fSAlex Bennée slt r3
66*d4f6e58fSAlex Bennée lcheckr3 0
67*d4f6e58fSAlex Bennée sgt r3
68*d4f6e58fSAlex Bennée lcheckr3 0
69*d4f6e58fSAlex Bennée sle r3
70*d4f6e58fSAlex Bennée lcheckr3 1
71*d4f6e58fSAlex Bennée sa r3
72*d4f6e58fSAlex Bennée lcheckr3 1
73*d4f6e58fSAlex Bennée clearf n
74*d4f6e58fSAlex Bennée sge r3
75*d4f6e58fSAlex Bennée lcheckr3 0
76*d4f6e58fSAlex Bennée slt r3
77*d4f6e58fSAlex Bennée lcheckr3 1
78*d4f6e58fSAlex Bennée
79*d4f6e58fSAlex Bennée .if 1 ;..asm.arch.cris.v32
80*d4f6e58fSAlex Bennée setf p
81*d4f6e58fSAlex Bennée ssb r3
82*d4f6e58fSAlex Bennée .else
83*d4f6e58fSAlex Bennée moveq 1,r3
84*d4f6e58fSAlex Bennée .endif
85*d4f6e58fSAlex Bennée lcheckr3 1
86*d4f6e58fSAlex Bennée
87*d4f6e58fSAlex Bennée .if 1 ;..asm.arch.cris.v32
88*d4f6e58fSAlex Bennée clearf p
89*d4f6e58fSAlex Bennée ssb r3
90*d4f6e58fSAlex Bennée .else
91*d4f6e58fSAlex Bennée moveq 0,r3
92*d4f6e58fSAlex Bennée .endif
93*d4f6e58fSAlex Bennée lcheckr3 0
94*d4f6e58fSAlex Bennée
95*d4f6e58fSAlex Bennée quit
96