1 //Original:/testcases/core/c_logi2op_log_l_shft/c_logi2op_log_l_shft.dsp
2 // Spec Reference: Logi2op <<=
5 .include "testutils.inc"
11 // Logical <<= : negative data
21 R0 <<= 0; /* r0 = 0x81111111 */
22 R1 <<= 1; /* r1 = 0x40888888 */
23 R2 <<= 2; /* r2 = 0x20444444 */
24 R3 <<= 3; /* r3 = 0x10222222 */
25 R4 <<= 4; /* r4 = 0x08111111 */
26 R5 <<= 5; /* r5 = 0x04088888 */
27 R6 <<= 6; /* r6 = 0x02044444 */
28 R7 <<= 7; /* r7 = 0x01022222 */
29 CHECKREG r0, 0x81111111;
30 CHECKREG r1, 0x02222222;
31 CHECKREG r2, 0x04444444;
32 CHECKREG r3, 0x08888888;
33 CHECKREG r4, 0x11111110;
34 CHECKREG r5, 0x22222220;
35 CHECKREG r6, 0x44444440;
36 CHECKREG r7, 0x88888880;
55 CHECKREG r0, 0x22222200;
56 CHECKREG r1, 0x44444400;
57 CHECKREG r2, 0x88888800;
58 CHECKREG r3, 0x11111000;
59 CHECKREG r4, 0x22222000;
60 CHECKREG r5, 0x44444000;
61 CHECKREG r6, 0x88888000;
62 CHECKREG r7, 0x11110000;
81 CHECKREG r0, 0x33330000;
82 CHECKREG r1, 0x66660000;
83 CHECKREG r2, 0xCCCC0000;
84 CHECKREG r3, 0x99980000;
85 CHECKREG r4, 0x33300000;
86 CHECKREG r5, 0x66600000;
87 CHECKREG r6, 0xCCC00000;
88 CHECKREG r7, 0x99800000;
107 CHECKREG r0, 0x44000000;
108 CHECKREG r1, 0x88000000;
109 CHECKREG r2, 0x10000000;
110 CHECKREG r3, 0x20000000;
111 CHECKREG r4, 0x40000000;
112 CHECKREG r5, 0x80000000;
113 CHECKREG r6, 0x00000000;
114 CHECKREG r7, 0x00000000;
116 // Arithmetic <<= : positive data
118 imm32 r0, 0x41111111;
119 imm32 r1, 0x41111111;
120 imm32 r2, 0x41111111;
121 imm32 r3, 0x41111111;
122 imm32 r4, 0x41111111;
123 imm32 r5, 0x41111111;
124 imm32 r6, 0x41111111;
125 imm32 r7, 0x41111111;
134 CHECKREG r0, 0x41111111;
135 CHECKREG r1, 0x82222222;
136 CHECKREG r2, 0x04444444;
137 CHECKREG r3, 0x08888888;
138 CHECKREG r4, 0x11111110;
139 CHECKREG r5, 0x22222220;
140 CHECKREG r6, 0x44444440;
141 CHECKREG r7, 0x88888880;
144 imm32 r0, 0x42222222;
145 imm32 r1, 0x42222222;
146 imm32 r2, 0x42222222;
147 imm32 r3, 0x42222222;
148 imm32 r4, 0x42222222;
149 imm32 r5, 0x42222222;
150 imm32 r6, 0x42222222;
151 imm32 r7, 0x42222222;
160 CHECKREG r0, 0x22222200;
161 CHECKREG r1, 0x44444400;
162 CHECKREG r2, 0x88888800;
163 CHECKREG r3, 0x11111000;
164 CHECKREG r4, 0x22222000;
165 CHECKREG r5, 0x44444000;
166 CHECKREG r6, 0x88888000;
167 CHECKREG r7, 0x11110000;
170 imm32 r0, 0x43333333;
171 imm32 r1, 0x43333333;
172 imm32 r2, 0x43333333;
173 imm32 r3, 0x43333333;
174 imm32 r4, 0x43333333;
175 imm32 r5, 0x43333333;
176 imm32 r6, 0x43333333;
177 imm32 r7, 0x43333333;
186 CHECKREG r0, 0x33330000;
187 CHECKREG r1, 0x66660000;
188 CHECKREG r2, 0xCCCC0000;
189 CHECKREG r3, 0x99980000;
190 CHECKREG r4, 0x33300000;
191 CHECKREG r5, 0x66600000;
192 CHECKREG r6, 0xCCC00000;
193 CHECKREG r7, 0x99800000;
196 imm32 r0, 0x44444444;
197 imm32 r1, 0x44444444;
198 imm32 r2, 0x44444444;
199 imm32 r3, 0x44444444;
200 imm32 r4, 0x44444444;
201 imm32 r5, 0x44444444;
202 imm32 r6, 0x44444444;
203 imm32 r7, 0x44444444;
212 CHECKREG r0, 0x44000000;
213 CHECKREG r1, 0x88000000;
214 CHECKREG r2, 0x10000000;
215 CHECKREG r3, 0x20000000;
216 CHECKREG r4, 0x40000000;
217 CHECKREG r5, 0x80000000;
218 CHECKREG r6, 0x00000000;
219 CHECKREG r7, 0x00000000;