OSDN Git Service

modified: utilsrc/src/Admin/Makefile
[eos/others.git] / utilsrc / srcX86MAC64 / Admin / gdb-7.7.1 / sim / testsuite / sim / bfin / c_logi2op_alshft_mix.s
1 //Original:/testcases/core/c_logi2op_alshft_mix/c_logi2op_alshft_mix.dsp
2 // Spec Reference: Logi2op >>>=, >>=, <<=
3 # mach: bfin
4
5 .include "testutils.inc"
6         start
7
8 // Arithmetic >>>= : positive data
9 imm32 r0, 0x40000000;
10 imm32 r1, 0x01111111;
11 imm32 r2, 0x22222222;
12 imm32 r3, 0x33333333;
13 imm32 r4, 0x44444444;
14 imm32 r5, 0x55555555;
15 imm32 r6, 0x66666666;
16 imm32 r7, 0x77777777;
17 R0 >>>= 1; /* r0 = 0x20000000 */
18 R1 >>>= 1; /* r1 = 0x00888888 */
19 R2 >>>= 2; /* r2 = 0x08888888 */
20 R3 >>>= 8; /* r3 = 0x00333333 */
21 R4 >>>= 1; /* r4 = 0x22222222 */
22 R5 >>>= 27; /* r5 = 0x0000000a */
23 R6 >>>= 30; /* r5 = 0x00000001 */
24 R7 >>>= 31; /* r5 = 0x00000000 */
25 CHECKREG r0, 0x20000000;
26 CHECKREG r1, 0x00888888;
27 CHECKREG r2, 0x08888888;
28 CHECKREG r3, 0x00333333;
29 CHECKREG r4, 0x22222222;
30 CHECKREG r5, 0x0000000a;
31 CHECKREG r6, 0x00000001;
32 CHECKREG r7, 0x00000000;
33
34
35
36 // Arithmetic >>>= : negative data ,
37 imm32 r0, 0x80000000;
38 imm32 r1, 0x81111111;
39 imm32 r2, 0xa2222222;
40 imm32 r3, 0xb3333333;
41 imm32 r4, 0xc4444444;
42 imm32 r5, 0xd5555555;
43 imm32 r6, 0xe6666666;
44 imm32 r7, 0xf7777777;
45 R0 >>>= 1; /* r0 = 0xc0000000 */
46 R1 >>>= 1; /* r1 = 0xc0888888 */
47 R2 >>>= 2; /* r2 = 0xe8888888 */
48 R3 >>>= 8; /* r3 = 0x00333333 */
49 R4 >>>= 1; /* r4 = 0x22222222 */
50 R5 >>>= 27; /* r5 = 0x0000000a */
51 R6 >>>= 30; /* r5 = 0x00000001 */
52 R7 >>>= 31; /* r5 = 0x00000000 */
53 CHECKREG r0, 0xc0000000;
54 CHECKREG r1, 0xc0888888;
55 CHECKREG r2, 0xe8888888;
56 CHECKREG r3, 0xffb33333;
57 CHECKREG r4, 0xe2222222;
58 CHECKREG r5, 0xfffffffa;
59 CHECKREG r6, 0xffffffff;
60 CHECKREG r7, 0xffffffff;
61
62
63 // Logical >>>= : positive data
64 imm32 r0, 0x40000000;
65 imm32 r1, 0x01111111;
66 imm32 r2, 0x22222222;
67 imm32 r3, 0x33333333;
68 imm32 r4, 0x44444444;
69 imm32 r5, 0x55555555;
70 imm32 r6, 0x66666666;
71 imm32 r7, 0x77777777;
72 R0 >>= 1; /* r0 = 0x20000000 */
73 R1 >>= 1; /* r1 = 0x00888888 */
74 R2 >>= 2; /* r2 = 0x08888888 */
75 R3 >>= 8; /* r3 = 0x00333333 */
76 R4 >>= 1; /* r4 = 0x22222222 */
77 R5 >>= 27; /* r5 = 0x0000000a */
78 R6 >>= 30; /* r5 = 0x00000001 */
79 R7 >>= 31; /* r5 = 0x00000000 */
80 CHECKREG r0, 0x20000000;
81 CHECKREG r1, 0x00888888;
82 CHECKREG r2, 0x08888888;
83 CHECKREG r3, 0x00333333;
84 CHECKREG r4, 0x22222222;
85 CHECKREG r5, 0x0000000a;
86 CHECKREG r6, 0x00000001;
87 CHECKREG r7, 0x00000000;
88
89 // Logical >>= : negative data ,
90 imm32 r0, 0x80000000;
91 imm32 r1, 0x81111111;
92 imm32 r2, 0xa2222222;
93 imm32 r3, 0xb3333333;
94 imm32 r4, 0xc4444444;
95 imm32 r5, 0xd5555555;
96 imm32 r6, 0xe6666666;
97 imm32 r7, 0xf7777777;
98 R0 >>= 1; /* r0 = 0x40000000 */
99 R1 >>= 1; /* r1 = 0x40888888 */
100 R2 >>= 2; /* r2 = 0x48888888 */
101 R3 >>= 8; /* r3 = 0x40333333 */
102 R4 >>= 1; /* r4 = 0xa2222222 */
103 R5 >>= 27; /* r5 = 0x0000000a */
104 R6 >>= 30; /* r5 = 0x00000001 */
105 R7 >>= 31; /* r5 = 0x00000000 */
106 CHECKREG r0, 0x40000000;
107 CHECKREG r1, 0x40888888;
108 CHECKREG r2, 0x28888888;
109 CHECKREG r3, 0x00b33333;
110 CHECKREG r4, 0x62222222;
111 CHECKREG r5, 0x0000001a;
112 CHECKREG r6, 0x00000003;
113 CHECKREG r7, 0x00000001;
114
115
116 // Logical <<= : negative data ,
117 imm32 r0, 0x80000000;
118 imm32 r1, 0x81111111;
119 imm32 r2, 0xa2222222;
120 imm32 r3, 0xb3333333;
121 imm32 r4, 0xc4444444;
122 imm32 r5, 0xd5555555;
123 imm32 r6, 0xe6666666;
124 imm32 r7, 0xf7777777;
125 R0 <<= 1; /* r0 = 0x00000000 */
126 R1 <<= 1; /* r1 = 0x40888888 */
127 R2 <<= 2; /* r2 = 0x88888888 */
128 R3 <<= 8; /* r3 = 0x33333300 */
129 R4 <<= 1; /* r4 = 0x88888888 */
130 R5 <<= 27; /* r5 = 0xa8000000 */
131 R6 <<= 30; /* r5 = 0x80000000 */
132 R7 <<= 31; /* r5 = 0x80000000 */
133 CHECKREG r0, 0x00000000;
134 CHECKREG r1, 0x02222222;
135 CHECKREG r2, 0x88888888;
136 CHECKREG r3, 0x33333300;
137 CHECKREG r4, 0x88888888;
138 CHECKREG r5, 0xa8000000;
139 CHECKREG r6, 0x80000000;
140 CHECKREG r7, 0x80000000;
141  // hlt;
142
143 pass