Lines Matching refs:r0

144 	TESTINST2("mov  r0, r1", 1, r0, r1, 0);
145 TESTINST2("cpy r0, r1", 1, r0, r1, 0);
146 TESTINST2("mov r0, #0", 0, r0, r1, 0);
147 TESTINST2("mov r0, #1", 0, r0, r1, 0);
149 TESTINST2("movs r0, r1", 1, r0, r1, c);
150 TESTINST2("movs r0, r1", 0, r0, r1, c);
151 TESTINST2("movs r0, r1", 0x80000000, r0, r1, c);
152 TESTINST2("movs r0, #0", 0, r0, r1, c);
153 TESTINST2("movs r0, #1", 0, r0, r1, c);
157 TESTINST2("mvn r0, r1", 1, r0, r1, 0);
159 TESTINST2("mvns r0, r1", 1, r0, r1, c);
160 TESTINST2("mvns r0, r1", 0, r0, r1, c);
161 TESTINST2("mvns r0, r1", 0x80000000, r0, r1, c);
165 TESTINST3("adds r0, r1, r2", 0, 0, r0, r1, r2, 0);
166 TESTINST3("adds r0, r1, r2", 0, 1, r0, r1, r2, 0);
167 TESTINST3("adds r0, r1, r2", 1, 0, r0, r1, r2, 0);
168 TESTINST3("adds r0, r1, r2", 1, 1, r0, r1, r2, 0);
169 TESTINST3("adds r0, r1, r2", 0, -1, r0, r1, r2, 0);
170 TESTINST3("adds r0, r1, r2", 1, -1, r0, r1, r2, 0);
171 TESTINST3("adds r0, r1, r2", 0x7fffffff, 1, r0, r1, r2, 0);
172 TESTINST3("adds r0, r1, r2", 0x80000000, -1, r0, r1, r2, 0);
173 TESTINST3("adds r0, r1, r2", 0x80000000, 0, r0, r1, r2, 0);
176 TESTINST3("adcs r0, r1, r2", 0, 0, r0, r1, r2, 0);
177 TESTINST3("adcs r0, r1, r2", 0, 0, r0, r1, r2, 1);
180 TESTINST3("lsl r0, r1, r2", 0xffffffff, 0, r0, r1, r2, 0);
181 TESTINST3("lsl r0, r1, r2", 0xffffffff, 1, r0, r1, r2, 0);
182 TESTINST3("lsl r0, r1, r2", 0xffffffff, 2, r0, r1, r2, 0);
183 TESTINST3("lsl r0, r1, r2", 0xffffffff, 31, r0, r1, r2, 0);
184 TESTINST3("lsl r0, r1, r2", 0xffffffff, 32, r0, r1, r2, 0);
185 TESTINST3("lsl r0, r1, r2", 0xffffffff, 33, r0, r1, r2, 0);
186 TESTINST3("lsl r0, r1, r2", 0xffffffff, 63, r0, r1, r2, 0);
187 TESTINST3("lsl r0, r1, r2", 0xffffffff, 64, r0, r1, r2, 0);
188 TESTINST3("lsl r0, r1, r2", 0xffffffff, 255, r0, r1, r2, 0);
189 TESTINST3("lsl r0, r1, r2", 0xffffffff, 256, r0, r1, r2, 0);
191 TESTINST3("lsl r0, r1, r2", 0x1, 0, r0, r1, r2, 0);
192 TESTINST3("lsl r0, r1, r2", 0x1, 1, r0, r1, r2, 0);
193 TESTINST3("lsl r0, r1, r2", 0x1, 31, r0, r1, r2, 0);
194 TESTINST3("lsl r0, r1, r2", 0x2, 31, r0, r1, r2, 0);
198 TESTINST3("lsls r0, r1, r2", 0xffffffff, 0, r0, r1, r2, c);
199 TESTINST3("lsls r0, r1, r2", 0xffffffff, 1, r0, r1, r2, c);
200 TESTINST3("lsls r0, r1, r2", 0xffffffff, 2, r0, r1, r2, c);
201 TESTINST3("lsls r0, r1, r2", 0xffffffff, 31, r0, r1, r2, c);
202 TESTINST3("lsls r0, r1, r2", 0xffffffff, 32, r0, r1, r2, c);
203 TESTINST3("lsls r0, r1, r2", 0xffffffff, 33, r0, r1, r2, c);
204 TESTINST3("lsls r0, r1, r2", 0xffffffff, 63, r0, r1, r2, c);
205 TESTINST3("lsls r0, r1, r2", 0xffffffff, 64, r0, r1, r2, c);
206 TESTINST3("lsls r0, r1, r2", 0xffffffff, 255, r0, r1, r2, c);
207 TESTINST3("lsls r0, r1, r2", 0xffffffff, 256, r0, r1, r2, c);
208 TESTINST3("lsls r0, r1, r2", 0x1, 0, r0, r1, r2, c);
209 TESTINST3("lsls r0, r1, r2", 0x1, 1, r0, r1, r2, c);
210 TESTINST3("lsls r0, r1, r2", 0x1, 31, r0, r1, r2, c);
211 TESTINST3("lsls r0, r1, r2", 0x2, 31, r0, r1, r2, c);
216 TESTINST2("lsl r0, r1, #0", 0xffffffff, r0, r1, c);
217 TESTINST2("lsl r0, r1, #1", 0xffffffff, r0, r1, c);
218 TESTINST2("lsl r0, r1, #31", 0xffffffff, r0, r1, c);
219 TESTINST2("lsl r0, r1, #0", 0x1, r0, r1, c);
220 TESTINST2("lsl r0, r1, #1", 0x1, r0, r1, c);
221 TESTINST2("lsl r0, r1, #31", 0x1, r0, r1, c);
222 TESTINST2("lsl r0, r1, #31", 0x2, r0, r1, c);
227 TESTINST2("lsls r0, r1, #0", 0xffffffff, r0, r1, c);
228 TESTINST2("lsls r0, r1, #1", 0xffffffff, r0, r1, c);
229 TESTINST2("lsls r0, r1, #31", 0xffffffff, r0, r1, c);
230 TESTINST2("lsls r0, r1, #0", 0x1, r0, r1, c);
231 TESTINST2("lsls r0, r1, #1", 0x1, r0, r1, c);
232 TESTINST2("lsls r0, r1, #31", 0x1, r0, r1, c);
233 TESTINST2("lsls r0, r1, #31", 0x2, r0, r1, c);
237 TESTINST3("lsr r0, r1, r2", 0xffffffff, 0, r0, r1, r2, 0);
238 TESTINST3("lsr r0, r1, r2", 0xffffffff, 1, r0, r1, r2, 0);
239 TESTINST3("lsr r0, r1, r2", 0xffffffff, 2, r0, r1, r2, 0);
240 TESTINST3("lsr r0, r1, r2", 0xffffffff, 31, r0, r1, r2, 0);
241 TESTINST3("lsr r0, r1, r2", 0xffffffff, 32, r0, r1, r2, 0);
242 TESTINST3("lsr r0, r1, r2", 0xffffffff, 33, r0, r1, r2, 0);
243 TESTINST3("lsr r0, r1, r2", 0xffffffff, 63, r0, r1, r2, 0);
244 TESTINST3("lsr r0, r1, r2", 0xffffffff, 64, r0, r1, r2, 0);
245 TESTINST3("lsr r0, r1, r2", 0xffffffff, 255, r0, r1, r2, 0);
246 TESTINST3("lsr r0, r1, r2", 0xffffffff, 256, r0, r1, r2, 0);
250 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 0, r0, r1, r2, c);
251 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 1, r0, r1, r2, c);
252 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 2, r0, r1, r2, c);
253 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 31, r0, r1, r2, c);
254 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 32, r0, r1, r2, c);
255 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 33, r0, r1, r2, c);
256 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 63, r0, r1, r2, c);
257 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 64, r0, r1, r2, c);
258 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 255, r0, r1, r2, c);
262 TESTINST2("lsr r0, r1, #0", 0xffffffff, r0, r1, 0);
263 TESTINST2("lsr r0, r1, #1", 0xffffffff, r0, r1, 0);
264 TESTINST2("lsr r0, r1, #31", 0xffffffff, r0, r1, 0);
265 TESTINST2("lsr r0, r1, #32", 0xffffffff, r0, r1, 0);
266 TESTINST2("lsr r0, r1, #16", 0x00010000, r0, r1, 0);
267 TESTINST2("lsr r0, r1, #17", 0x00010000, r0, r1, 0);
268 TESTINST2("lsr r0, r1, #18", 0x00010000, r0, r1, 0);
272 TESTINST2("lsrs r0, r1, #0", 0xffffffff, r0, r1, c);
273 TESTINST2("lsrs r0, r1, #1", 0xffffffff, r0, r1, c);
274 TESTINST2("lsrs r0, r1, #31", 0xffffffff, r0, r1, c);
275 TESTINST2("lsrs r0, r1, #32", 0xffffffff, r0, r1, c);
276 TESTINST2("lsrs r0, r1, #16", 0x00010000, r0, r1, c);
277 TESTINST2("lsrs r0, r1, #17", 0x00010000, r0, r1, c);
278 TESTINST2("lsrs r0, r1, #18", 0x00010000, r0, r1, c);
283 TESTINST3("asr r0, r1, r2", 0xffffffff, 0, r0, r1, r2, c);
284 TESTINST3("asr r0, r1, r2", 0xffffffff, 1, r0, r1, r2, c);
285 TESTINST3("asr r0, r1, r2", 0xffffffff, 2, r0, r1, r2, c);
286 TESTINST3("asr r0, r1, r2", 0xffffffff, 31, r0, r1, r2, c);
287 TESTINST3("asr r0, r1, r2", 0xffffffff, 32, r0, r1, r2, c);
288 TESTINST3("asr r0, r1, r2", 0xffffffff, 33, r0, r1, r2, c);
289 TESTINST3("asr r0, r1, r2", 0xffffffff, 63, r0, r1, r2, c);
290 TESTINST3("asr r0, r1, r2", 0xffffffff, 64, r0, r1, r2, c);
291 TESTINST3("asr r0, r1, r2", 0xffffffff, 255, r0, r1, r2, c);
292 TESTINST3("asr r0, r1, r2", 0xffffffff, 256, r0, r1, r2, c);
293 TESTINST3("asr r0, r1, r2", 0x7fffffff, 0, r0, r1, r2, c);
294 TESTINST3("asr r0, r1, r2", 0x7fffffff, 1, r0, r1, r2, c);
295 TESTINST3("asr r0, r1, r2", 0x7fffffff, 2, r0, r1, r2, c);
296 TESTINST3("asr r0, r1, r2", 0x7fffffff, 31, r0, r1, r2, c);
297 TESTINST3("asr r0, r1, r2", 0x7fffffff, 32, r0, r1, r2, c);
298 TESTINST3("asr r0, r1, r2", 0x7fffffff, 33, r0, r1, r2, c);
299 TESTINST3("asr r0, r1, r2", 0x7fffffff, 63, r0, r1, r2, c);
300 TESTINST3("asr r0, r1, r2", 0x7fffffff, 64, r0, r1, r2, c);
301 TESTINST3("asr r0, r1, r2", 0x7fffffff, 255, r0, r1, r2, c);
302 TESTINST3("asr r0, r1, r2", 0x7fffffff, 256, r0, r1, r2, c);
307 TESTINST3("asrs r0, r1, r2", 0xffffffff, 0, r0, r1, r2, c);
308 TESTINST3("asrs r0, r1, r2", 0xffffffff, 1, r0, r1, r2, c);
309 TESTINST3("asrs r0, r1, r2", 0xffffffff, 2, r0, r1, r2, c);
310 TESTINST3("asrs r0, r1, r2", 0xffffffff, 31, r0, r1, r2, c);
311 TESTINST3("asrs r0, r1, r2", 0xffffffff, 32, r0, r1, r2, c);
312 TESTINST3("asrs r0, r1, r2", 0xffffffff, 33, r0, r1, r2, c);
313 TESTINST3("asrs r0, r1, r2", 0xffffffff, 63, r0, r1, r2, c);
314 TESTINST3("asrs r0, r1, r2", 0xffffffff, 64, r0, r1, r2, c);
315 TESTINST3("asrs r0, r1, r2", 0xffffffff, 255, r0, r1, r2, c);
316 TESTINST3("asrs r0, r1, r2", 0xffffffff, 256, r0, r1, r2, c);
317 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 0, r0, r1, r2, c);
318 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 1, r0, r1, r2, c);
319 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 2, r0, r1, r2, c);
320 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 31, r0, r1, r2, c);
321 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 32, r0, r1, r2, c);
322 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 33, r0, r1, r2, c);
323 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 63, r0, r1, r2, c);
324 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 64, r0, r1, r2, c);
325 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 255, r0, r1, r2, c);
326 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 256, r0, r1, r2, c);
330 TESTINST3("asrs r0, r1, r2", 0x8, 0, r0, r1, r2, c);
331 TESTINST3("asrs r0, r1, r2", 0x8, 1, r0, r1, r2, c);
332 TESTINST3("asrs r0, r1, r2", 0x8, 2, r0, r1, r2, c);
333 TESTINST3("asrs r0, r1, r2", 0x8, 3, r0, r1, r2, c);
334 TESTINST3("asrs r0, r1, r2", 0x8, 4, r0, r1, r2, c);
335 TESTINST3("asrs r0, r1, r2", 0x8, 5, r0, r1, r2, c);
338 TESTINST3("asrs r0, r1, r2", 0x80000001, 1, r0, r1, r2, 0);
339 TESTINST3("asrs r0, r1, r2", 0x80000001, 2, r0, r1, r2, 0);
342 TESTINST2("asr r0, r1, #0", 0xffffffff, r0, r1, 0);
343 TESTINST2("asr r0, r1, #1", 0xffffffff, r0, r1, 0);
344 TESTINST2("asr r0, r1, #31", 0xffffffff, r0, r1, 0);
345 TESTINST2("asr r0, r1, #32", 0xffffffff, r0, r1, 0);
346 TESTINST2("asr r0, r1, #0", 0x7fffffff, r0, r1, 0);
347 TESTINST2("asr r0, r1, #1", 0x7fffffff, r0, r1, 0);
348 TESTINST2("asr r0, r1, #31", 0x7fffffff, r0, r1, 0);
349 TESTINST2("asr r0, r1, #32", 0x7fffffff, r0, r1, 0);
350 TESTINST2("asr r0, r1, #16", 0x00010000, r0, r1, 0);
351 TESTINST2("asr r0, r1, #17", 0x00010000, r0, r1, 0);
352 TESTINST2("asr r0, r1, #18", 0x00010000, r0, r1, 0);
356 TESTINST2("asrs r0, r1, #0", 0xffffffff, r0, r1, c);
357 TESTINST2("asrs r0, r1, #1", 0xffffffff, r0, r1, c);
358 TESTINST2("asrs r0, r1, #31", 0xffffffff, r0, r1, c);
359 TESTINST2("asrs r0, r1, #32", 0xffffffff, r0, r1, c);
360 TESTINST2("asrs r0, r1, #0", 0x7fffffff, r0, r1, c);
361 TESTINST2("asrs r0, r1, #1", 0x7fffffff, r0, r1, c);
362 TESTINST2("asrs r0, r1, #31", 0x7fffffff, r0, r1, c);
363 TESTINST2("asrs r0, r1, #32", 0x7fffffff, r0, r1, c);
364 TESTINST2("asrs r0, r1, #16", 0x00010000, r0, r1, c);
365 TESTINST2("asrs r0, r1, #17", 0x00010000, r0, r1, c);
366 TESTINST2("asrs r0, r1, #18", 0x00010000, r0, r1, c);
371 TESTINST3("ror r0, r1, r2", 0x00088000, 0, r0, r1, r2, c);
372 TESTINST3("ror r0, r1, r2", 0x80088000, 1, r0, r1, r2, c);
373 TESTINST3("ror r0, r1, r2", 0x00088000, 1, r0, r1, r2, c);
374 TESTINST3("ror r0, r1, r2", 0x00088000, 2, r0, r1, r2, c);
375 TESTINST3("ror r0, r1, r2", 0x00088000, 31, r0, r1, r2, c);
376 TESTINST3("ror r0, r1, r2", 0x00088000, 32, r0, r1, r2, c);
377 TESTINST3("ror r0, r1, r2", 0x00088000, 33, r0, r1, r2, c);
378 TESTINST3("ror r0, r1, r2", 0x00088000, 63, r0, r1, r2, c);
379 TESTINST3("ror r0, r1, r2", 0x00088000, 64, r0, r1, r2, c);
380 TESTINST3("ror r0, r1, r2", 0x00088000, 255, r0, r1, r2, c);
381 TESTINST3("ror r0, r1, r2", 0x00088000, 256, r0, r1, r2, c);
382 TESTINST3("ror r0, r1, r2", 0x80088000, 256, r0, r1, r2, c);
383 TESTINST3("ror r0, r1, r2", 0x00088000, 257, r0, r1, r2, c);
388 TESTINST3("rors r0, r1, r2", 0x00088000, 0, r0, r1, r2, c);
389 TESTINST3("rors r0, r1, r2", 0x80088000, 0, r0, r1, r2, c);
390 TESTINST3("rors r0, r1, r2", 0x00088000, 1, r0, r1, r2, c);
391 TESTINST3("rors r0, r1, r2", 0x00088000, 2, r0, r1, r2, c);
392 TESTINST3("rors r0, r1, r2", 0x00088000, 31, r0, r1, r2, c);
393 TESTINST3("rors r0, r1, r2", 0x00088000, 32, r0, r1, r2, c);
394 TESTINST3("rors r0, r1, r2", 0x00088000, 33, r0, r1, r2, c);
395 TESTINST3("rors r0, r1, r2", 0x00088000, 63, r0, r1, r2, c);
396 TESTINST3("rors r0, r1, r2", 0x00088000, 64, r0, r1, r2, c);
397 TESTINST3("rors r0, r1, r2", 0x00088000, 255, r0, r1, r2, c);
398 TESTINST3("rors r0, r1, r2", 0x00088000, 256, r0, r1, r2, c);
399 TESTINST3("rors r0, r1, r2", 0x80088000, 256, r0, r1, r2, c);
400 TESTINST3("rors r0, r1, r2", 0x00088000, 257, r0, r1, r2, c);
405 TESTINST2("ror r0, r1, #0", 0x00088000, r0, r1, c);
406 TESTINST2("ror r0, r1, #1", 0x00088000, r0, r1, c);
407 TESTINST2("ror r0, r1, #31", 0x00088000, r0, r1, c);
408 TESTINST2("ror r0, r1, #16", 0x00010000, r0, r1, c);
409 TESTINST2("ror r0, r1, #17", 0x00010000, r0, r1, c);
410 TESTINST2("ror r0, r1, #18", 0x00010000, r0, r1, c);
415 TESTINST2("rors r0, r1, #0", 0x00088000, r0, r1, c);
416 TESTINST2("rors r0, r1, #1", 0x00088000, r0, r1, c);
417 TESTINST2("rors r0, r1, #31", 0x00088000, r0, r1, c);
418 TESTINST2("rors r0, r1, #16", 0x00010000, r0, r1, c);
419 TESTINST2("rors r0, r1, #17", 0x00010000, r0, r1, c);
420 TESTINST2("rors r0, r1, #18", 0x00010000, r0, r1, c);
425 TESTINST4("add r0, r1, r2, lsl r3", 0, 0xffffffff, 0, r0, r1, r2, r3, c);
426 TESTINST4("add r0, r1, r2, lsl r3", 0, 0xffffffff, 1, r0, r1, r2, r3, c);
427 TESTINST4("add r0, r1, r2, lsl r3", 0, 0xffffffff, 31, r0, r1, r2, r3, c);
428 TESTINST4("add r0, r1, r2, lsl r3", 0, 0xffffffff, 32, r0, r1, r2, r3, c);
429 TESTINST4("add r0, r1, r2, lsl r3", 0, 0xffffffff, 255, r0, r1, r2, r3, c);
430 TESTINST4("add r0, r1, r2, lsl r3", 0, 0xffffffff, 256, r0, r1, r2, r3, c);
431 TESTINST4("add r0, r1, r2, lsr r3", 0, 0xffffffff, 0, r0, r1, r2, r3, c);
432 TESTINST4("add r0, r1, r2, lsr r3", 0, 0xffffffff, 1, r0, r1, r2, r3, c);
433 TESTINST4("add r0, r1, r2, lsr r3", 0, 0xffffffff, 31, r0, r1, r2, r3, c);
434 TESTINST4("add r0, r1, r2, lsr r3", 0, 0xffffffff, 32, r0, r1, r2, r3, c);
435 TESTINST4("add r0, r1, r2, lsr r3", 0, 0xffffffff, 255, r0, r1, r2, r3, c);
436 TESTINST4("add r0, r1, r2, lsr r3", 0, 0xffffffff, 256, r0, r1, r2, r3, c);
437 TESTINST4("add r0, r1, r2, asr r3", 0, 0x7fffffff, 0, r0, r1, r2, r3, c);
438 TESTINST4("add r0, r1, r2, asr r3", 0, 0x7fffffff, 1, r0, r1, r2, r3, c);
439 TESTINST4("add r0, r1, r2, asr r3", 0, 0x7fffffff, 31, r0, r1, r2, r3, c);
440 TESTINST4("add r0, r1, r2, asr r3", 0, 0x7fffffff, 32, r0, r1, r2, r3, c);
441 TESTINST4("add r0, r1, r2, asr r3", 0, 0x7fffffff, 255, r0, r1, r2, r3, c);
442 TESTINST4("add r0, r1, r2, asr r3", 0, 0x7fffffff, 256, r0, r1, r2, r3, c);
443 TESTINST4("add r0, r1, r2, lsr r3", 0, 0xffffffff, 256, r0, r1, r2, r3, c);
447 TESTINST4("add r0, r1, r2, asr r3", 0, 0x8, 0, r0, r1, r2, r3, c);
448 TESTINST4("add r0, r1, r2, asr r3", 0, 0x8, 1, r0, r1, r2, r3, c);
449 TESTINST4("add r0, r1, r2, asr r3", 0, 0x8, 2, r0, r1, r2, r3, c);
450 TESTINST4("add r0, r1, r2, asr r3", 0, 0x8, 3, r0, r1, r2, r3, c);
451 TESTINST4("add r0, r1, r2, asr r3", 0, 0x8, 4, r0, r1, r2, r3, c);
452 TESTINST4("add r0, r1, r2, asr r3", 0, 0x8, 5, r0, r1, r2, r3, c);
456 TESTINST4("add r0, r1, r2, ror r3", 0, 0x00088000, 0, r0, r1, r2, r3, c);
457 TESTINST4("add r0, r1, r2, ror r3", 0, 0x80088000, 0, r0, r1, r2, r3, c);
458 TESTINST4("add r0, r1, r2, ror r3", 0, 0x00088000, 1, r0, r1, r2, r3, c);
459 TESTINST4("add r0, r1, r2, ror r3", 0, 0x00088000, 31, r0, r1, r2, r3, c);
460 TESTINST4("add r0, r1, r2, ror r3", 0, 0x00088000, 32, r0, r1, r2, r3, c);
461 TESTINST4("add r0, r1, r2, ror r3", 0, 0x00088000, 255, r0, r1, r2, r3, c);
462 TESTINST4("add r0, r1, r2, ror r3", 0, 0x00088000, 256, r0, r1, r2, r3, c);
463 TESTINST4("add r0, r1, r2, ror r3", 0, 0x80088000, 256, r0, r1, r2, r3, c);
464 TESTINST4("add r0, r1, r2, ror r3", 0, 0x00088000, 257, r0, r1, r2, r3, c);
468 TESTINST4("adds r0, r1, r2, lsl r3", 0, 0xffffffff, 0, r0, r1, r2, r3, c);
469 TESTINST4("adds r0, r1, r2, lsl r3", 0, 0xffffffff, 1, r0, r1, r2, r3, c);
470 TESTINST4("adds r0, r1, r2, lsl r3", 0, 0xffffffff, 31, r0, r1, r2, r3, c);
471 TESTINST4("adds r0, r1, r2, lsl r3", 0, 0xffffffff, 32, r0, r1, r2, r3, c);
472 TESTINST4("adds r0, r1, r2, lsl r3", 0, 0xffffffff, 255, r0, r1, r2, r3, c);
473 TESTINST4("adds r0, r1, r2, lsl r3", 0, 0xffffffff, 256, r0, r1, r2, r3, c);
474 TESTINST4("adds r0, r1, r2, lsr r3", 0, 0xffffffff, 0, r0, r1, r2, r3, c);
475 TESTINST4("adds r0, r1, r2, lsr r3", 0, 0xffffffff, 1, r0, r1, r2, r3, c);
476 TESTINST4("adds r0, r1, r2, lsr r3", 0, 0xffffffff, 31, r0, r1, r2, r3, c);
477 TESTINST4("adds r0, r1, r2, lsr r3", 0, 0xffffffff, 32, r0, r1, r2, r3, c);
478 TESTINST4("adds r0, r1, r2, lsr r3", 0, 0xffffffff, 255, r0, r1, r2, r3, c);
479 TESTINST4("adds r0, r1, r2, lsr r3", 0, 0xffffffff, 256, r0, r1, r2, r3, c);
481 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x00088000, 0, r0, r1, r2, r3, c);
482 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x80088000, 0, r0, r1, r2, r3, c);
483 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x00088000, 1, r0, r1, r2, r3, c);
484 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x00088000, 31, r0, r1, r2, r3, c);
485 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x00088000, 32, r0, r1, r2, r3, c);
486 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x00088000, 255, r0, r1, r2, r3, c);
487 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x00088000, 256, r0, r1, r2, r3, c);
488 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x80088000, 256, r0, r1, r2, r3, c);
489 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x00088000, 257, r0, r1, r2, r3, c);
493 TESTINST4("adcs r0, r1, r2, lsl r3", 0, 0xffffffff, 0, r0, r1, r2, r3, c);
494 TESTINST4("adcs r0, r1, r2, lsr r3", 0, 0xffffffff, 0, r0, r1, r2, r3, c);
495 TESTINST4("adcs r0, r1, r2, lsl r3", 0, 0xffffffff, 1, r0, r1, r2, r3, c);
496 TESTINST4("adcs r0, r1, r2, lsr r3", 0, 0xffffffff, 1, r0, r1, r2, r3, c);
500 TESTINST3("mul r0, r1, r2", 0, 0, r0, r1, r2, 0);
501 TESTINST3("mul r0, r1, r2", 0xffffffff, 0, r0, r1, r2, 0);
502 TESTINST3("mul r0, r1, r2", 0, 0xffffffff, r0, r1, r2, 0);
503 TESTINST3("mul r0, r1, r2", 0xffffffff, 0xffffffff, r0, r1, r2, 0);
504 TESTINST3("mul r0, r1, r2", 0x7fffffff, 0x7fffffff, r0, r1, r2, 0);
505 TESTINST3("mul r0, r1, r2", 0x0000ffff, 0x0000ffff, r0, r1, r2, 0);
508 TESTINST3("muls r0, r1, r2", 0, 0, r0, r1, r2, 0);
509 TESTINST3("muls r0, r1, r2", 0xffffffff, 0, r0, r1, r2, 0);
510 TESTINST3("muls r0, r1, r2", 0, 0xffffffff, r0, r1, r2, 0);
511 TESTINST3("muls r0, r1, r2", 0xffffffff, 0xffffffff, r0, r1, r2, 0);
512 TESTINST3("muls r0, r1, r2", 0x7fffffff, 0x7fffffff, r0, r1, r2, 0);
513 TESTINST3("muls r0, r1, r2", 0x0000ffff, 0x0000ffff, r0, r1, r2, 0);
516 TESTINST4("mla r0, r1, r2, r3", 0, 0, 1, r0, r1, r2, r3, 0);
517 TESTINST4("mla r0, r1, r2, r3", 0xffffffff, 0, 1, r0, r1, r2, r3, 0);
518 TESTINST4("mla r0, r1, r2, r3", 0, 0xffffffff, 1, r0, r1, r2, r3, 0);
519 TESTINST4("mla r0, r1, r2, r3", 0xffffffff, 0xffffffff, 1, r0, r1, r2, r3, 0);
520 TESTINST4("mla r0, r1, r2, r3", 0x7fffffff, 0x7fffffff, 1, r0, r1, r2, r3, 0);
521 TESTINST4("mla r0, r1, r2, r3", 0x0000ffff, 0x0000ffff, 1, r0, r1, r2, r3, 0);
524 TESTINST4("mlas r0, r1, r2, r3", 0, 0, 1, r0, r1, r2, r3, 0);
525 TESTINST4("mlas r0, r1, r2, r3", 0xffffffff, 0, 1, r0, r1, r2, r3, 0);
526 TESTINST4("mlas r0, r1, r2, r3", 0, 0xffffffff, 1, r0, r1, r2, r3, 0);
527 TESTINST4("mlas r0, r1, r2, r3", 0xffffffff, 0xffffffff, 1, r0, r1, r2, r3, 0);
528 TESTINST4("mlas r0, r1, r2, r3", 0x7fffffff, 0x7fffffff, 1, r0, r1, r2, r3, 0);
529 TESTINST4("mlas r0, r1, r2, r3", 0x0000ffff, 0x0000ffff, 1, r0, r1, r2, r3, 0);
532 TESTINST4("mls r0, r1, r2, r3", 0, 0, 1, r0, r1, r2, r3, 0);
533 TESTINST4("mls r0, r1, r2, r3", 0xffffffff, 0, 1, r0, r1, r2, r3, 0);
534 TESTINST4("mls r0, r1, r2, r3", 0, 0xffffffff, 1, r0, r1, r2, r3, 0);
535 TESTINST4("mls r0, r1, r2, r3", 0xffffffff, 0xffffffff, 1, r0, r1, r2, r3, 0);
536 TESTINST4("mls r0, r1, r2, r3", 0x7fffffff, 0x7fffffff, 1, r0, r1, r2, r3, 0);
537 TESTINST4("mls r0, r1, r2, r3", 0x0000ffff, 0x0000ffff, 1, r0, r1, r2, r3, 0);
540 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0);
541 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0);
542 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0);
543 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0);
544 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0);
545 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0);
546 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0);
547 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0);
548 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0);
549 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0);
550 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0);
551 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0);
554 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0);
555 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0);
556 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0);
557 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0);
558 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0);
559 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0);
560 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0);
561 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0);
562 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0);
563 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0);
564 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0);
565 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0);
568 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0);
569 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 1, 0, 0, r0, r1, r2, r3, 0);
570 TESTINST4_2OUT("umlal r0, r1, r2, r3", 1, 1, 0, 0, r0, r1, r2, r3, 0);
571 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0xffffffff, 1, 1, r0, r1, r2, r3, 0);
572 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0);
573 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0);
574 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0);
575 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0);
576 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0);
577 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0);
578 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 1, 0, 0, r0, r1, r2, r3, 0);
579 TESTINST4_2OUT("umlals r0, r1, r2, r3", 1, 1, 0, 0, r0, r1, r2, r3, 0);
580 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0xffffffff, 1, 1, r0, r1, r2, r3, 0);
581 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0);
582 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0);
583 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0);
584 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0);
585 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0);
588 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0);
589 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 1, 0, 0, r0, r1, r2, r3, 0);
590 TESTINST4_2OUT("smlal r0, r1, r2, r3", 1, 1, 0, 0, r0, r1, r2, r3, 0);
591 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0xffffffff, 1, 1, r0, r1, r2, r3, 0);
592 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0);
593 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0);
594 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0);
595 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0);
596 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0);
597 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0);
598 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 1, 0, 0, r0, r1, r2, r3, 0);
599 TESTINST4_2OUT("smlals r0, r1, r2, r3", 1, 1, 0, 0, r0, r1, r2, r3, 0);
600 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0xffffffff, 1, 1, r0, r1, r2, r3, 0);
601 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0);
602 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0);
603 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0);
604 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0);
605 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0);
609 TESTINST2("clz r0, r1", 0, r0, r1, c);
610 TESTINST2("clz r0, r1", 1, r0, r1, c);
611 TESTINST2("clz r0, r1", 0x10, r0, r1, c);
612 TESTINST2("clz r0, r1", 0xffffffff, r0, r1, c);
616 TESTINST2("uxtb r0, r1", 0, r0, r1, 0);
617 TESTINST2("uxtb r0, r1", 1, r0, r1, 0);
618 TESTINST2("uxtb r0, r1", 0xff, r0, r1, 0);
619 TESTINST2("uxtb r0, r1", 0xffffffff, r0, r1, 0);
620 TESTINST2("sxtb r0, r1", 0, r0, r1, 0);
621 TESTINST2("sxtb r0, r1", 1, r0, r1, 0);
622 TESTINST2("sxtb r0, r1", 0xff, r0, r1, 0);
623 TESTINST2("sxtb r0, r1", 0xffffffff, r0, r1, 0);
625 TESTINST2("uxth r0, r1", 0, r0, r1, 0);
626 TESTINST2("uxth r0, r1", 1, r0, r1, 0);
627 TESTINST2("uxth r0, r1", 0xffff, r0, r1, 0);
628 TESTINST2("uxth r0, r1", 0xffffffff, r0, r1, 0);
629 TESTINST2("sxth r0, r1", 0, r0, r1, 0);
630 TESTINST2("sxth r0, r1", 1, r0, r1, 0);
631 TESTINST2("sxth r0, r1", 0x7fff, r0, r1, 0);
632 TESTINST2("sxth r0, r1", 0xffff, r0, r1, 0);
633 TESTINST2("sxth r0, r1", 0x10ffff, r0, r1, 0);
634 TESTINST2("sxth r0, r1", 0x107fff, r0, r1, 0);
635 TESTINST2("sxth r0, r1", 0xffffffff, r0, r1, 0);
637 TESTINST2("uxtb r0, r1, ror #0", 0x000000ff, r0, r1, 0);
638 TESTINST2("uxtb r0, r1, ror #8", 0x000000ff, r0, r1, 0);
639 TESTINST2("uxtb r0, r1, ror #8", 0x0000ff00, r0, r1, 0);
640 TESTINST2("uxtb r0, r1, ror #16", 0x00ff0000, r0, r1, 0);
641 TESTINST2("uxtb r0, r1, ror #24", 0xff000000, r0, r1, 0);
643 TESTINST2("uxtb16 r0, r1", 0xffffffff, r0, r1, 0);
644 TESTINST2("uxtb16 r0, r1, ror #16", 0x0000ffff, r0, r1, 0);
645 TESTINST2("sxtb16 r0, r1", 0xffffffff, r0, r1, 0);
646 TESTINST2("sxtb16 r0, r1", 0x00ff00ff, r0, r1, 0);
647 TESTINST2("sxtb16 r0, r1", 0x007f007f, r0, r1, 0);
652 TESTINST2("bfi r0, r1, #0, #11", 0xAAAAAAAA, r0, r1, 0);
653 TESTINST2("bfi r0, r1, #1, #11", 0xAAAAAAAA, r0, r1, 0);
654 TESTINST2("bfi r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0);
656 TESTINST2("bfi r0, r1, #19, #11", 0xFFFFFFFF, r0, r1, 0);
657 TESTINST2("bfi r0, r1, #20, #11", 0xFFFFFFFF, r0, r1, 0);
658 TESTINST2("bfi r0, r1, #21, #11", 0xFFFFFFFF, r0, r1, 0);
660 TESTINST2("bfi r0, r1, #0, #32", 0xFFFFFFFF, r0, r1, 0);
661 TESTINST2("bfi r0, r1, #1, #31", 0xFFFFFFFF, r0, r1, 0);
663 TESTINST2("bfi r0, r1, #29, #3", 0xFFFFFFFF, r0, r1, 0);
664 TESTINST2("bfi r0, r1, #30, #2", 0xFFFFFFFF, r0, r1, 0);
665 TESTINST2("bfi r0, r1, #31, #1", 0xFFFFFFFF, r0, r1, 0);
670 TESTINST2("bfc r0, #0, #11", 0xAAAAAAAA, r0, r1, 0);
671 TESTINST2("bfc r0, #1, #11", 0xAAAAAAAA, r0, r1, 0);
672 TESTINST2("bfc r0, #2, #11", 0xAAAAAAAA, r0, r1, 0);
674 TESTINST2("bfc r0, #19, #11", 0xFFFFFFFF, r0, r1, 0);
675 TESTINST2("bfc r0, #20, #11", 0xFFFFFFFF, r0, r1, 0);
676 TESTINST2("bfc r0, #21, #11", 0xFFFFFFFF, r0, r1, 0);
678 TESTINST2("bfc r0, #0, #32", 0xFFFFFFFF, r0, r1, 0);
679 TESTINST2("bfc r0, #1, #31", 0xFFFFFFFF, r0, r1, 0);
681 TESTINST2("bfc r0, #29, #3", 0xFFFFFFFF, r0, r1, 0);
682 TESTINST2("bfc r0, #30, #2", 0xFFFFFFFF, r0, r1, 0);
683 TESTINST2("bfc r0, #31, #1", 0xFFFFFFFF, r0, r1, 0);
688 TESTINST2("sbfx r0, r1, #0, #1", 0x00000000, r0, r1, 0);
689 TESTINST2("sbfx r0, r1, #0, #1", 0x00000001, r0, r1, 0);
690 TESTINST2("sbfx r0, r1, #1, #1", 0x00000000, r0, r1, 0);
691 TESTINST2("sbfx r0, r1, #1, #1", 0x00000001, r0, r1, 0);
692 TESTINST2("sbfx r0, r1, #1, #1", 0x00000002, r0, r1, 0);
693 TESTINST2("sbfx r0, r1, #1, #1", 0x00000003, r0, r1, 0);
695 TESTINST2("sbfx r0, r1, #0, #2", 0x00000000, r0, r1, 0);
696 TESTINST2("sbfx r0, r1, #0, #2", 0x00000001, r0, r1, 0);
697 TESTINST2("sbfx r0, r1, #1, #2", 0x00000000, r0, r1, 0);
698 TESTINST2("sbfx r0, r1, #1, #2", 0x00000001, r0, r1, 0);
699 TESTINST2("sbfx r0, r1, #1, #2", 0x00000002, r0, r1, 0);
700 TESTINST2("sbfx r0, r1, #1, #2", 0x00000003, r0, r1, 0);
702 TESTINST2("sbfx r0, r1, #0, #11", 0xAAAAAAAA, r0, r1, 0);
703 TESTINST2("sbfx r0, r1, #1, #11", 0xAAAAAAAA, r0, r1, 0);
704 TESTINST2("sbfx r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0);
706 TESTINST2("sbfx r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0);
708 TESTINST2("sbfx r0, r1, #31, #1", 0xAAAAAAAA, r0, r1, 0);
709 TESTINST2("sbfx r0, r1, #30, #2", 0xAAAAAAAA, r0, r1, 0);
714 TESTINST2("ubfx r0, r1, #0, #1", 0x00000000, r0, r1, 0);
715 TESTINST2("ubfx r0, r1, #0, #1", 0x00000001, r0, r1, 0);
716 TESTINST2("ubfx r0, r1, #1, #1", 0x00000000, r0, r1, 0);
717 TESTINST2("ubfx r0, r1, #1, #1", 0x00000001, r0, r1, 0);
718 TESTINST2("ubfx r0, r1, #1, #1", 0x00000002, r0, r1, 0);
719 TESTINST2("ubfx r0, r1, #1, #1", 0x00000003, r0, r1, 0);
721 TESTINST2("ubfx r0, r1, #0, #2", 0x00000000, r0, r1, 0);
722 TESTINST2("ubfx r0, r1, #0, #2", 0x00000001, r0, r1, 0);
723 TESTINST2("ubfx r0, r1, #1, #2", 0x00000000, r0, r1, 0);
724 TESTINST2("ubfx r0, r1, #1, #2", 0x00000001, r0, r1, 0);
725 TESTINST2("ubfx r0, r1, #1, #2", 0x00000002, r0, r1, 0);
726 TESTINST2("ubfx r0, r1, #1, #2", 0x00000003, r0, r1, 0);
728 TESTINST2("ubfx r0, r1, #0, #11", 0xAAAAAAAA, r0, r1, 0);
729 TESTINST2("ubfx r0, r1, #1, #11", 0xAAAAAAAA, r0, r1, 0);
730 TESTINST2("ubfx r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0);
732 TESTINST2("ubfx r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0);
734 TESTINST2("ubfx r0, r1, #31, #1", 0xAAAAAAAA, r0, r1, 0);
735 TESTINST2("ubfx r0, r1, #30, #2", 0xAAAAAAAA, r0, r1, 0);
740 TESTINST3("smulbb r0, r1, r2", 0x00030000, 0x00040000, r0, r1, r2, 0);
741 TESTINST3("smulbb r0, r1, r2", 0x00030001, 0x00040002, r0, r1, r2, 0);
742 TESTINST3("smulbb r0, r1, r2", 0x00038001, 0x00047fff, r0, r1, r2, 0);
743 TESTINST3("smulbb r0, r1, r2", 0x00037fff, 0x00047fff, r0, r1, r2, 0);
744 TESTINST3("smulbb r0, r1, r2", 0x0003ffff, 0x0004ffff, r0, r1, r2, 0);
747 TESTINST3("sxtab r0, r1, r2, ROR #24", 0x31415927, 0x27182819,
748 r0, r1, r2, 0);
749 TESTINST3("sxtab r0, r1, r2, ROR #16", 0x31415927, 0x27182819,
750 r0, r1, r2, 0);
751 TESTINST3("sxtab r0, r1, r2, ROR #8", 0x31415927, 0x27182819,
752 r0, r1, r2, 0);
753 TESTINST3("sxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182819,
754 r0, r1, r2, 0);
756 TESTINST3("sxtab r0, r1, r2, ROR #24", 0x31415927, 0x27182899,
757 r0, r1, r2, 0);
758 TESTINST3("sxtab r0, r1, r2, ROR #16", 0x31415927, 0x27182899,
759 r0, r1, r2, 0);
760 TESTINST3("sxtab r0, r1, r2, ROR #8", 0x31415927, 0x27182899,
761 r0, r1, r2, 0);
762 TESTINST3("sxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182899,
763 r0, r1, r2, 0);
766 TESTINST3("uxtab r0, r1, r2, ROR #24", 0x31415927, 0x27182819,
767 r0, r1, r2, 0);
768 TESTINST3("uxtab r0, r1, r2, ROR #16", 0x31415927, 0x27182819,
769 r0, r1, r2, 0);
770 TESTINST3("uxtab r0, r1, r2, ROR #8", 0x31415927, 0x27182819,
771 r0, r1, r2, 0);
772 TESTINST3("uxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182819,
773 r0, r1, r2, 0);
775 TESTINST3("uxtab r0, r1, r2, ROR #24", 0x31415927, 0x27182899,
776 r0, r1, r2, 0);
777 TESTINST3("uxtab r0, r1, r2, ROR #16", 0x31415927, 0x27182899,
778 r0, r1, r2, 0);
779 TESTINST3("uxtab r0, r1, r2, ROR #8", 0x31415927, 0x27182899,
780 r0, r1, r2, 0);
781 TESTINST3("uxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182899,
782 r0, r1, r2, 0);
785 TESTINST3("sxtah r0, r1, r2, ROR #24", 0x31415927, 0x27182819,
786 r0, r1, r2, 0);
787 TESTINST3("sxtah r0, r1, r2, ROR #16", 0x31415927, 0x27182819,
788 r0, r1, r2, 0);
789 TESTINST3("sxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27182819,
790 r0, r1, r2, 0);
791 TESTINST3("sxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27182819,
792 r0, r1, r2, 0);
794 TESTINST3("sxtah r0, r1, r2, ROR #24", 0x31415927, 0x27189819,
795 r0, r1, r2, 0);
796 TESTINST3("sxtah r0, r1, r2, ROR #16", 0x31415927, 0x27189819,
797 r0, r1, r2, 0);
798 TESTINST3("sxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27189819,
799 r0, r1, r2, 0);
800 TESTINST3("sxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27189819,
801 r0, r1, r2, 0);
804 TESTINST3("uxtah r0, r1, r2, ROR #24", 0x31415927, 0x27182819,
805 r0, r1, r2, 0);
806 TESTINST3("uxtah r0, r1, r2, ROR #16", 0x31415927, 0x27182819,
807 r0, r1, r2, 0);
808 TESTINST3("uxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27182819,
809 r0, r1, r2, 0);
810 TESTINST3("uxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27182819,
811 r0, r1, r2, 0);
813 TESTINST3("uxtah r0, r1, r2, ROR #24", 0x31415927, 0x27189819,
814 r0, r1, r2, 0);
815 TESTINST3("uxtah r0, r1, r2, ROR #16", 0x31415927, 0x27189819,
816 r0, r1, r2, 0);
817 TESTINST3("uxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27189819,
818 r0, r1, r2, 0);
819 TESTINST3("uxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27189819,
820 r0, r1, r2, 0);
849 TESTINST2("rbit r0, r1", 0x00000000, r0, r1, 0);
850 TESTINST2("rbit r0, r1", 0xFFFFFFFF, r0, r1, 0);
851 TESTINST2("rbit r0, r1", 0x80000000, r0, r1, 0);
852 TESTINST2("rbit r0, r1", 0x00000001, r0, r1, 0);
853 TESTINST2("rbit r0, r1", 0x31415927, r0, r1, 0);
854 TESTINST2("rbit r0, r1", 0x14141562, r0, r1, 0);
855 TESTINST2("rbit r0, r1", 0xabe8391f, r0, r1, 0);
856 TESTINST2("rbit r0, r1", 0x9028aa80, r0, r1, 0);
857 TESTINST2("rbit r0, r1", 0xead1fc6d, r0, r1, 0);
858 TESTINST2("rbit r0, r1", 0x35c98c55, r0, r1, 0);
859 TESTINST2("rbit r0, r1", 0x534af1eb, r0, r1, 0);
860 TESTINST2("rbit r0, r1", 0x45511b08, r0, r1, 0);
861 TESTINST2("rbit r0, r1", 0x90077f71, r0, r1, 0);
862 TESTINST2("rbit r0, r1", 0xde8ca84b, r0, r1, 0);
863 TESTINST2("rbit r0, r1", 0xe37a0dda, r0, r1, 0);
864 TESTINST2("rbit r0, r1", 0xe5b83d4b, r0, r1, 0);
865 TESTINST2("rbit r0, r1", 0xbb6d14ec, r0, r1, 0);
866 TESTINST2("rbit r0, r1", 0x68983cc9, r0, r1, 0);
869 TESTINST2("rev r0, r1", 0x00000000, r0, r1, 0);
870 TESTINST2("rev r0, r1", 0xFFFFFFFF, r0, r1, 0);
871 TESTINST2("rev r0, r1", 0x80000000, r0, r1, 0);
872 TESTINST2("rev r0, r1", 0x00000001, r0, r1, 0);
873 TESTINST2("rev r0, r1", 0x31415927, r0, r1, 0);
874 TESTINST2("rev r0, r1", 0x14141562, r0, r1, 0);
875 TESTINST2("rev r0, r1", 0xabe8391f, r0, r1, 0);
876 TESTINST2("rev r0, r1", 0x9028aa80, r0, r1, 0);
877 TESTINST2("rev r0, r1", 0xead1fc6d, r0, r1, 0);
878 TESTINST2("rev r0, r1", 0x35c98c55, r0, r1, 0);
879 TESTINST2("rev r0, r1", 0x534af1eb, r0, r1, 0);
880 TESTINST2("rev r0, r1", 0x45511b08, r0, r1, 0);
881 TESTINST2("rev r0, r1", 0x90077f71, r0, r1, 0);
882 TESTINST2("rev r0, r1", 0xde8ca84b, r0, r1, 0);
883 TESTINST2("rev r0, r1", 0xe37a0dda, r0, r1, 0);
884 TESTINST2("rev r0, r1", 0xe5b83d4b, r0, r1, 0);
885 TESTINST2("rev r0, r1", 0xbb6d14ec, r0, r1, 0);
886 TESTINST2("rev r0, r1", 0x68983cc9, r0, r1, 0);
889 TESTINST2("rev16 r0, r1", 0x00000000, r0, r1, 0);
890 TESTINST2("rev16 r0, r1", 0xFFFFFFFF, r0, r1, 0);
891 TESTINST2("rev16 r0, r1", 0x80000000, r0, r1, 0);
892 TESTINST2("rev16 r0, r1", 0x00000001, r0, r1, 0);
893 TESTINST2("rev16 r0, r1", 0x31415927, r0, r1, 0);
894 TESTINST2("rev16 r0, r1", 0x14141562, r0, r1, 0);
895 TESTINST2("rev16 r0, r1", 0xabe8391f, r0, r1, 0);
896 TESTINST2("rev16 r0, r1", 0x9028aa80, r0, r1, 0);
897 TESTINST2("rev16 r0, r1", 0xead1fc6d, r0, r1, 0);
898 TESTINST2("rev16 r0, r1", 0x35c98c55, r0, r1, 0);
899 TESTINST2("rev16 r0, r1", 0x534af1eb, r0, r1, 0);
900 TESTINST2("rev16 r0, r1", 0x45511b08, r0, r1, 0);
901 TESTINST2("rev16 r0, r1", 0x90077f71, r0, r1, 0);
902 TESTINST2("rev16 r0, r1", 0xde8ca84b, r0, r1, 0);
903 TESTINST2("rev16 r0, r1", 0xe37a0dda, r0, r1, 0);
904 TESTINST2("rev16 r0, r1", 0xe5b83d4b, r0, r1, 0);
905 TESTINST2("rev16 r0, r1", 0xbb6d14ec, r0, r1, 0);
906 TESTINST2("rev16 r0, r1", 0x68983cc9, r0, r1, 0);
918 TESTINST3("smmul r0, r1, r2", 0, 0, r0, r1, r2, 0);
919 TESTINST3("smmul r0, r1, r2", 0xffffffff, 0, r0, r1, r2, 0);
920 TESTINST3("smmul r0, r1, r2", 0, 0xffffffff, r0, r1, r2, 0);
921 TESTINST3("smmul r0, r1, r2", 0xffffffff, 0xffffffff, r0, r1, r2, 0);
922 TESTINST3("smmul r0, r1, r2", 0x7fffffff, 0x7fffffff, r0, r1, r2, 0);
923 TESTINST3("smmul r0, r1, r2", 0x0000ffff, 0x0000ffff, r0, r1, r2, 0);
924 TESTINST3("smmul r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0);
925 TESTINST3("smmul r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0);
926 TESTINST3("smmul r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0);
927 TESTINST3("smmul r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0);
928 TESTINST3("smmul r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0);
930 TESTINST3("smmulr r0, r1, r2", 0, 0, r0, r1, r2, 0);
931 TESTINST3("smmulr r0, r1, r2", 0xffffffff, 0, r0, r1, r2, 0);
932 TESTINST3("smmulr r0, r1, r2", 0, 0xffffffff, r0, r1, r2, 0);
933 TESTINST3("smmulr r0, r1, r2", 0xffffffff, 0xffffffff, r0, r1, r2, 0);
934 TESTINST3("smmulr r0, r1, r2", 0x7fffffff, 0x7fffffff, r0, r1, r2, 0);
935 TESTINST3("smmulr r0, r1, r2", 0x0000ffff, 0x0000ffff, r0, r1, r2, 0);
936 TESTINST3("smmulr r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0);
937 TESTINST3("smmulr r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0);
938 TESTINST3("smmulr r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0);
939 TESTINST3("smmulr r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0);
940 TESTINST3("smmulr r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0);