1//Original:/testcases/core/c_logi2op_nbittst/c_logi2op_nbittst.dsp
2// Spec Reference: Logi2op !bittst
3# mach: bfin
4
5.include "testutils.inc"
6	start
7
8
9
10
11imm32 r0, 0x00000000;
12imm32 r1, 0x00000000;
13imm32 r2, 0x00000000;
14imm32 r3, 0x00000000;
15imm32 r4, 0x00000000;
16imm32 r5, 0x00000000;
17imm32 r6, 0x00000000;
18imm32 r7, 0x00000000;
19
20// bit(0-7) tst set clr toggle
21CC = ! BITTST( R0 , 0 ); /* cc = 0 */
22BITSET( R0 , 0 ); /* r0 = 0x00000001 */
23R1 = CC;
24CC = ! BITTST( R0 , 0 ); /* cc = 1 */
25R2 = CC;
26BITCLR( R0 , 0 ); /* r0 = 0x00000000 */
27CC = ! BITTST( R0 , 0 ); /* cc = 1 */
28R3 = CC;
29BITTGL( R0 , 0 ); /* r0 = 0x00000001 */
30CC = ! BITTST( R0 , 0 ); /* cc = 1 */
31R4 = CC;
32CHECKREG r0, 0x00000001;
33CHECKREG r1, 0x00000001;
34CHECKREG r2, 0x00000000;
35CHECKREG r3, 0x00000001;
36CHECKREG r4, 0x00000000;
37
38CC = ! BITTST( R1 , 1 ); /* cc = 0 */
39R2 = CC;
40BITSET( R1 , 1 ); /* r0 = 0x00000002 */
41CC = ! BITTST( R1 , 1 ); /* cc = 1 */
42R3 = CC;
43BITCLR( R1 , 1 ); /* r0 = 0x00000000 */
44CC = ! BITTST( R1 , 1 ); /* cc = 1 */
45R4 = CC;
46BITTGL( R1 , 1 ); /* r0 = 0x00000002 */
47CC = ! BITTST( R1 , 1 ); /* cc = 1 */
48R5 = CC;
49CHECKREG r1, 0x00000003;
50CHECKREG r2, 0x00000001;
51CHECKREG r3, 0x00000000;
52CHECKREG r4, 0x00000001;
53CHECKREG r5, 0x00000000;
54
55CC = ! BITTST( R2 , 2 ); /* cc = 0 */
56R3 = CC;
57BITSET( R2 , 2 ); /* r0 = 0x00000004 */
58CC = ! BITTST( R2 , 2 ); /* cc = 1 */
59R4 = CC;
60BITCLR( R2 , 2 ); /* r0 = 0x00000000 */
61CC = ! BITTST( R2 , 2 ); /* cc = 1 */
62R5 = CC;
63BITTGL( R2 , 2 ); /* r0 = 0x00000004 */
64CC = ! BITTST( R2 , 2 ); /* cc = 1 */
65R6 = CC;
66CHECKREG r2, 0x00000005;
67CHECKREG r3, 0x00000001;
68CHECKREG r4, 0x00000000;
69CHECKREG r5, 0x00000001;
70CHECKREG r6, 0x00000000;
71
72CC = ! BITTST( R3 , 3 ); /* cc = 0 */
73R4 = CC;
74BITSET( R3 , 3 ); /* r0 = 0x00000008 */
75CC = ! BITTST( R3 , 3 ); /* cc = 1 */
76R5 = CC;
77BITCLR( R3 , 3 ); /* r0 = 0x00000000 */
78CC = ! BITTST( R3 , 3 ); /* cc = 1 */
79R6 = CC;
80BITTGL( R3 , 3 ); /* r0 = 0x00000008 */
81CC = ! BITTST( R3 , 3 ); /* cc = 1 */
82R7 = CC;
83CHECKREG r0, 0x00000001;
84CHECKREG r1, 0x00000003;
85CHECKREG r2, 0x00000005;
86CHECKREG r3, 0x00000009;
87CHECKREG r4, 0x00000001;
88CHECKREG r5, 0x00000000;
89CHECKREG r6, 0x00000001;
90CHECKREG r7, 0x00000000;
91
92CC = ! BITTST( R4 , 4 ); /* cc = 0 */
93R5 = CC;
94BITSET( R4 , 4 ); /* r0 = 0x00000010 */
95CC = ! BITTST( R4 , 4 ); /* cc = 1 */
96R6 = CC;
97BITCLR( R4 , 4 ); /* r0 = 0x00000000 */
98CC = ! BITTST( R4 , 4 ); /* cc = 1 */
99R7 = CC;
100BITTGL( R4 , 4 ); /* r0 = 0x00000010 */
101CC = ! BITTST( R4 , 4 ); /* cc = 1 */
102R0 = CC;
103CHECKREG r4, 0x00000011;
104CHECKREG r5, 0x00000001;
105CHECKREG r6, 0x00000000;
106CHECKREG r7, 0x00000001;
107CHECKREG r0, 0x00000000;
108
109CC = ! BITTST( R5 , 5 ); /* cc = 0 */
110R6 = CC;
111BITSET( R5 , 5 ); /* r0 = 0x00000020 */
112CC = ! BITTST( R5 , 5 ); /* cc = 1 */
113R7 = CC;
114BITCLR( R5 , 5 ); /* r0 = 0x00000000 */
115CC = ! BITTST( R5 , 5 ); /* cc = 1 */
116R0 = CC;
117BITTGL( R5 , 5 ); /* r0 = 0x00000020 */
118CC = ! BITTST( R5 , 5 ); /* cc = 1 */
119R1 = CC;
120CHECKREG r5, 0x00000021;
121CHECKREG r6, 0x00000001;
122CHECKREG r7, 0x00000000;
123CHECKREG r0, 0x00000001;
124CHECKREG r1, 0x00000000;
125
126CC = ! BITTST( R6 , 6 ); /* cc = 0 */
127R7 = CC;
128BITSET( R6 , 6 ); /* r0 = 0x00000040 */
129CC = ! BITTST( R6 , 6 ); /* cc = 1 */
130R0 = CC;
131BITCLR( R6 , 6 ); /* r0 = 0x00000000 */
132CC = ! BITTST( R6 , 6 ); /* cc = 1 */
133R1 = CC;
134BITTGL( R6 , 6 ); /* r0 = 0x00000040 */
135CC = ! BITTST( R6 , 6 ); /* cc = 1 */
136R2 = CC;
137CHECKREG r6, 0x00000041;
138CHECKREG r7, 0x00000001;
139CHECKREG r0, 0x00000000;
140CHECKREG r1, 0x00000001;
141CHECKREG r2, 0x00000000;
142
143CC = ! BITTST( R7 , 7 ); /* cc = 0 */
144R0 = CC;
145BITSET( R7 , 7 ); /* r0 = 0x00000080 */
146CC = ! BITTST( R7 , 7 ); /* cc = 1 */
147R1 = CC;
148BITCLR( R7 , 7 ); /* r0 = 0x00000000 */
149CC = ! BITTST( R7 , 7 ); /* cc = 1 */
150R2 = CC;
151BITTGL( R7 , 7 ); /* r0 = 0x00000080 */
152CC = ! BITTST( R7 , 7 ); /* cc = 1 */
153R3 = CC;
154CHECKREG r0, 0x00000001;
155CHECKREG r1, 0x00000000;
156CHECKREG r2, 0x00000001;
157CHECKREG r3, 0x00000000;
158
159CHECKREG r4, 0x00000011;
160CHECKREG r5, 0x00000021;
161CHECKREG r6, 0x00000041;
162CHECKREG r7, 0x00000081;
163
164// bit(8-15) tst set clr toggle
165CC = ! BITTST( R0 , 8 ); /* cc = 0 */
166R1 = CC;
167BITSET( R0 , 8 ); /* r0 = 0x00000101 */
168CC = ! BITTST( R0 , 8 ); /* cc = 1 */
169R2 = CC;
170BITCLR( R0 , 8 ); /* r0 = 0x00000000 */
171CC = ! BITTST( R0 , 8 ); /* cc = 1 */
172R3 = CC;
173BITTGL( R0 , 8 ); /* r0 = 0x00000101 */
174CC = ! BITTST( R0 , 8 ); /* cc = 1 */
175R4 = CC;
176CHECKREG r0, 0x00000101;
177CHECKREG r1, 0x00000001;
178CHECKREG r2, 0x00000000;
179CHECKREG r3, 0x00000001;
180CHECKREG r4, 0x00000000;
181
182CC = ! BITTST( R1 , 9 ); /* cc = 0 */
183R2 = CC;
184BITSET( R1 , 9 ); /* r0 = 0x00000202 */
185CC = ! BITTST( R1 , 9 ); /* cc = 1 */
186R3 = CC;
187BITCLR( R1 , 9 ); /* r0 = 0x00000000 */
188CC = ! BITTST( R1 , 9 ); /* cc = 1 */
189R4 = CC;
190BITTGL( R1 , 9 ); /* r0 = 0x00000202 */
191CC = ! BITTST( R1 , 9 ); /* cc = 1 */
192R5 = CC;
193CHECKREG r1, 0x00000201;
194CHECKREG r2, 0x00000001;
195CHECKREG r3, 0x00000000;
196CHECKREG r4, 0x00000001;
197CHECKREG r5, 0x00000000;
198
199CC = ! BITTST( R2 , 10 ); /* cc = 0 */
200R3 = CC;
201BITSET( R2 , 10 ); /* r0 = 0x00000404 */
202CC = ! BITTST( R2 , 10 ); /* cc = 1 */
203R4 = CC;
204BITCLR( R2 , 10 ); /* r0 = 0x00000000 */
205CC = ! BITTST( R2 , 10 ); /* cc = 1 */
206R5 = CC;
207BITTGL( R2 , 10 ); /* r0 = 0x00000404 */
208CC = ! BITTST( R2 , 10 ); /* cc = 1 */
209R6 = CC;
210CHECKREG r2, 0x00000401;
211CHECKREG r3, 0x00000001;
212CHECKREG r4, 0x00000000;
213CHECKREG r5, 0x00000001;
214CHECKREG r6, 0x00000000;
215
216CC = ! BITTST( R3 , 11 ); /* cc = 0 */
217R4 = CC;
218BITSET( R3 , 11 ); /* r0 = 0x00000808 */
219CC = ! BITTST( R3 , 11 ); /* cc = 1 */
220R5 = CC;
221BITCLR( R3 , 11 ); /* r0 = 0x00000000 */
222CC = ! BITTST( R3 , 11 ); /* cc = 1 */
223R6 = CC;
224BITTGL( R3 , 11 ); /* r0 = 0x00000808 */
225CC = ! BITTST( R3 , 11 ); /* cc = 1 */
226R7 = CC;
227CHECKREG r3, 0x00000801;
228CHECKREG r4, 0x00000001;
229CHECKREG r5, 0x00000000;
230CHECKREG r6, 0x00000001;
231CHECKREG r7, 0x00000000;
232
233CC = ! BITTST( R4 , 12 ); /* cc = 0 */
234R5 = CC;
235BITSET( R4 , 12 ); /* r0 = 0x00001010 */
236CC = ! BITTST( R4 , 12 ); /* cc = 1 */
237R6 = CC;
238BITCLR( R4 , 12 ); /* r0 = 0x00000000 */
239CC = ! BITTST( R4 , 12 ); /* cc = 1 */
240R7 = CC;
241BITTGL( R4 , 12 ); /* r0 = 0x00001010 */
242CC = ! BITTST( R4 , 12 ); /* cc = 1 */
243R0 = CC;
244CHECKREG r4, 0x00001001;
245CHECKREG r5, 0x00000001;
246CHECKREG r6, 0x00000000;
247CHECKREG r7, 0x00000001;
248CHECKREG r0, 0x00000000;
249
250CC = ! BITTST( R5 , 13 ); /* cc = 0 */
251R6 = CC;
252BITSET( R5 , 13 ); /* r0 = 0x00002020 */
253CC = ! BITTST( R5 , 13 ); /* cc = 1 */
254R7 = CC;
255BITCLR( R5 , 13 ); /* r0 = 0x00000000 */
256CC = ! BITTST( R5 , 13 ); /* cc = 1 */
257R0 = CC;
258BITTGL( R5 , 13 ); /* r0 = 0x00002020 */
259CC = ! BITTST( R5 , 13 ); /* cc = 1 */
260R1 = CC;
261CHECKREG r5, 0x00002001;
262CHECKREG r6, 0x00000001;
263CHECKREG r7, 0x00000000;
264CHECKREG r0, 0x00000001;
265CHECKREG r1, 0x00000000;
266
267CC = ! BITTST( R6 , 14 ); /* cc = 0 */
268R7 = CC;
269BITSET( R6 , 14 ); /* r0 = 0x00004040 */
270CC = ! BITTST( R6 , 14 ); /* cc = 1 */
271R0 = CC;
272BITCLR( R6 , 14 ); /* r0 = 0x00000000 */
273CC = ! BITTST( R6 , 14 ); /* cc = 1 */
274R1 = CC;
275BITTGL( R6 , 14 ); /* r0 = 0x00004040 */
276CC = ! BITTST( R6 , 14 ); /* cc = 1 */
277R2 = CC;
278CHECKREG r6, 0x00004001;
279CHECKREG r7, 0x00000001;
280CHECKREG r0, 0x00000000;
281CHECKREG r1, 0x00000001;
282CHECKREG r2, 0x00000000;
283
284CC = ! BITTST( R7 , 15 ); /* cc = 0 */
285R0 = CC;
286BITSET( R7 , 15 ); /* r0 = 0x00008080 */
287CC = ! BITTST( R7 , 15 ); /* cc = 1 */
288R1 = CC;
289BITCLR( R7 , 15 ); /* r0 = 0x00000000 */
290CC = ! BITTST( R7 , 15 ); /* cc = 1 */
291R2 = CC;
292BITTGL( R7 , 15 ); /* r0 = 0x00008080 */
293CC = ! BITTST( R7 , 15 ); /* cc = 1 */
294R3 = CC;
295CHECKREG r0, 0x00000001;
296CHECKREG r1, 0x00000000;
297CHECKREG r2, 0x00000001;
298CHECKREG r3, 0x00000000;
299CHECKREG r4, 0x00001001;
300CHECKREG r5, 0x00002001;
301CHECKREG r6, 0x00004001;
302CHECKREG r7, 0x00008001;
303
304// bit(16-23) tst set clr toggle
305CC = ! BITTST( R0 , 16 ); /* cc = 0 */
306R1 = CC;
307BITSET( R0 , 16 ); /* r0 = 0x00000001 */
308CC = ! BITTST( R0 , 16 ); /* cc = 1 */
309R2 = CC;
310BITCLR( R0 , 16 ); /* r0 = 0x00000000 */
311CC = ! BITTST( R0 , 16 ); /* cc = 1 */
312R3 = CC;
313BITTGL( R0 , 16 ); /* r0 = 0x00000001 */
314CC = ! BITTST( R0 , 16 ); /* cc = 1 */
315R4 = CC;
316CHECKREG r0, 0x00010001;
317CHECKREG r1, 0x00000001;
318CHECKREG r2, 0x00000000;
319CHECKREG r3, 0x00000001;
320CHECKREG r4, 0x00000000;
321
322CC = ! BITTST( R1 , 17 ); /* cc = 0 */
323R2 = CC;
324BITSET( R1 , 17 ); /* r0 = 0x00000002 */
325CC = ! BITTST( R1 , 17 ); /* cc = 1 */
326R3 = CC;
327BITCLR( R1 , 17 ); /* r0 = 0x00000000 */
328CC = ! BITTST( R1 , 17 ); /* cc = 1 */
329R4 = CC;
330BITTGL( R1 , 17 ); /* r0 = 0x00000002 */
331CC = ! BITTST( R1 , 17 ); /* cc = 1 */
332R5 = CC;
333CHECKREG r1, 0x00020001;
334CHECKREG r2, 0x00000001;
335CHECKREG r3, 0x00000000;
336CHECKREG r4, 0x00000001;
337CHECKREG r5, 0x00000000;
338
339CC = ! BITTST( R2 , 18 ); /* cc = 0 */
340R3 = CC;
341BITSET( R2 , 18 ); /* r0 = 0x00000004 */
342CC = ! BITTST( R2 , 18 ); /* cc = 1 */
343R4 = CC;
344BITCLR( R2 , 18 ); /* r0 = 0x00000000 */
345CC = ! BITTST( R2 , 18 ); /* cc = 1 */
346R4 = CC;
347BITTGL( R2 , 18 ); /* r0 = 0x00000004 */
348CC = ! BITTST( R2 , 18 ); /* cc = 1 */
349R5 = CC;
350CHECKREG r2, 0x00040001;
351CHECKREG r3, 0x00000001;
352CHECKREG r4, 0x00000001;
353CHECKREG r5, 0x00000000;
354CHECKREG r6, 0x00004001;
355
356CC = ! BITTST( R3 , 19 ); /* cc = 0 */
357R4 = CC;
358BITSET( R3 , 19 ); /* r0 = 0x00000008 */
359CC = ! BITTST( R3 , 19 ); /* cc = 1 */
360R5 = CC;
361BITCLR( R3 , 19 ); /* r0 = 0x00000000 */
362CC = ! BITTST( R3 , 19 ); /* cc = 1 */
363R6 = CC;
364BITTGL( R3 , 19 ); /* r0 = 0x00000008 */
365CC = ! BITTST( R3 , 19 ); /* cc = 1 */
366R7 = CC;
367CHECKREG r3, 0x00080001;
368CHECKREG r4, 0x00000001;
369CHECKREG r5, 0x00000000;
370CHECKREG r6, 0x00000001;
371CHECKREG r7, 0x00000000;
372
373CC = ! BITTST( R4 , 20 ); /* cc = 0 */
374R5 = CC;
375BITSET( R4 , 20 ); /* r0 = 0x00000010 */
376CC = ! BITTST( R4 , 20 ); /* cc = 1 */
377R6 = CC;
378BITCLR( R4 , 20 ); /* r0 = 0x00000000 */
379CC = ! BITTST( R4 , 20 ); /* cc = 1 */
380R7 = CC;
381BITTGL( R4 , 20 ); /* r0 = 0x00000010 */
382CC = ! BITTST( R4 , 20 ); /* cc = 1 */
383R0 = CC;
384CHECKREG r4, 0x00100001;
385CHECKREG r5, 0x00000001;
386CHECKREG r6, 0x00000000;
387CHECKREG r7, 0x00000001;
388CHECKREG r0, 0x00000000;
389
390CC = ! BITTST( R5 , 21 ); /* cc = 0 */
391R6 = CC;
392BITSET( R5 , 21 ); /* r0 = 0x00000020 */
393CC = ! BITTST( R5 , 21 ); /* cc = 1 */
394R7 = CC;
395BITCLR( R5 , 21 ); /* r0 = 0x00000000 */
396CC = ! BITTST( R5 , 21 ); /* cc = 1 */
397R0 = CC;
398BITTGL( R5 , 21 ); /* r0 = 0x00000020 */
399CC = ! BITTST( R5 , 21 ); /* cc = 1 */
400R1 = CC;
401CHECKREG r5, 0x00200001;
402CHECKREG r6, 0x00000001;
403CHECKREG r7, 0x00000000;
404CHECKREG r0, 0x00000001;
405CHECKREG r1, 0x00000000;
406
407CC = ! BITTST( R6 , 22 ); /* cc = 0 */
408R7 = CC;
409BITSET( R6 , 22 ); /* r0 = 0x00000040 */
410CC = ! BITTST( R6 , 22 ); /* cc = 1 */
411R0 = CC;
412BITCLR( R6 , 22 ); /* r0 = 0x00000000 */
413CC = ! BITTST( R6 , 22 ); /* cc = 1 */
414R1 = CC;
415BITTGL( R6 , 22 ); /* r0 = 0x00000040 */
416CC = ! BITTST( R6 , 22 ); /* cc = 1 */
417R2 = CC;
418CHECKREG r6, 0x00400001;
419CHECKREG r7, 0x00000001;
420CHECKREG r0, 0x00000000;
421CHECKREG r1, 0x00000001;
422CHECKREG r2, 0x00000000;
423
424CC = ! BITTST( R7 , 23 ); /* cc = 0 */
425R0 = CC;
426BITSET( R7 , 23 ); /* r0 = 0x00000080 */
427CC = ! BITTST( R7 , 23 ); /* cc = 1 */
428R1 = CC;
429BITCLR( R7 , 23 ); /* r0 = 0x00000000 */
430CC = ! BITTST( R7 , 23 ); /* cc = 1 */
431R2 = CC;
432BITTGL( R7 , 23 ); /* r0 = 0x00000080 */
433CC = ! BITTST( R7 , 23 ); /* cc = 1 */
434R3 = CC;
435CHECKREG r0, 0x00000001;
436CHECKREG r1, 0x00000000;
437CHECKREG r2, 0x00000001;
438CHECKREG r3, 0x00000000;
439CHECKREG r4, 0x00100001;
440CHECKREG r5, 0x00200001;
441CHECKREG r6, 0x00400001;
442CHECKREG r7, 0x00800001;
443
444// bit(24-31) tst set clr toggle
445CC = ! BITTST( R0 , 24 ); /* cc = 0 */
446R1 = CC;
447BITSET( R0 , 24 ); /* r0 = 0x00000101 */
448CC = ! BITTST( R0 , 24 ); /* cc = 1 */
449R2 = CC;
450BITCLR( R0 , 24 ); /* r0 = 0x00000000 */
451CC = ! BITTST( R0 , 24 ); /* cc = 1 */
452R3 = CC;
453BITTGL( R0 , 24 ); /* r0 = 0x00000101 */
454CC = ! BITTST( R0 , 24 ); /* cc = 1 */
455R4 = CC;
456CHECKREG r0, 0x01000001;
457CHECKREG r1, 0x00000001;
458CHECKREG r2, 0x00000000;
459CHECKREG r3, 0x00000001;
460CHECKREG r4, 0x00000000;
461
462CC = ! BITTST( R1 , 25 ); /* cc = 0 */
463R2 = CC;
464BITSET( R1 , 25 ); /* r0 = 0x00000202 */
465CC = ! BITTST( R1 , 25 ); /* cc = 1 */
466R3 = CC;
467BITCLR( R1 , 25 ); /* r0 = 0x00000000 */
468CC = ! BITTST( R1 , 25 ); /* cc = 1 */
469R4 = CC;
470BITTGL( R1 , 25 ); /* r0 = 0x00000202 */
471CC = ! BITTST( R1 , 25 ); /* cc = 1 */
472R5 = CC;
473CHECKREG r1, 0x02000001;
474CHECKREG r2, 0x00000001;
475CHECKREG r3, 0x00000000;
476CHECKREG r4, 0x00000001;
477CHECKREG r5, 0x00000000;
478
479CC = ! BITTST( R2 , 26 ); /* cc = 0 */
480R3 = CC;
481BITSET( R2 , 26 ); /* r0 = 0x00000404 */
482CC = ! BITTST( R2 , 26 ); /* cc = 1 */
483R4 = CC;
484BITCLR( R2 , 26 ); /* r0 = 0x00000000 */
485CC = ! BITTST( R2 , 26 ); /* cc = 1 */
486R5 = CC;
487BITTGL( R2 , 26 ); /* r0 = 0x00000404 */
488CC = ! BITTST( R2 , 26 ); /* cc = 1 */
489R6 = CC;
490CHECKREG r2, 0x04000001;
491CHECKREG r3, 0x00000001;
492CHECKREG r4, 0x00000000;
493CHECKREG r5, 0x00000001;
494CHECKREG r6, 0x00000000;
495
496CC = ! BITTST( R3 , 27 ); /* cc = 0 */
497R4 = CC;
498BITSET( R3 , 27 ); /* r0 = 0x00000808 */
499CC = ! BITTST( R3 , 27 ); /* cc = 1 */
500R5 = CC;
501BITCLR( R3 , 27 ); /* r0 = 0x00000000 */
502CC = ! BITTST( R3 , 27 ); /* cc = 1 */
503R6 = CC;
504BITTGL( R3 , 27 ); /* r0 = 0x00000808 */
505CC = ! BITTST( R3 , 27 ); /* cc = 1 */
506R7 = CC;
507CHECKREG r3, 0x08000001;
508CHECKREG r4, 0x00000001;
509CHECKREG r5, 0x00000000;
510CHECKREG r6, 0x00000001;
511CHECKREG r7, 0x00000000;
512
513CC = ! BITTST( R4 , 28 ); /* cc = 0 */
514R5 = CC;
515BITSET( R4 , 28 ); /* r0 = 0x00001010 */
516CC = ! BITTST( R4 , 28 ); /* cc = 1 */
517R6 = CC;
518BITCLR( R4 , 28 ); /* r0 = 0x00000000 */
519CC = ! BITTST( R4 , 28 ); /* cc = 1 */
520R7 = CC;
521BITTGL( R4 , 28 ); /* r0 = 0x00001010 */
522CC = ! BITTST( R4 , 28 ); /* cc = 1 */
523R0 = CC;
524CHECKREG r4, 0x10000001;
525CHECKREG r5, 0x00000001;
526CHECKREG r6, 0x00000000;
527CHECKREG r7, 0x00000001;
528CHECKREG r0, 0x00000000;
529
530CC = ! BITTST( R5 , 29 ); /* cc = 0 */
531R6 = CC;
532BITSET( R5 , 29 ); /* r0 = 0x00002020 */
533CC = ! BITTST( R5 , 29 ); /* cc = 1 */
534R7 = CC;
535BITCLR( R5 , 29 ); /* r0 = 0x00000000 */
536CC = ! BITTST( R5 , 29 ); /* cc = 1 */
537R0 = CC;
538BITTGL( R5 , 29 ); /* r0 = 0x00002020 */
539CC = ! BITTST( R5 , 29 ); /* cc = 1 */
540R1 = CC;
541CHECKREG r5, 0x20000001;
542CHECKREG r6, 0x00000001;
543CHECKREG r7, 0x00000000;
544CHECKREG r0, 0x00000001;
545CHECKREG r1, 0x00000000;
546
547CC = ! BITTST( R6 , 30 ); /* cc = 0 */
548R7 = CC;
549BITSET( R6 , 30 ); /* r0 = 0x00004040 */
550CC = ! BITTST( R6 , 30 ); /* cc = 1 */
551R0 = CC;
552BITCLR( R6 , 30 ); /* r0 = 0x00000000 */
553CC = ! BITTST( R6 , 30 ); /* cc = 1 */
554R1 = CC;
555BITTGL( R6 , 30 ); /* r0 = 0x00004040 */
556CC = ! BITTST( R6 , 30 ); /* cc = 1 */
557R2 = CC;
558CHECKREG r6, 0x40000001;
559CHECKREG r7, 0x00000001;
560CHECKREG r0, 0x00000000;
561CHECKREG r1, 0x00000001;
562CHECKREG r2, 0x00000000;
563
564CC = ! BITTST( R7 , 31 ); /* cc = 0 */
565R0 = CC;
566BITSET( R7 , 31 ); /* r0 = 0x00008080 */
567CC = ! BITTST( R7 , 31 ); /* cc = 1 */
568R1 = CC;
569BITCLR( R7 , 31 ); /* r0 = 0x00000000 */
570CC = ! BITTST( R7 , 31 ); /* cc = 1 */
571R2 = CC;
572BITTGL( R7 , 31 ); /* r0 = 0x80808080 */
573CC = ! BITTST( R7 , 31 ); /* cc = 1 */
574R3 = CC;
575CHECKREG r0, 0x00000001;
576CHECKREG r1, 0x00000000;
577CHECKREG r2, 0x00000001;
578CHECKREG r3, 0x00000000;
579CHECKREG r4, 0x10000001;
580CHECKREG r5, 0x20000001;
581CHECKREG r6, 0x40000001;
582CHECKREG r7, 0x80000001;
583
584pass
585