1//Original:/testcases/core/c_logi2op_bitset/c_logi2op_bitset.dsp
2// Spec Reference: Logi2op
3# mach: bfin
4
5.include "testutils.inc"
6	start
7
8
9
10imm32 r0, 0x00000000;
11imm32 r1, 0x00000000;
12imm32 r2, 0x00000000;
13imm32 r3, 0x00000000;
14imm32 r4, 0x00000000;
15imm32 r5, 0x00000000;
16imm32 r6, 0x00000000;
17imm32 r7, 0x00000000;
18
19// bit set
20BITSET( R0 , 0 ); /* r0 = 0x00000001 */
21BITSET( R1 , 1 ); /* r1 = 0x00000002 */
22BITSET( R2 , 2 ); /* r2 = 0x00000004 */
23BITSET( R3 , 3 ); /* r3 = 0x00000008 */
24BITSET( R4 , 4 ); /* r4 = 0x00000010 */
25BITSET( R5 , 5 ); /* r5 = 0x00000020 */
26BITSET( R6 , 6 ); /* r6 = 0x00000040 */
27BITSET( R7 , 7 ); /* r7 = 0x00000080 */
28CHECKREG r0, 0x00000001;
29CHECKREG r1, 0x00000002;
30CHECKREG r2, 0x00000004;
31CHECKREG r3, 0x00000008;
32CHECKREG r4, 0x00000010;
33CHECKREG r5, 0x00000020;
34CHECKREG r6, 0x00000040;
35CHECKREG r7, 0x00000080;
36
37// bit set
38BITSET( R0 , 8 ); /* r0 = 0x00000100 */
39BITSET( R1 , 9 ); /* r1 = 0x00000200 */
40BITSET( R2 , 10 ); /* r2 = 0x00000400 */
41BITSET( R3 , 11 ); /* r3 = 0x00000800 */
42BITSET( R4 , 12 ); /* r4 = 0x00001000 */
43BITSET( R5 , 13 ); /* r5 = 0x00002000 */
44BITSET( R6 , 14 ); /* r6 = 0x00004000 */
45BITSET( R7 , 15 ); /* r7 = 0x00008000 */
46CHECKREG r0, 0x00000101;
47CHECKREG r1, 0x00000202;
48CHECKREG r2, 0x00000404;
49CHECKREG r3, 0x00000808;
50CHECKREG r4, 0x00001010;
51CHECKREG r5, 0x00002020;
52CHECKREG r6, 0x00004040;
53CHECKREG r7, 0x00008080;
54
55// bit set
56BITSET( R0 , 16 ); /* r0 = 0x00000100 */
57BITSET( R1 , 17 ); /* r1 = 0x00000200 */
58BITSET( R2 , 18 ); /* r2 = 0x00000400 */
59BITSET( R3 , 19 ); /* r3 = 0x00000800 */
60BITSET( R4 , 20 ); /* r4 = 0x00001000 */
61BITSET( R5 , 21 ); /* r5 = 0x00002000 */
62BITSET( R6 , 22 ); /* r6 = 0x00004000 */
63BITSET( R7 , 23 ); /* r7 = 0x00008000 */
64CHECKREG r0, 0x00010101;
65CHECKREG r1, 0x00020202;
66CHECKREG r2, 0x00040404;
67CHECKREG r3, 0x00080808;
68CHECKREG r4, 0x00101010;
69CHECKREG r5, 0x00202020;
70CHECKREG r6, 0x00404040;
71CHECKREG r7, 0x00808080;
72
73// bit set
74BITSET( R0 , 24 ); /* r0 = 0x00000100 */
75BITSET( R1 , 25 ); /* r1 = 0x00000200 */
76BITSET( R2 , 26 ); /* r2 = 0x00000400 */
77BITSET( R3 , 27 ); /* r3 = 0x00000800 */
78BITSET( R4 , 28 ); /* r4 = 0x00001000 */
79BITSET( R5 , 29 ); /* r5 = 0x00002000 */
80BITSET( R6 , 30 ); /* r6 = 0x00004000 */
81BITSET( R7 , 31 ); /* r7 = 0x00008000 */
82CHECKREG r0, 0x01010101;
83CHECKREG r1, 0x02020202;
84CHECKREG r2, 0x04040404;
85CHECKREG r3, 0x08080808;
86CHECKREG r4, 0x10101010;
87CHECKREG r5, 0x20202020;
88CHECKREG r6, 0x40404040;
89CHECKREG r7, 0x80808080;
90
91
92pass
93