1 # frv testcase for cxorcc $GRi,$GRj,$GRk,$CCi,$cond
4 .include "testutils.inc"
10 set_spr_immed 0x1b1b,cccr
12 set_gr_limmed 0xaaaa,0xaaaa,gr7
13 set_gr_limmed 0x5555,0x5555,gr8
14 set_icc 0x07,0 ; Set mask opposite of expected
15 cxorcc gr7,gr8,gr8,cc0,1
17 test_gr_limmed 0xffff,0xffff,gr8
19 set_gr_immed 0x00000000,gr7
20 set_gr_immed 0x00000000,gr8
21 set_icc 0x08,0 ; Set mask opposite of expected
22 cxorcc gr7,gr8,gr8,cc0,1
24 test_gr_immed 0x00000000,gr8
26 set_gr_limmed 0xaaaa,0xaaaa,gr7
27 set_gr_limmed 0xaaaa,0xaaaa,gr8
28 set_icc 0x0b,0 ; Set mask opposite of expected
29 cxorcc gr7,gr8,gr8,cc4,1
31 test_gr_immed 0x00000000,gr8
33 set_gr_limmed 0xdead,0x0000,gr7
34 set_gr_limmed 0x0000,0xbeef,gr8
35 set_icc 0x05,0 ; Set mask opposite of expected
36 cxorcc gr7,gr8,gr8,cc4,1
38 test_gr_limmed 0xdead,0xbeef,gr8
40 set_gr_limmed 0xaaaa,0xaaaa,gr7
41 set_gr_limmed 0x5555,0x5555,gr8
42 set_icc 0x07,0 ; Set mask opposite of expected
43 cxorcc gr7,gr8,gr8,cc0,0
45 test_gr_limmed 0x5555,0x5555,gr8
47 set_gr_immed 0x00007fff,gr7
48 set_gr_immed 0x00000000,gr8
49 set_icc 0x08,0 ; Set mask opposite of expected
50 cxorcc gr7,gr8,gr8,cc0,0
52 test_gr_immed 0x00000000,gr8
54 set_gr_limmed 0xaaaa,0xaaaa,gr7
55 set_gr_limmed 0xaaaa,0xaaaa,gr8
56 set_icc 0x0b,0 ; Set mask opposite of expected
57 cxorcc gr7,gr8,gr8,cc4,0
59 test_gr_limmed 0xaaaa,0xaaaa,gr8
61 set_gr_limmed 0xdead,0x0000,gr7
62 set_gr_limmed 0x0000,0xbeef,gr8
63 set_icc 0x05,0 ; Set mask opposite of expected
64 cxorcc gr7,gr8,gr8,cc4,0
66 test_gr_limmed 0x0000,0xbeef,gr8
68 set_gr_limmed 0xaaaa,0xaaaa,gr7
69 set_gr_limmed 0x5555,0x5555,gr8
70 set_icc 0x07,1 ; Set mask opposite of expected
71 cxorcc gr7,gr8,gr8,cc1,0
73 test_gr_limmed 0xffff,0xffff,gr8
75 set_gr_immed 0x00000000,gr7
76 set_gr_immed 0x00000000,gr8
77 set_icc 0x08,1 ; Set mask opposite of expected
78 cxorcc gr7,gr8,gr8,cc1,0
80 test_gr_immed 0x00000000,gr8
82 set_gr_limmed 0xaaaa,0xaaaa,gr7
83 set_gr_limmed 0xaaaa,0xaaaa,gr8
84 set_icc 0x0b,1 ; Set mask opposite of expected
85 cxorcc gr7,gr8,gr8,cc5,0
87 test_gr_immed 0x00000000,gr8
89 set_gr_limmed 0xdead,0x0000,gr7
90 set_gr_limmed 0x0000,0xbeef,gr8
91 set_icc 0x05,1 ; Set mask opposite of expected
92 cxorcc gr7,gr8,gr8,cc5,0
94 test_gr_limmed 0xdead,0xbeef,gr8
96 set_gr_limmed 0xaaaa,0xaaaa,gr7
97 set_gr_limmed 0x5555,0x5555,gr8
98 set_icc 0x07,1 ; Set mask opposite of expected
99 cxorcc gr7,gr8,gr8,cc1,1
100 test_icc 0 1 1 1 icc1
101 test_gr_limmed 0x5555,0x5555,gr8
103 set_gr_immed 0x00007fff,gr7
104 set_gr_immed 0x00000000,gr8
105 set_icc 0x08,1 ; Set mask opposite of expected
106 cxorcc gr7,gr8,gr8,cc1,1
107 test_icc 1 0 0 0 icc1
108 test_gr_immed 0x00000000,gr8
110 set_gr_limmed 0xaaaa,0xaaaa,gr7
111 set_gr_limmed 0xaaaa,0xaaaa,gr8
112 set_icc 0x0b,1 ; Set mask opposite of expected
113 cxorcc gr7,gr8,gr8,cc5,1
114 test_icc 1 0 1 1 icc1
115 test_gr_limmed 0xaaaa,0xaaaa,gr8
117 set_gr_limmed 0xdead,0x0000,gr7
118 set_gr_limmed 0x0000,0xbeef,gr8
119 set_icc 0x05,1 ; Set mask opposite of expected
120 cxorcc gr7,gr8,gr8,cc5,1
121 test_icc 0 1 0 1 icc1
122 test_gr_limmed 0x0000,0xbeef,gr8
124 set_gr_limmed 0xaaaa,0xaaaa,gr7
125 set_gr_limmed 0x5555,0x5555,gr8
126 set_icc 0x07,2 ; Set mask opposite of expected
127 cxorcc gr7,gr8,gr8,cc2,0
128 test_icc 0 1 1 1 icc2
129 test_gr_limmed 0x5555,0x5555,gr8
131 set_gr_immed 0x00007fff,gr7
132 set_gr_immed 0x00000000,gr8
133 set_icc 0x08,2 ; Set mask opposite of expected
134 cxorcc gr7,gr8,gr8,cc2,0
135 test_icc 1 0 0 0 icc2
136 test_gr_immed 0x00000000,gr8
138 set_gr_limmed 0xaaaa,0xaaaa,gr7
139 set_gr_limmed 0xaaaa,0xaaaa,gr8
140 set_icc 0x0b,2 ; Set mask opposite of expected
141 cxorcc gr7,gr8,gr8,cc6,1
142 test_icc 1 0 1 1 icc2
143 test_gr_limmed 0xaaaa,0xaaaa,gr8
145 set_gr_limmed 0xdead,0x0000,gr7
146 set_gr_limmed 0x0000,0xbeef,gr8
147 set_icc 0x05,2 ; Set mask opposite of expected
148 cxorcc gr7,gr8,gr8,cc6,1
149 test_icc 0 1 0 1 icc2
150 test_gr_limmed 0x0000,0xbeef,gr8
152 set_gr_limmed 0xaaaa,0xaaaa,gr7
153 set_gr_limmed 0x5555,0x5555,gr8
154 set_icc 0x07,3 ; Set mask opposite of expected
155 cxorcc gr7,gr8,gr8,cc3,0
156 test_icc 0 1 1 1 icc3
157 test_gr_limmed 0x5555,0x5555,gr8
159 set_gr_immed 0x00007fff,gr7
160 set_gr_immed 0x00000000,gr8
161 set_icc 0x08,3 ; Set mask opposite of expected
162 cxorcc gr7,gr8,gr8,cc3,0
163 test_icc 1 0 0 0 icc3
164 test_gr_immed 0x00000000,gr8
166 set_gr_limmed 0xaaaa,0xaaaa,gr7
167 set_gr_limmed 0xaaaa,0xaaaa,gr8
168 set_icc 0x0b,3 ; Set mask opposite of expected
169 cxorcc gr7,gr8,gr8,cc7,1
170 test_icc 1 0 1 1 icc3
171 test_gr_limmed 0xaaaa,0xaaaa,gr8
173 set_gr_limmed 0xdead,0x0000,gr7
174 set_gr_limmed 0x0000,0xbeef,gr8
175 set_icc 0x05,3 ; Set mask opposite of expected
176 cxorcc gr7,gr8,gr8,cc7,1
177 test_icc 0 1 0 1 icc3
178 test_gr_limmed 0x0000,0xbeef,gr8