1 2 /* How to compile: 3 gcc -O -g -Wall -mcpu=cortex-a8 -o testarmv6int testarmv6int.c 4 */ 5 6 #include <stdio.h> 7 8 static int gen_cvin(cvin) 9 { 10 int r = ((cvin & 2) ? (1<<29) : 0) | ((cvin & 1) ? (1<<28) : 0); 11 r |= (1 << 31) | (1 << 30); 12 return r; 13 } 14 15 /* test macros to generate and output the result of a single instruction */ 16 17 18 // 1 registers in the insn, zero args: rD = op() 19 #define TESTINST1(instruction, RD, cvin) \ 20 { \ 21 unsigned int out; \ 22 unsigned int cpsr; \ 23 \ 24 __asm__ volatile( \ 25 "msr cpsr_f, %2;" \ 26 instruction ";" \ 27 "mov %0," #RD ";" \ 28 "mrs %1,cpsr;" \ 29 : "=&r" (out), "=&r" (cpsr) \ 30 : "r" (gen_cvin(cvin)) \ 31 : #RD, "cc", "memory" \ 32 ); \ 33 printf("%s :: rd 0x%08x, c:v-in %d, cpsr 0x%08x %c%c%c%c\n", \ 34 instruction, out, \ 35 cvin, \ 36 cpsr & 0xffff0000, \ 37 ((1<<31) & cpsr) ? 'N' : ' ', \ 38 ((1<<30) & cpsr) ? 'Z' : ' ', \ 39 ((1<<29) & cpsr) ? 'C' : ' ', \ 40 ((1<<28) & cpsr) ? 'V' : ' ' \ 41 ); \ 42 } 43 44 45 46 // 1 registers in the insn, one args: rD = op(rD) 47 #define TESTINST1x(instruction, RDval, RD, cvin) \ 48 { \ 49 unsigned int out; \ 50 unsigned int cpsr; \ 51 \ 52 __asm__ volatile( \ 53 "msr cpsr_f, %2;" \ 54 "mov " #RD ",%3;" \ 55 instruction ";" \ 56 "mov %0," #RD ";" \ 57 "mrs %1,cpsr;" \ 58 : "=&r" (out), "=&r" (cpsr) \ 59 : "r" (gen_cvin(cvin)), "r"(RDval) \ 60 : #RD, "cc", "memory" \ 61 ); \ 62 printf("%s :: rd 0x%08x, c:v-in %d, cpsr 0x%08x %c%c%c%c\n", \ 63 instruction, out, \ 64 cvin, \ 65 cpsr & 0xffff0000, \ 66 ((1<<31) & cpsr) ? 'N' : ' ', \ 67 ((1<<30) & cpsr) ? 'Z' : ' ', \ 68 ((1<<29) & cpsr) ? 'C' : ' ', \ 69 ((1<<28) & cpsr) ? 'V' : ' ' \ 70 ); \ 71 } 72 73 // 2 registers in the insn, one arg: rD = op(rM) 74 #define TESTINST2(instruction, RMval, RD, RM, cvin) \ 75 { \ 76 unsigned int out; \ 77 unsigned int cpsr; \ 78 \ 79 __asm__ volatile( \ 80 "msr cpsr_f, %3;" \ 81 "mov " #RM ",%2;" \ 82 /* set #RD to 0x55555555 so we can see which parts get overwritten */ \ 83 "mov " #RD ", #0x55" "\n\t" \ 84 "orr " #RD "," #RD "," #RD ", LSL #8" "\n\t" \ 85 "orr " #RD "," #RD "," #RD ", LSL #16" "\n\t" \ 86 instruction ";" \ 87 "mov %0," #RD ";" \ 88 "mrs %1,cpsr;" \ 89 : "=&r" (out), "=&r" (cpsr) \ 90 : "r" (RMval), "r" (gen_cvin(cvin)) \ 91 : #RD, #RM, "cc", "memory" \ 92 ); \ 93 printf("%s :: rd 0x%08x rm 0x%08x, c:v-in %d, cpsr 0x%08x %c%c%c%c\n", \ 94 instruction, out, RMval, \ 95 cvin, \ 96 cpsr & 0xffff0000, \ 97 ((1<<31) & cpsr) ? 'N' : ' ', \ 98 ((1<<30) & cpsr) ? 'Z' : ' ', \ 99 ((1<<29) & cpsr) ? 'C' : ' ', \ 100 ((1<<28) & cpsr) ? 'V' : ' ' \ 101 ); \ 102 } 103 104 105 // 2 registers in the insn, two args: rD = op(rD, rM) 106 #define TESTINST2x(instruction, RDval, RMval, RD, RM, cvin) \ 107 { \ 108 unsigned int out; \ 109 unsigned int cpsr; \ 110 \ 111 __asm__ volatile( \ 112 "msr cpsr_f, %3;" \ 113 "mov " #RM ",%2;" \ 114 "mov " #RD ",%4;" \ 115 instruction ";" \ 116 "mov %0," #RD ";" \ 117 "mrs %1,cpsr;" \ 118 : "=&r" (out), "=&r" (cpsr) \ 119 : "r" (RMval), "r" (gen_cvin(cvin)), "r"(RDval) \ 120 : #RD, #RM, "cc", "memory" \ 121 ); \ 122 printf("%s :: rd 0x%08x rm 0x%08x, c:v-in %d, cpsr 0x%08x %c%c%c%c\n", \ 123 instruction, out, RMval, \ 124 cvin, \ 125 cpsr & 0xffff0000, \ 126 ((1<<31) & cpsr) ? 'N' : ' ', \ 127 ((1<<30) & cpsr) ? 'Z' : ' ', \ 128 ((1<<29) & cpsr) ? 'C' : ' ', \ 129 ((1<<28) & cpsr) ? 'V' : ' ' \ 130 ); \ 131 } 132 133 134 135 #define TESTINST3(instruction, RMval, RNval, RD, RM, RN, cvin) \ 136 { \ 137 unsigned int out; \ 138 unsigned int cpsr; \ 139 \ 140 __asm__ volatile( \ 141 "msr cpsr_f, %4;" \ 142 "mov " #RM ",%2;" \ 143 "mov " #RN ",%3;" \ 144 instruction ";" \ 145 "mov %0," #RD ";" \ 146 "mrs %1,cpsr;" \ 147 : "=&r" (out), "=&r" (cpsr) \ 148 : "r" (RMval), "r" (RNval), "r" (gen_cvin(cvin)) \ 149 : #RD, #RM, #RN, "cc", "memory" \ 150 ); \ 151 printf("%s :: rd 0x%08x rm 0x%08x, rn 0x%08x, c:v-in %d, cpsr 0x%08x %c%c%c%c\n", \ 152 instruction, out, RMval, RNval, \ 153 cvin, \ 154 cpsr & 0xffff0000, \ 155 ((1<<31) & cpsr) ? 'N' : ' ', \ 156 ((1<<30) & cpsr) ? 'Z' : ' ', \ 157 ((1<<29) & cpsr) ? 'C' : ' ', \ 158 ((1<<28) & cpsr) ? 'V' : ' ' \ 159 ); \ 160 } 161 162 #define TESTINST4(instruction, RMval, RNval, RSval, RD, RM, RN, RS, cvin) \ 163 { \ 164 unsigned int out; \ 165 unsigned int cpsr; \ 166 \ 167 __asm__ volatile( \ 168 "msr cpsr_f, %5;" \ 169 "mov " #RM ",%2;" \ 170 "mov " #RN ",%3;" \ 171 "mov " #RS ",%4;" \ 172 instruction ";" \ 173 "mov %0," #RD ";" \ 174 "mrs %1,cpsr;" \ 175 : "=&r" (out), "=&r" (cpsr) \ 176 : "r" (RMval), "r" (RNval), "r" (RSval), "r" (gen_cvin(cvin)) \ 177 : #RD, #RM, #RN, #RS, "cc", "memory" \ 178 ); \ 179 printf("%s :: rd 0x%08x rm 0x%08x, rn 0x%08x rs 0x%08x, c:v-in %d, cpsr 0x%08x %c%c%c%c\n", \ 180 instruction, out, RMval, RNval, RSval, \ 181 cvin, \ 182 cpsr & 0xffff0000, \ 183 ((1<<31) & cpsr) ? 'N' : ' ', \ 184 ((1<<30) & cpsr) ? 'Z' : ' ', \ 185 ((1<<29) & cpsr) ? 'C' : ' ', \ 186 ((1<<28) & cpsr) ? 'V' : ' ' \ 187 ); \ 188 } 189 190 #define TESTINST4_2OUT(instruction, RDval, RD2val, RMval, RSval, RD, RD2, RM, RS, cvin) \ 191 { \ 192 unsigned int out; \ 193 unsigned int out2; \ 194 unsigned int cpsr; \ 195 \ 196 __asm__ volatile( \ 197 "msr cpsr_f, %7;" \ 198 "mov " #RD ",%3;" \ 199 "mov " #RD2 ",%4;" \ 200 "mov " #RM ",%5;" \ 201 "mov " #RS ",%6;" \ 202 instruction ";" \ 203 "mov %0," #RD ";" \ 204 "mov %1," #RD2 ";" \ 205 "mrs %2,cpsr;" \ 206 : "=&r" (out), "=&r" (out2), "=&r" (cpsr) \ 207 : "r" (RDval), "r" (RD2val), "r" (RMval), "r" (RSval), "r" (gen_cvin(cvin)) \ 208 : #RD, #RD2, #RM, #RS, "cc", "memory" \ 209 ); \ 210 printf("%s :: rd 0x%08x rd2 0x%08x, rm 0x%08x rs 0x%08x, c:v-in %d, cpsr 0x%08x %c%c%c%c\n", \ 211 instruction, out, out2, RMval, RSval, \ 212 cvin, \ 213 cpsr & 0xffff0000, \ 214 ((1<<31) & cpsr) ? 'N' : ' ', \ 215 ((1<<30) & cpsr) ? 'Z' : ' ', \ 216 ((1<<29) & cpsr) ? 'C' : ' ', \ 217 ((1<<28) & cpsr) ? 'V' : ' ' \ 218 ); \ 219 } 220 221 /* helpers */ 222 #define NOCARRY { int cv = 0; { 223 #define TESTCARRY { int cv = 0; for (cv = 0; cv < 4; cv++) { 224 #define TESTCARRYEND }} 225 226 //////////////////////////////////////////////////////////// 227 //////////////////////////////////////////////////////////// 228 /////////////////////////////////////////////////////////// 229 /////////////////////////////////////////////////////////// 230 231 static int old_main(void) 232 { 233 234 printf("MOV\n"); 235 TESTINST2("mov r0, r1", 1, r0, r1, 0); 236 TESTINST2("cpy r0, r1", 1, r0, r1, 0); 237 TESTINST2("mov r0, #0", 0, r0, r1, 0); 238 TESTINST2("mov r0, #1", 0, r0, r1, 0); 239 TESTCARRY 240 TESTINST2("movs r0, r1", 1, r0, r1, cv); 241 TESTINST2("movs r0, r1", 0, r0, r1, cv); 242 TESTINST2("movs r0, r1", 0x80000000, r0, r1, cv); 243 TESTINST2("movs r0, #0", 0, r0, r1, cv); 244 TESTINST2("movs r0, #1", 0, r0, r1, cv); 245 TESTCARRYEND 246 247 printf("MVN\n"); 248 TESTINST2("mvn r0, r1", 1, r0, r1, 0); 249 TESTCARRY 250 TESTINST2("mvns r0, r1", 1, r0, r1, cv); 251 TESTINST2("mvns r0, r1", 0, r0, r1, cv); 252 TESTINST2("mvns r0, r1", 0x80000000, r0, r1, cv); 253 TESTCARRYEND 254 255 printf("ADD\n"); 256 TESTINST3("adds r0, r1, r2", 0, 0, r0, r1, r2, 0); 257 TESTINST3("adds r0, r1, r2", 0, 1, r0, r1, r2, 0); 258 TESTINST3("adds r0, r1, r2", 1, 0, r0, r1, r2, 0); 259 TESTINST3("adds r0, r1, r2", 1, 1, r0, r1, r2, 0); 260 TESTINST3("adds r0, r1, r2", 0, -1, r0, r1, r2, 0); 261 TESTINST3("adds r0, r1, r2", 1, -1, r0, r1, r2, 0); 262 TESTINST3("adds r0, r1, r2", 0x7fffffff, 1, r0, r1, r2, 0); 263 TESTINST3("adds r0, r1, r2", 0x80000000, -1, r0, r1, r2, 0); 264 TESTINST3("adds r0, r1, r2", 0x80000000, 0, r0, r1, r2, 0); 265 266 printf("ADC\n"); 267 TESTINST3("adcs r0, r1, r2", 0, 0, r0, r1, r2, 0); 268 TESTINST3("adcs r0, r1, r2", 0, 0, r0, r1, r2, 1); 269 270 printf("LSL\n"); 271 TESTINST3("lsl r0, r1, r2", 0xffffffff, 0, r0, r1, r2, 0); 272 TESTINST3("lsl r0, r1, r2", 0xffffffff, 1, r0, r1, r2, 0); 273 TESTINST3("lsl r0, r1, r2", 0xffffffff, 2, r0, r1, r2, 0); 274 TESTINST3("lsl r0, r1, r2", 0xffffffff, 31, r0, r1, r2, 0); 275 TESTINST3("lsl r0, r1, r2", 0xffffffff, 32, r0, r1, r2, 0); 276 TESTINST3("lsl r0, r1, r2", 0xffffffff, 33, r0, r1, r2, 0); 277 TESTINST3("lsl r0, r1, r2", 0xffffffff, 63, r0, r1, r2, 0); 278 TESTINST3("lsl r0, r1, r2", 0xffffffff, 64, r0, r1, r2, 0); 279 TESTINST3("lsl r0, r1, r2", 0xffffffff, 255, r0, r1, r2, 0); 280 TESTINST3("lsl r0, r1, r2", 0xffffffff, 256, r0, r1, r2, 0); 281 282 TESTINST3("lsl r0, r1, r2", 0x1, 0, r0, r1, r2, 0); 283 TESTINST3("lsl r0, r1, r2", 0x1, 1, r0, r1, r2, 0); 284 TESTINST3("lsl r0, r1, r2", 0x1, 31, r0, r1, r2, 0); 285 TESTINST3("lsl r0, r1, r2", 0x2, 31, r0, r1, r2, 0); 286 287 printf("LSLS\n"); 288 TESTCARRY 289 TESTINST3("lsls r0, r1, r2", 0xffffffff, 0, r0, r1, r2, cv); 290 TESTINST3("lsls r0, r1, r2", 0xffffffff, 1, r0, r1, r2, cv); 291 TESTINST3("lsls r0, r1, r2", 0xffffffff, 2, r0, r1, r2, cv); 292 TESTINST3("lsls r0, r1, r2", 0xffffffff, 31, r0, r1, r2, cv); 293 TESTINST3("lsls r0, r1, r2", 0xffffffff, 32, r0, r1, r2, cv); 294 TESTINST3("lsls r0, r1, r2", 0xffffffff, 33, r0, r1, r2, cv); 295 TESTINST3("lsls r0, r1, r2", 0xffffffff, 63, r0, r1, r2, cv); 296 TESTINST3("lsls r0, r1, r2", 0xffffffff, 64, r0, r1, r2, cv); 297 TESTINST3("lsls r0, r1, r2", 0xffffffff, 255, r0, r1, r2, cv); 298 TESTINST3("lsls r0, r1, r2", 0xffffffff, 256, r0, r1, r2, cv); 299 TESTINST3("lsls r0, r1, r2", 0x1, 0, r0, r1, r2, cv); 300 TESTINST3("lsls r0, r1, r2", 0x1, 1, r0, r1, r2, cv); 301 TESTINST3("lsls r0, r1, r2", 0x1, 31, r0, r1, r2, cv); 302 TESTINST3("lsls r0, r1, r2", 0x2, 31, r0, r1, r2, cv); 303 TESTCARRYEND 304 305 printf("LSL immediate\n"); 306 TESTCARRY 307 TESTINST2("lsl r0, r1, #0", 0xffffffff, r0, r1, cv); 308 TESTINST2("lsl r0, r1, #1", 0xffffffff, r0, r1, cv); 309 TESTINST2("lsl r0, r1, #31", 0xffffffff, r0, r1, cv); 310 TESTINST2("lsl r0, r1, #0", 0x1, r0, r1, cv); 311 TESTINST2("lsl r0, r1, #1", 0x1, r0, r1, cv); 312 TESTINST2("lsl r0, r1, #31", 0x1, r0, r1, cv); 313 TESTINST2("lsl r0, r1, #31", 0x2, r0, r1, cv); 314 TESTCARRYEND 315 316 printf("LSLS immediate\n"); 317 TESTCARRY 318 TESTINST2("lsls r0, r1, #0", 0xffffffff, r0, r1, cv); 319 TESTINST2("lsls r0, r1, #1", 0xffffffff, r0, r1, cv); 320 TESTINST2("lsls r0, r1, #31", 0xffffffff, r0, r1, cv); 321 TESTINST2("lsls r0, r1, #0", 0x1, r0, r1, cv); 322 TESTINST2("lsls r0, r1, #1", 0x1, r0, r1, cv); 323 TESTINST2("lsls r0, r1, #31", 0x1, r0, r1, cv); 324 TESTINST2("lsls r0, r1, #31", 0x2, r0, r1, cv); 325 TESTCARRYEND 326 327 printf("LSR\n"); 328 TESTINST3("lsr r0, r1, r2", 0xffffffff, 0, r0, r1, r2, 0); 329 TESTINST3("lsr r0, r1, r2", 0xffffffff, 1, r0, r1, r2, 0); 330 TESTINST3("lsr r0, r1, r2", 0xffffffff, 2, r0, r1, r2, 0); 331 TESTINST3("lsr r0, r1, r2", 0xffffffff, 31, r0, r1, r2, 0); 332 TESTINST3("lsr r0, r1, r2", 0xffffffff, 32, r0, r1, r2, 0); 333 TESTINST3("lsr r0, r1, r2", 0xffffffff, 33, r0, r1, r2, 0); 334 TESTINST3("lsr r0, r1, r2", 0xffffffff, 63, r0, r1, r2, 0); 335 TESTINST3("lsr r0, r1, r2", 0xffffffff, 64, r0, r1, r2, 0); 336 TESTINST3("lsr r0, r1, r2", 0xffffffff, 255, r0, r1, r2, 0); 337 TESTINST3("lsr r0, r1, r2", 0xffffffff, 256, r0, r1, r2, 0); 338 339 printf("LSRS\n"); 340 TESTCARRY 341 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 0, r0, r1, r2, cv); 342 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 1, r0, r1, r2, cv); 343 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 2, r0, r1, r2, cv); 344 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 31, r0, r1, r2, cv); 345 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 32, r0, r1, r2, cv); 346 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 33, r0, r1, r2, cv); 347 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 63, r0, r1, r2, cv); 348 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 64, r0, r1, r2, cv); 349 TESTINST3("lsrs r0, r1, r2", 0xffffffff, 255, r0, r1, r2, cv); 350 TESTCARRYEND 351 352 printf("LSR immediate\n"); 353 TESTINST2("lsr r0, r1, #0", 0xffffffff, r0, r1, 0); 354 TESTINST2("lsr r0, r1, #1", 0xffffffff, r0, r1, 0); 355 TESTINST2("lsr r0, r1, #31", 0xffffffff, r0, r1, 0); 356 TESTINST2("lsr r0, r1, #32", 0xffffffff, r0, r1, 0); 357 TESTINST2("lsr r0, r1, #16", 0x00010000, r0, r1, 0); 358 TESTINST2("lsr r0, r1, #17", 0x00010000, r0, r1, 0); 359 TESTINST2("lsr r0, r1, #18", 0x00010000, r0, r1, 0); 360 361 printf("LSRS immediate\n"); 362 TESTCARRY 363 TESTINST2("lsrs r0, r1, #0", 0xffffffff, r0, r1, cv); 364 TESTINST2("lsrs r0, r1, #1", 0xffffffff, r0, r1, cv); 365 TESTINST2("lsrs r0, r1, #31", 0xffffffff, r0, r1, cv); 366 TESTINST2("lsrs r0, r1, #32", 0xffffffff, r0, r1, cv); 367 TESTINST2("lsrs r0, r1, #16", 0x00010000, r0, r1, cv); 368 TESTINST2("lsrs r0, r1, #17", 0x00010000, r0, r1, cv); 369 TESTINST2("lsrs r0, r1, #18", 0x00010000, r0, r1, cv); 370 TESTCARRYEND 371 372 printf("ASR\n"); 373 TESTCARRY 374 TESTINST3("asr r0, r1, r2", 0xffffffff, 0, r0, r1, r2, cv); 375 TESTINST3("asr r0, r1, r2", 0xffffffff, 1, r0, r1, r2, cv); 376 TESTINST3("asr r0, r1, r2", 0xffffffff, 2, r0, r1, r2, cv); 377 TESTINST3("asr r0, r1, r2", 0xffffffff, 31, r0, r1, r2, cv); 378 TESTINST3("asr r0, r1, r2", 0xffffffff, 32, r0, r1, r2, cv); 379 TESTINST3("asr r0, r1, r2", 0xffffffff, 33, r0, r1, r2, cv); 380 TESTINST3("asr r0, r1, r2", 0xffffffff, 63, r0, r1, r2, cv); 381 TESTINST3("asr r0, r1, r2", 0xffffffff, 64, r0, r1, r2, cv); 382 TESTINST3("asr r0, r1, r2", 0xffffffff, 255, r0, r1, r2, cv); 383 TESTINST3("asr r0, r1, r2", 0xffffffff, 256, r0, r1, r2, cv); 384 TESTINST3("asr r0, r1, r2", 0x7fffffff, 0, r0, r1, r2, cv); 385 TESTINST3("asr r0, r1, r2", 0x7fffffff, 1, r0, r1, r2, cv); 386 TESTINST3("asr r0, r1, r2", 0x7fffffff, 2, r0, r1, r2, cv); 387 TESTINST3("asr r0, r1, r2", 0x7fffffff, 31, r0, r1, r2, cv); 388 TESTINST3("asr r0, r1, r2", 0x7fffffff, 32, r0, r1, r2, cv); 389 TESTINST3("asr r0, r1, r2", 0x7fffffff, 33, r0, r1, r2, cv); 390 TESTINST3("asr r0, r1, r2", 0x7fffffff, 63, r0, r1, r2, cv); 391 TESTINST3("asr r0, r1, r2", 0x7fffffff, 64, r0, r1, r2, cv); 392 TESTINST3("asr r0, r1, r2", 0x7fffffff, 255, r0, r1, r2, cv); 393 TESTINST3("asr r0, r1, r2", 0x7fffffff, 256, r0, r1, r2, cv); 394 TESTCARRYEND 395 396 printf("ASRS\n"); 397 TESTCARRY 398 TESTINST3("asrs r0, r1, r2", 0xffffffff, 0, r0, r1, r2, cv); 399 TESTINST3("asrs r0, r1, r2", 0xffffffff, 1, r0, r1, r2, cv); 400 TESTINST3("asrs r0, r1, r2", 0xffffffff, 2, r0, r1, r2, cv); 401 TESTINST3("asrs r0, r1, r2", 0xffffffff, 31, r0, r1, r2, cv); 402 TESTINST3("asrs r0, r1, r2", 0xffffffff, 32, r0, r1, r2, cv); 403 TESTINST3("asrs r0, r1, r2", 0xffffffff, 33, r0, r1, r2, cv); 404 TESTINST3("asrs r0, r1, r2", 0xffffffff, 63, r0, r1, r2, cv); 405 TESTINST3("asrs r0, r1, r2", 0xffffffff, 64, r0, r1, r2, cv); 406 TESTINST3("asrs r0, r1, r2", 0xffffffff, 255, r0, r1, r2, cv); 407 TESTINST3("asrs r0, r1, r2", 0xffffffff, 256, r0, r1, r2, cv); 408 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 0, r0, r1, r2, cv); 409 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 1, r0, r1, r2, cv); 410 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 2, r0, r1, r2, cv); 411 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 31, r0, r1, r2, cv); 412 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 32, r0, r1, r2, cv); 413 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 33, r0, r1, r2, cv); 414 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 63, r0, r1, r2, cv); 415 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 64, r0, r1, r2, cv); 416 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 255, r0, r1, r2, cv); 417 TESTINST3("asrs r0, r1, r2", 0x7fffffff, 256, r0, r1, r2, cv); 418 TESTCARRYEND 419 420 TESTCARRY 421 TESTINST3("asrs r0, r1, r2", 0x8, 0, r0, r1, r2, cv); 422 TESTINST3("asrs r0, r1, r2", 0x8, 1, r0, r1, r2, cv); 423 TESTINST3("asrs r0, r1, r2", 0x8, 2, r0, r1, r2, cv); 424 TESTINST3("asrs r0, r1, r2", 0x8, 3, r0, r1, r2, cv); 425 TESTINST3("asrs r0, r1, r2", 0x8, 4, r0, r1, r2, cv); 426 TESTINST3("asrs r0, r1, r2", 0x8, 5, r0, r1, r2, cv); 427 TESTCARRYEND 428 429 TESTINST3("asrs r0, r1, r2", 0x80000001, 1, r0, r1, r2, 0); 430 TESTINST3("asrs r0, r1, r2", 0x80000001, 2, r0, r1, r2, 0); 431 432 printf("ASR immediate\n"); 433 TESTINST2("asr r0, r1, #0", 0xffffffff, r0, r1, 0); 434 TESTINST2("asr r0, r1, #1", 0xffffffff, r0, r1, 0); 435 TESTINST2("asr r0, r1, #31", 0xffffffff, r0, r1, 0); 436 TESTINST2("asr r0, r1, #32", 0xffffffff, r0, r1, 0); 437 TESTINST2("asr r0, r1, #0", 0x7fffffff, r0, r1, 0); 438 TESTINST2("asr r0, r1, #1", 0x7fffffff, r0, r1, 0); 439 TESTINST2("asr r0, r1, #31", 0x7fffffff, r0, r1, 0); 440 TESTINST2("asr r0, r1, #32", 0x7fffffff, r0, r1, 0); 441 TESTINST2("asr r0, r1, #16", 0x00010000, r0, r1, 0); 442 TESTINST2("asr r0, r1, #17", 0x00010000, r0, r1, 0); 443 TESTINST2("asr r0, r1, #18", 0x00010000, r0, r1, 0); 444 445 printf("ASRS immediate\n"); 446 TESTCARRY 447 TESTINST2("asrs r0, r1, #0", 0xffffffff, r0, r1, cv); 448 TESTINST2("asrs r0, r1, #1", 0xffffffff, r0, r1, cv); 449 TESTINST2("asrs r0, r1, #31", 0xffffffff, r0, r1, cv); 450 TESTINST2("asrs r0, r1, #32", 0xffffffff, r0, r1, cv); 451 TESTINST2("asrs r0, r1, #0", 0x7fffffff, r0, r1, cv); 452 TESTINST2("asrs r0, r1, #1", 0x7fffffff, r0, r1, cv); 453 TESTINST2("asrs r0, r1, #31", 0x7fffffff, r0, r1, cv); 454 TESTINST2("asrs r0, r1, #32", 0x7fffffff, r0, r1, cv); 455 TESTINST2("asrs r0, r1, #16", 0x00010000, r0, r1, cv); 456 TESTINST2("asrs r0, r1, #17", 0x00010000, r0, r1, cv); 457 TESTINST2("asrs r0, r1, #18", 0x00010000, r0, r1, cv); 458 TESTCARRYEND 459 460 #if 0 461 printf("ROR\n"); 462 TESTCARRY 463 TESTINST3("ror r0, r1, r2", 0x00088000, 0, r0, r1, r2, cv); 464 TESTINST3("ror r0, r1, r2", 0x80088000, 1, r0, r1, r2, cv); 465 TESTINST3("ror r0, r1, r2", 0x00088000, 1, r0, r1, r2, cv); 466 TESTINST3("ror r0, r1, r2", 0x00088000, 2, r0, r1, r2, cv); 467 TESTINST3("ror r0, r1, r2", 0x00088000, 31, r0, r1, r2, cv); 468 TESTINST3("ror r0, r1, r2", 0x00088000, 32, r0, r1, r2, cv); 469 TESTINST3("ror r0, r1, r2", 0x00088000, 33, r0, r1, r2, cv); 470 TESTINST3("ror r0, r1, r2", 0x00088000, 63, r0, r1, r2, cv); 471 TESTINST3("ror r0, r1, r2", 0x00088000, 64, r0, r1, r2, cv); 472 TESTINST3("ror r0, r1, r2", 0x00088000, 255, r0, r1, r2, cv); 473 TESTINST3("ror r0, r1, r2", 0x00088000, 256, r0, r1, r2, cv); 474 TESTINST3("ror r0, r1, r2", 0x80088000, 256, r0, r1, r2, cv); 475 TESTINST3("ror r0, r1, r2", 0x00088000, 257, r0, r1, r2, cv); 476 TESTCARRYEND 477 478 printf("RORS\n"); 479 TESTCARRY 480 TESTINST3("rors r0, r1, r2", 0x00088000, 0, r0, r1, r2, cv); 481 TESTINST3("rors r0, r1, r2", 0x80088000, 0, r0, r1, r2, cv); 482 TESTINST3("rors r0, r1, r2", 0x00088000, 1, r0, r1, r2, cv); 483 TESTINST3("rors r0, r1, r2", 0x00088000, 2, r0, r1, r2, cv); 484 TESTINST3("rors r0, r1, r2", 0x00088000, 31, r0, r1, r2, cv); 485 TESTINST3("rors r0, r1, r2", 0x00088000, 32, r0, r1, r2, cv); 486 TESTINST3("rors r0, r1, r2", 0x00088000, 33, r0, r1, r2, cv); 487 TESTINST3("rors r0, r1, r2", 0x00088000, 63, r0, r1, r2, cv); 488 TESTINST3("rors r0, r1, r2", 0x00088000, 64, r0, r1, r2, cv); 489 TESTINST3("rors r0, r1, r2", 0x00088000, 255, r0, r1, r2, cv); 490 TESTINST3("rors r0, r1, r2", 0x00088000, 256, r0, r1, r2, cv); 491 TESTINST3("rors r0, r1, r2", 0x80088000, 256, r0, r1, r2, cv); 492 TESTINST3("rors r0, r1, r2", 0x00088000, 257, r0, r1, r2, cv); 493 TESTCARRYEND 494 495 printf("ROR immediate\n"); 496 TESTCARRY 497 TESTINST2("ror r0, r1, #0", 0x00088000, r0, r1, cv); 498 TESTINST2("ror r0, r1, #1", 0x00088000, r0, r1, cv); 499 TESTINST2("ror r0, r1, #31", 0x00088000, r0, r1, cv); 500 TESTINST2("ror r0, r1, #16", 0x00010000, r0, r1, cv); 501 TESTINST2("ror r0, r1, #17", 0x00010000, r0, r1, cv); 502 TESTINST2("ror r0, r1, #18", 0x00010000, r0, r1, cv); 503 TESTCARRYEND 504 505 printf("RORS immediate\n"); 506 TESTCARRY 507 TESTINST2("rors r0, r1, #0", 0x00088000, r0, r1, cv); 508 TESTINST2("rors r0, r1, #1", 0x00088000, r0, r1, cv); 509 TESTINST2("rors r0, r1, #31", 0x00088000, r0, r1, cv); 510 TESTINST2("rors r0, r1, #16", 0x00010000, r0, r1, cv); 511 TESTINST2("rors r0, r1, #17", 0x00010000, r0, r1, cv); 512 TESTINST2("rors r0, r1, #18", 0x00010000, r0, r1, cv); 513 TESTCARRYEND 514 #endif 515 #if 0 516 printf("shift with barrel shifter\n"); 517 TESTCARRY 518 TESTINST4("add r0, r1, r2, lsl r3", 0, 0xffffffff, 0, r0, r1, r2, r3, cv); 519 TESTINST4("add r0, r1, r2, lsl r3", 0, 0xffffffff, 1, r0, r1, r2, r3, cv); 520 TESTINST4("add r0, r1, r2, lsl r3", 0, 0xffffffff, 31, r0, r1, r2, r3, cv); 521 TESTINST4("add r0, r1, r2, lsl r3", 0, 0xffffffff, 32, r0, r1, r2, r3, cv); 522 TESTINST4("add r0, r1, r2, lsl r3", 0, 0xffffffff, 255, r0, r1, r2, r3, cv); 523 TESTINST4("add r0, r1, r2, lsl r3", 0, 0xffffffff, 256, r0, r1, r2, r3, cv); 524 TESTINST4("add r0, r1, r2, lsr r3", 0, 0xffffffff, 0, r0, r1, r2, r3, cv); 525 TESTINST4("add r0, r1, r2, lsr r3", 0, 0xffffffff, 1, r0, r1, r2, r3, cv); 526 TESTINST4("add r0, r1, r2, lsr r3", 0, 0xffffffff, 31, r0, r1, r2, r3, cv); 527 TESTINST4("add r0, r1, r2, lsr r3", 0, 0xffffffff, 32, r0, r1, r2, r3, cv); 528 TESTINST4("add r0, r1, r2, lsr r3", 0, 0xffffffff, 255, r0, r1, r2, r3, cv); 529 TESTINST4("add r0, r1, r2, lsr r3", 0, 0xffffffff, 256, r0, r1, r2, r3, cv); 530 TESTINST4("add r0, r1, r2, asr r3", 0, 0x7fffffff, 0, r0, r1, r2, r3, cv); 531 TESTINST4("add r0, r1, r2, asr r3", 0, 0x7fffffff, 1, r0, r1, r2, r3, cv); 532 TESTINST4("add r0, r1, r2, asr r3", 0, 0x7fffffff, 31, r0, r1, r2, r3, cv); 533 TESTINST4("add r0, r1, r2, asr r3", 0, 0x7fffffff, 32, r0, r1, r2, r3, cv); 534 TESTINST4("add r0, r1, r2, asr r3", 0, 0x7fffffff, 255, r0, r1, r2, r3, cv); 535 TESTINST4("add r0, r1, r2, asr r3", 0, 0x7fffffff, 256, r0, r1, r2, r3, cv); 536 TESTINST4("add r0, r1, r2, lsr r3", 0, 0xffffffff, 256, r0, r1, r2, r3, cv); 537 TESTCARRYEND 538 539 TESTCARRY 540 TESTINST4("add r0, r1, r2, asr r3", 0, 0x8, 0, r0, r1, r2, r3, cv); 541 TESTINST4("add r0, r1, r2, asr r3", 0, 0x8, 1, r0, r1, r2, r3, cv); 542 TESTINST4("add r0, r1, r2, asr r3", 0, 0x8, 2, r0, r1, r2, r3, cv); 543 TESTINST4("add r0, r1, r2, asr r3", 0, 0x8, 3, r0, r1, r2, r3, cv); 544 TESTINST4("add r0, r1, r2, asr r3", 0, 0x8, 4, r0, r1, r2, r3, cv); 545 TESTINST4("add r0, r1, r2, asr r3", 0, 0x8, 5, r0, r1, r2, r3, cv); 546 TESTCARRYEND 547 548 TESTCARRY 549 TESTINST4("add r0, r1, r2, ror r3", 0, 0x00088000, 0, r0, r1, r2, r3, cv); 550 TESTINST4("add r0, r1, r2, ror r3", 0, 0x80088000, 0, r0, r1, r2, r3, cv); 551 TESTINST4("add r0, r1, r2, ror r3", 0, 0x00088000, 1, r0, r1, r2, r3, cv); 552 TESTINST4("add r0, r1, r2, ror r3", 0, 0x00088000, 31, r0, r1, r2, r3, cv); 553 TESTINST4("add r0, r1, r2, ror r3", 0, 0x00088000, 32, r0, r1, r2, r3, cv); 554 TESTINST4("add r0, r1, r2, ror r3", 0, 0x00088000, 255, r0, r1, r2, r3, cv); 555 TESTINST4("add r0, r1, r2, ror r3", 0, 0x00088000, 256, r0, r1, r2, r3, cv); 556 TESTINST4("add r0, r1, r2, ror r3", 0, 0x80088000, 256, r0, r1, r2, r3, cv); 557 TESTINST4("add r0, r1, r2, ror r3", 0, 0x00088000, 257, r0, r1, r2, r3, cv); 558 TESTCARRYEND 559 #endif 560 #if 0 561 TESTCARRY 562 TESTINST4("adds r0, r1, r2, lsl r3", 0, 0xffffffff, 0, r0, r1, r2, r3, cv); 563 TESTINST4("adds r0, r1, r2, lsl r3", 0, 0xffffffff, 1, r0, r1, r2, r3, cv); 564 TESTINST4("adds r0, r1, r2, lsl r3", 0, 0xffffffff, 31, r0, r1, r2, r3, cv); 565 TESTINST4("adds r0, r1, r2, lsl r3", 0, 0xffffffff, 32, r0, r1, r2, r3, cv); 566 TESTINST4("adds r0, r1, r2, lsl r3", 0, 0xffffffff, 255, r0, r1, r2, r3, cv); 567 TESTINST4("adds r0, r1, r2, lsl r3", 0, 0xffffffff, 256, r0, r1, r2, r3, cv); 568 TESTINST4("adds r0, r1, r2, lsr r3", 0, 0xffffffff, 0, r0, r1, r2, r3, cv); 569 TESTINST4("adds r0, r1, r2, lsr r3", 0, 0xffffffff, 1, r0, r1, r2, r3, cv); 570 TESTINST4("adds r0, r1, r2, lsr r3", 0, 0xffffffff, 31, r0, r1, r2, r3, cv); 571 TESTINST4("adds r0, r1, r2, lsr r3", 0, 0xffffffff, 32, r0, r1, r2, r3, cv); 572 TESTINST4("adds r0, r1, r2, lsr r3", 0, 0xffffffff, 255, r0, r1, r2, r3, cv); 573 TESTINST4("adds r0, r1, r2, lsr r3", 0, 0xffffffff, 256, r0, r1, r2, r3, cv); 574 575 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x00088000, 0, r0, r1, r2, r3, cv); 576 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x80088000, 0, r0, r1, r2, r3, cv); 577 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x00088000, 1, r0, r1, r2, r3, cv); 578 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x00088000, 31, r0, r1, r2, r3, cv); 579 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x00088000, 32, r0, r1, r2, r3, cv); 580 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x00088000, 255, r0, r1, r2, r3, cv); 581 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x00088000, 256, r0, r1, r2, r3, cv); 582 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x80088000, 256, r0, r1, r2, r3, cv); 583 TESTINST4("adds r0, r1, r2, ror r3", 0, 0x00088000, 257, r0, r1, r2, r3, cv); 584 TESTCARRYEND 585 #endif 586 587 #if 0 588 TESTCARRY 589 TESTINST4("adcs r0, r1, r2, lsl r3", 0, 0xffffffff, 0, r0, r1, r2, r3, cv); 590 TESTINST4("adcs r0, r1, r2, lsr r3", 0, 0xffffffff, 0, r0, r1, r2, r3, cv); 591 TESTINST4("adcs r0, r1, r2, lsl r3", 0, 0xffffffff, 1, r0, r1, r2, r3, cv); 592 TESTINST4("adcs r0, r1, r2, lsr r3", 0, 0xffffffff, 1, r0, r1, r2, r3, cv); 593 TESTCARRYEND 594 #endif 595 596 printf("MUL\n"); 597 TESTINST3("mul r0, r1, r2", 0, 0, r0, r1, r2, 0); 598 TESTINST3("mul r0, r1, r2", 0xffffffff, 0, r0, r1, r2, 0); 599 TESTINST3("mul r0, r1, r2", 0, 0xffffffff, r0, r1, r2, 0); 600 TESTINST3("mul r0, r1, r2", 0xffffffff, 0xffffffff, r0, r1, r2, 0); 601 TESTINST3("mul r0, r1, r2", 0x7fffffff, 0x7fffffff, r0, r1, r2, 0); 602 TESTINST3("mul r0, r1, r2", 0x0000ffff, 0x0000ffff, r0, r1, r2, 0); 603 604 #if 0 605 printf("MULS\n"); 606 TESTINST3("muls r0, r1, r2", 0, 0, r0, r1, r2, 0); 607 TESTINST3("muls r0, r1, r2", 0xffffffff, 0, r0, r1, r2, 0); 608 TESTINST3("muls r0, r1, r2", 0, 0xffffffff, r0, r1, r2, 0); 609 TESTINST3("muls r0, r1, r2", 0xffffffff, 0xffffffff, r0, r1, r2, 0); 610 TESTINST3("muls r0, r1, r2", 0x7fffffff, 0x7fffffff, r0, r1, r2, 0); 611 TESTINST3("muls r0, r1, r2", 0x0000ffff, 0x0000ffff, r0, r1, r2, 0); 612 #endif 613 614 printf("MLA\n"); 615 TESTINST4("mla r0, r1, r2, r3", 0, 0, 1, r0, r1, r2, r3, 0); 616 TESTINST4("mla r0, r1, r2, r3", 0xffffffff, 0, 1, r0, r1, r2, r3, 0); 617 TESTINST4("mla r0, r1, r2, r3", 0, 0xffffffff, 1, r0, r1, r2, r3, 0); 618 TESTINST4("mla r0, r1, r2, r3", 0xffffffff, 0xffffffff, 1, r0, r1, r2, r3, 0); 619 TESTINST4("mla r0, r1, r2, r3", 0x7fffffff, 0x7fffffff, 1, r0, r1, r2, r3, 0); 620 TESTINST4("mla r0, r1, r2, r3", 0x0000ffff, 0x0000ffff, 1, r0, r1, r2, r3, 0); 621 622 #if 0 623 printf("MLAS\n"); 624 TESTINST4("mlas r0, r1, r2, r3", 0, 0, 1, r0, r1, r2, r3, 0); 625 TESTINST4("mlas r0, r1, r2, r3", 0xffffffff, 0, 1, r0, r1, r2, r3, 0); 626 TESTINST4("mlas r0, r1, r2, r3", 0, 0xffffffff, 1, r0, r1, r2, r3, 0); 627 TESTINST4("mlas r0, r1, r2, r3", 0xffffffff, 0xffffffff, 1, r0, r1, r2, r3, 0); 628 TESTINST4("mlas r0, r1, r2, r3", 0x7fffffff, 0x7fffffff, 1, r0, r1, r2, r3, 0); 629 TESTINST4("mlas r0, r1, r2, r3", 0x0000ffff, 0x0000ffff, 1, r0, r1, r2, r3, 0); 630 #endif 631 632 printf("MLS\n"); 633 TESTINST4("mls r0, r1, r2, r3", 0, 0, 1, r0, r1, r2, r3, 0); 634 TESTINST4("mls r0, r1, r2, r3", 0xffffffff, 0, 1, r0, r1, r2, r3, 0); 635 TESTINST4("mls r0, r1, r2, r3", 0, 0xffffffff, 1, r0, r1, r2, r3, 0); 636 TESTINST4("mls r0, r1, r2, r3", 0xffffffff, 0xffffffff, 1, r0, r1, r2, r3, 0); 637 TESTINST4("mls r0, r1, r2, r3", 0x7fffffff, 0x7fffffff, 1, r0, r1, r2, r3, 0); 638 TESTINST4("mls r0, r1, r2, r3", 0x0000ffff, 0x0000ffff, 1, r0, r1, r2, r3, 0); 639 640 printf("UMULL\n"); 641 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 642 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 643 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 644 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 645 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 646 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 647 #if 0 648 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 649 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 650 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 651 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 652 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 653 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 654 #endif 655 printf("SMULL\n"); 656 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 657 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 658 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 659 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 660 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 661 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 662 #if 0 663 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 664 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 665 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 666 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 667 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 668 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 669 #endif 670 671 #if 0 672 printf("UMLAL\n"); 673 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 674 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 1, 0, 0, r0, r1, r2, r3, 0); 675 TESTINST4_2OUT("umlal r0, r1, r2, r3", 1, 1, 0, 0, r0, r1, r2, r3, 0); 676 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0xffffffff, 1, 1, r0, r1, r2, r3, 0); 677 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 678 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 679 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 680 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 681 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 682 #endif 683 #if 0 684 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 685 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 1, 0, 0, r0, r1, r2, r3, 0); 686 TESTINST4_2OUT("umlals r0, r1, r2, r3", 1, 1, 0, 0, r0, r1, r2, r3, 0); 687 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0xffffffff, 1, 1, r0, r1, r2, r3, 0); 688 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 689 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 690 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 691 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 692 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 693 #endif 694 #if 0 695 printf("SMLAL\n"); 696 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 697 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 1, 0, 0, r0, r1, r2, r3, 0); 698 TESTINST4_2OUT("smlal r0, r1, r2, r3", 1, 1, 0, 0, r0, r1, r2, r3, 0); 699 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0xffffffff, 1, 1, r0, r1, r2, r3, 0); 700 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 701 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 702 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 703 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 704 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 705 #endif 706 #if 0 707 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 708 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 1, 0, 0, r0, r1, r2, r3, 0); 709 TESTINST4_2OUT("smlals r0, r1, r2, r3", 1, 1, 0, 0, r0, r1, r2, r3, 0); 710 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0xffffffff, 1, 1, r0, r1, r2, r3, 0); 711 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 712 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 713 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 714 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 715 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 716 #endif 717 printf("CLZ\n"); 718 TESTCARRY 719 TESTINST2("clz r0, r1", 0, r0, r1, cv); 720 TESTINST2("clz r0, r1", 1, r0, r1, cv); 721 TESTINST2("clz r0, r1", 0x10, r0, r1, cv); 722 TESTINST2("clz r0, r1", 0xffffffff, r0, r1, cv); 723 TESTCARRYEND 724 725 printf("extend instructions\n"); 726 TESTINST2("uxtb r0, r1", 0, r0, r1, 0); 727 TESTINST2("uxtb r0, r1", 1, r0, r1, 0); 728 TESTINST2("uxtb r0, r1", 0xff, r0, r1, 0); 729 TESTINST2("uxtb r0, r1", 0xffffffff, r0, r1, 0); 730 TESTINST2("sxtb r0, r1", 0, r0, r1, 0); 731 TESTINST2("sxtb r0, r1", 1, r0, r1, 0); 732 TESTINST2("sxtb r0, r1", 0xff, r0, r1, 0); 733 TESTINST2("sxtb r0, r1", 0xffffffff, r0, r1, 0); 734 735 TESTINST2("uxth r0, r1", 0, r0, r1, 0); 736 TESTINST2("uxth r0, r1", 1, r0, r1, 0); 737 TESTINST2("uxth r0, r1", 0xffff, r0, r1, 0); 738 TESTINST2("uxth r0, r1", 0xffffffff, r0, r1, 0); 739 TESTINST2("sxth r0, r1", 0, r0, r1, 0); 740 TESTINST2("sxth r0, r1", 1, r0, r1, 0); 741 TESTINST2("sxth r0, r1", 0x7fff, r0, r1, 0); 742 TESTINST2("sxth r0, r1", 0xffff, r0, r1, 0); 743 TESTINST2("sxth r0, r1", 0x10ffff, r0, r1, 0); 744 TESTINST2("sxth r0, r1", 0x107fff, r0, r1, 0); 745 TESTINST2("sxth r0, r1", 0xffffffff, r0, r1, 0); 746 747 TESTINST2("uxtb r0, r1, ror #0", 0x000000ff, r0, r1, 0); 748 TESTINST2("uxtb r0, r1, ror #8", 0x000000ff, r0, r1, 0); 749 TESTINST2("uxtb r0, r1, ror #8", 0x0000ff00, r0, r1, 0); 750 TESTINST2("uxtb r0, r1, ror #16", 0x00ff0000, r0, r1, 0); 751 TESTINST2("uxtb r0, r1, ror #24", 0xff000000, r0, r1, 0); 752 #if 0 753 TESTINST2("uxtb16 r0, r1", 0xffffffff, r0, r1, 0); 754 TESTINST2("uxtb16 r0, r1, ror #16", 0x0000ffff, r0, r1, 0); 755 TESTINST2("sxtb16 r0, r1", 0xffffffff, r0, r1, 0); 756 TESTINST2("sxtb16 r0, r1", 0x00ff00ff, r0, r1, 0); 757 TESTINST2("sxtb16 r0, r1", 0x007f007f, r0, r1, 0); 758 #endif 759 printf("------------ BFI ------------\n"); 760 761 /* bfi rDst, rSrc, #lsb-in-dst, #number-of-bits-to-copy */ 762 TESTINST2("bfi r0, r1, #0, #11", 0xAAAAAAAA, r0, r1, 0); 763 TESTINST2("bfi r0, r1, #1, #11", 0xAAAAAAAA, r0, r1, 0); 764 TESTINST2("bfi r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0); 765 766 TESTINST2("bfi r0, r1, #19, #11", 0xFFFFFFFF, r0, r1, 0); 767 TESTINST2("bfi r0, r1, #20, #11", 0xFFFFFFFF, r0, r1, 0); 768 TESTINST2("bfi r0, r1, #21, #11", 0xFFFFFFFF, r0, r1, 0); 769 770 TESTINST2("bfi r0, r1, #0, #32", 0xFFFFFFFF, r0, r1, 0); 771 TESTINST2("bfi r0, r1, #1, #31", 0xFFFFFFFF, r0, r1, 0); 772 773 TESTINST2("bfi r0, r1, #29, #3", 0xFFFFFFFF, r0, r1, 0); 774 TESTINST2("bfi r0, r1, #30, #2", 0xFFFFFFFF, r0, r1, 0); 775 TESTINST2("bfi r0, r1, #31, #1", 0xFFFFFFFF, r0, r1, 0); 776 777 printf("------------ BFC ------------\n"); 778 779 /* bfi rDst, #lsb-in-dst, #number-of-bits-to-copy */ 780 TESTINST2("bfc r0, #0, #11", 0xAAAAAAAA, r0, r1, 0); 781 TESTINST2("bfc r0, #1, #11", 0xAAAAAAAA, r0, r1, 0); 782 TESTINST2("bfc r0, #2, #11", 0xAAAAAAAA, r0, r1, 0); 783 784 TESTINST2("bfc r0, #19, #11", 0xFFFFFFFF, r0, r1, 0); 785 TESTINST2("bfc r0, #20, #11", 0xFFFFFFFF, r0, r1, 0); 786 TESTINST2("bfc r0, #21, #11", 0xFFFFFFFF, r0, r1, 0); 787 788 TESTINST2("bfc r0, #0, #32", 0xFFFFFFFF, r0, r1, 0); 789 TESTINST2("bfc r0, #1, #31", 0xFFFFFFFF, r0, r1, 0); 790 791 TESTINST2("bfc r0, #29, #3", 0xFFFFFFFF, r0, r1, 0); 792 TESTINST2("bfc r0, #30, #2", 0xFFFFFFFF, r0, r1, 0); 793 TESTINST2("bfc r0, #31, #1", 0xFFFFFFFF, r0, r1, 0); 794 795 printf("------------ SBFX ------------\n"); 796 797 /* sbfx rDst, rSrc, #lsb, #width */ 798 TESTINST2("sbfx r0, r1, #0, #1", 0x00000000, r0, r1, 0); 799 TESTINST2("sbfx r0, r1, #0, #1", 0x00000001, r0, r1, 0); 800 TESTINST2("sbfx r0, r1, #1, #1", 0x00000000, r0, r1, 0); 801 TESTINST2("sbfx r0, r1, #1, #1", 0x00000001, r0, r1, 0); 802 TESTINST2("sbfx r0, r1, #1, #1", 0x00000002, r0, r1, 0); 803 TESTINST2("sbfx r0, r1, #1, #1", 0x00000003, r0, r1, 0); 804 805 TESTINST2("sbfx r0, r1, #0, #2", 0x00000000, r0, r1, 0); 806 TESTINST2("sbfx r0, r1, #0, #2", 0x00000001, r0, r1, 0); 807 TESTINST2("sbfx r0, r1, #1, #2", 0x00000000, r0, r1, 0); 808 TESTINST2("sbfx r0, r1, #1, #2", 0x00000001, r0, r1, 0); 809 TESTINST2("sbfx r0, r1, #1, #2", 0x00000002, r0, r1, 0); 810 TESTINST2("sbfx r0, r1, #1, #2", 0x00000003, r0, r1, 0); 811 812 TESTINST2("sbfx r0, r1, #0, #11", 0xAAAAAAAA, r0, r1, 0); 813 TESTINST2("sbfx r0, r1, #1, #11", 0xAAAAAAAA, r0, r1, 0); 814 TESTINST2("sbfx r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0); 815 816 TESTINST2("sbfx r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0); 817 818 TESTINST2("sbfx r0, r1, #31, #1", 0xAAAAAAAA, r0, r1, 0); 819 TESTINST2("sbfx r0, r1, #30, #2", 0xAAAAAAAA, r0, r1, 0); 820 821 printf("------------ UBFX ------------\n"); 822 823 /* ubfx rDst, rSrc, #lsb, #width */ 824 TESTINST2("ubfx r0, r1, #0, #1", 0x00000000, r0, r1, 0); 825 TESTINST2("ubfx r0, r1, #0, #1", 0x00000001, r0, r1, 0); 826 TESTINST2("ubfx r0, r1, #1, #1", 0x00000000, r0, r1, 0); 827 TESTINST2("ubfx r0, r1, #1, #1", 0x00000001, r0, r1, 0); 828 TESTINST2("ubfx r0, r1, #1, #1", 0x00000002, r0, r1, 0); 829 TESTINST2("ubfx r0, r1, #1, #1", 0x00000003, r0, r1, 0); 830 831 TESTINST2("ubfx r0, r1, #0, #2", 0x00000000, r0, r1, 0); 832 TESTINST2("ubfx r0, r1, #0, #2", 0x00000001, r0, r1, 0); 833 TESTINST2("ubfx r0, r1, #1, #2", 0x00000000, r0, r1, 0); 834 TESTINST2("ubfx r0, r1, #1, #2", 0x00000001, r0, r1, 0); 835 TESTINST2("ubfx r0, r1, #1, #2", 0x00000002, r0, r1, 0); 836 TESTINST2("ubfx r0, r1, #1, #2", 0x00000003, r0, r1, 0); 837 838 TESTINST2("ubfx r0, r1, #0, #11", 0xAAAAAAAA, r0, r1, 0); 839 TESTINST2("ubfx r0, r1, #1, #11", 0xAAAAAAAA, r0, r1, 0); 840 TESTINST2("ubfx r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0); 841 842 TESTINST2("ubfx r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0); 843 844 TESTINST2("ubfx r0, r1, #31, #1", 0xAAAAAAAA, r0, r1, 0); 845 TESTINST2("ubfx r0, r1, #30, #2", 0xAAAAAAAA, r0, r1, 0); 846 847 printf("------------ SMULL{B,T}{B,T} ------------\n"); 848 /* SMULxx rD, rN, rM */ 849 850 TESTINST3("smulbb r0, r1, r2", 0x00030000, 0x00040000, r0, r1, r2, 0); 851 TESTINST3("smulbb r0, r1, r2", 0x00030001, 0x00040002, r0, r1, r2, 0); 852 TESTINST3("smulbb r0, r1, r2", 0x00038001, 0x00047fff, r0, r1, r2, 0); 853 TESTINST3("smulbb r0, r1, r2", 0x00037fff, 0x00047fff, r0, r1, r2, 0); 854 TESTINST3("smulbb r0, r1, r2", 0x0003ffff, 0x0004ffff, r0, r1, r2, 0); 855 856 printf("------------ SXTAB ------------\n"); 857 TESTINST3("sxtab r0, r1, r2, ROR #24", 0x31415927, 0x27182819, 858 r0, r1, r2, 0); 859 TESTINST3("sxtab r0, r1, r2, ROR #16", 0x31415927, 0x27182819, 860 r0, r1, r2, 0); 861 TESTINST3("sxtab r0, r1, r2, ROR #8", 0x31415927, 0x27182819, 862 r0, r1, r2, 0); 863 TESTINST3("sxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182819, 864 r0, r1, r2, 0); 865 866 TESTINST3("sxtab r0, r1, r2, ROR #24", 0x31415927, 0x27182899, 867 r0, r1, r2, 0); 868 TESTINST3("sxtab r0, r1, r2, ROR #16", 0x31415927, 0x27182899, 869 r0, r1, r2, 0); 870 TESTINST3("sxtab r0, r1, r2, ROR #8", 0x31415927, 0x27182899, 871 r0, r1, r2, 0); 872 TESTINST3("sxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182899, 873 r0, r1, r2, 0); 874 #if 0 875 printf("------------ SXTAB16 ------------\n"); 876 TESTINST3("sxtab16 r0, r1, r2, ROR #24", 0x31415927, 0x27182819, 877 r0, r1, r2, 0); 878 TESTINST3("sxtab16 r0, r1, r2, ROR #16", 0x31415927, 0x27182819, 879 r0, r1, r2, 0); 880 TESTINST3("sxtab16 r0, r1, r2, ROR #8", 0x31415927, 0x27182819, 881 r0, r1, r2, 0); 882 TESTINST3("sxtab16 r0, r1, r2, ROR #0", 0x31415927, 0x27182819, 883 r0, r1, r2, 0); 884 885 TESTINST3("sxtab16 r0, r1, r2, ROR #24", 0x31415927, 0x27182899, 886 r0, r1, r2, 0); 887 TESTINST3("sxtab16 r0, r1, r2, ROR #16", 0x31415927, 0x27182899, 888 r0, r1, r2, 0); 889 TESTINST3("sxtab16 r0, r1, r2, ROR #8", 0x31415927, 0x27182899, 890 r0, r1, r2, 0); 891 TESTINST3("sxtab16 r0, r1, r2, ROR #0", 0x31415927, 0x27182899, 892 r0, r1, r2, 0); 893 #endif 894 printf("------------ UXTAB ------------\n"); 895 TESTINST3("uxtab r0, r1, r2, ROR #24", 0x31415927, 0x27182819, 896 r0, r1, r2, 0); 897 TESTINST3("uxtab r0, r1, r2, ROR #16", 0x31415927, 0x27182819, 898 r0, r1, r2, 0); 899 TESTINST3("uxtab r0, r1, r2, ROR #8", 0x31415927, 0x27182819, 900 r0, r1, r2, 0); 901 TESTINST3("uxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182819, 902 r0, r1, r2, 0); 903 904 TESTINST3("uxtab r0, r1, r2, ROR #24", 0x31415927, 0x27182899, 905 r0, r1, r2, 0); 906 TESTINST3("uxtab r0, r1, r2, ROR #16", 0x31415927, 0x27182899, 907 r0, r1, r2, 0); 908 TESTINST3("uxtab r0, r1, r2, ROR #8", 0x31415927, 0x27182899, 909 r0, r1, r2, 0); 910 TESTINST3("uxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182899, 911 r0, r1, r2, 0); 912 #if 0 913 printf("------------ UXTAB16 ------------\n"); 914 TESTINST3("uxtab16 r0, r1, r2, ROR #24", 0x31415927, 0x27182819, 915 r0, r1, r2, 0); 916 TESTINST3("uxtab16 r0, r1, r2, ROR #16", 0x31415927, 0x27182819, 917 r0, r1, r2, 0); 918 TESTINST3("uxtab16 r0, r1, r2, ROR #8", 0x31415927, 0x27182819, 919 r0, r1, r2, 0); 920 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0x31415927, 0x27182819, 921 r0, r1, r2, 0); 922 923 TESTINST3("uxtab16 r0, r1, r2, ROR #24", 0x31415927, 0x27182899, 924 r0, r1, r2, 0); 925 TESTINST3("uxtab16 r0, r1, r2, ROR #16", 0x31415927, 0x27182899, 926 r0, r1, r2, 0); 927 TESTINST3("uxtab16 r0, r1, r2, ROR #8", 0x31415927, 0x27182899, 928 r0, r1, r2, 0); 929 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0x31415927, 0x27182899, 930 r0, r1, r2, 0); 931 #endif 932 printf("------------ SXTAH ------------\n"); 933 TESTINST3("sxtah r0, r1, r2, ROR #24", 0x31415927, 0x27182819, 934 r0, r1, r2, 0); 935 TESTINST3("sxtah r0, r1, r2, ROR #16", 0x31415927, 0x27182819, 936 r0, r1, r2, 0); 937 TESTINST3("sxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27182819, 938 r0, r1, r2, 0); 939 TESTINST3("sxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27182819, 940 r0, r1, r2, 0); 941 942 TESTINST3("sxtah r0, r1, r2, ROR #24", 0x31415927, 0x27189819, 943 r0, r1, r2, 0); 944 TESTINST3("sxtah r0, r1, r2, ROR #16", 0x31415927, 0x27189819, 945 r0, r1, r2, 0); 946 TESTINST3("sxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27189819, 947 r0, r1, r2, 0); 948 TESTINST3("sxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27189819, 949 r0, r1, r2, 0); 950 951 printf("------------ UXTAH ------------\n"); 952 TESTINST3("uxtah r0, r1, r2, ROR #24", 0x31415927, 0x27182819, 953 r0, r1, r2, 0); 954 TESTINST3("uxtah r0, r1, r2, ROR #16", 0x31415927, 0x27182819, 955 r0, r1, r2, 0); 956 TESTINST3("uxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27182819, 957 r0, r1, r2, 0); 958 TESTINST3("uxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27182819, 959 r0, r1, r2, 0); 960 961 TESTINST3("uxtah r0, r1, r2, ROR #24", 0x31415927, 0x27189819, 962 r0, r1, r2, 0); 963 TESTINST3("uxtah r0, r1, r2, ROR #16", 0x31415927, 0x27189819, 964 r0, r1, r2, 0); 965 TESTINST3("uxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27189819, 966 r0, r1, r2, 0); 967 TESTINST3("uxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27189819, 968 r0, r1, r2, 0); 969 #if 0 970 printf("------------ PLD/PLDW (begin) ------------\n"); 971 /* These don't have any effect on the architected state, so, 972 uh, there's no result values to check. Just _do_ some of 973 them and check Valgrind's instruction decoder eats them up 974 without complaining. */ 975 { int alocal; 976 printf("pld reg +/- imm12 cases\n"); 977 __asm__ __volatile__( "pld [%0, #128]" : :/*in*/"r"(&alocal) ); 978 __asm__ __volatile__( "pld [%0, #-128]" : :/*in*/"r"(&alocal) ); 979 __asm__ __volatile__( "pld [r15, #-128]" : :/*in*/"r"(&alocal) ); 980 981 // apparently pldw is v7 only 982 //__asm__ __volatile__( "pldw [%0, #128]" : :/*in*/"r"(&alocal) ); 983 //__asm__ __volatile__( "pldw [%0, #-128]" : :/*in*/"r"(&alocal) ); 984 //__asm__ __volatile__( "pldw [r15, #128]" : :/*in*/"r"(&alocal) ); 985 986 printf("pld reg +/- shifted reg cases\n"); 987 __asm__ __volatile__( "pld [%0, %1]" : : /*in*/"r"(&alocal), "r"(0) ); 988 __asm__ __volatile__( "pld [%0, %1, LSL #1]" : : /*in*/"r"(&alocal), "r"(0) ); 989 #if 0 990 __asm__ __volatile__( "pld [%0, %1, LSR #1]" : : /*in*/"r"(&alocal), "r"(0) ); 991 __asm__ __volatile__( "pld [%0, %1, ASR #1]" : : /*in*/"r"(&alocal), "r"(0) ); 992 __asm__ __volatile__( "pld [%0, %1, ROR #1]" : : /*in*/"r"(&alocal), "r"(0) ); 993 __asm__ __volatile__( "pld [%0, %1, RRX]" : : /*in*/"r"(&alocal), "r"(0) ); 994 #endif 995 } 996 printf("------------ PLD/PLDW (done) ------------\n"); 997 #endif 998 999 return 0; 1000 } 1001 1002 1003 //////////////////////////////////////////////////////////// 1004 //////////////////////////////////////////////////////////// 1005 /////////////////////////////////////////////////////////// 1006 /////////////////////////////////////////////////////////// 1007 1008 1009 int main ( void ) 1010 { 1011 // 16 bit instructions 1012 1013 printf("CMP-16 0x10a\n"); 1014 TESTCARRY 1015 TESTINST3("cmp r3, r6", 0, 0, r6/*fake*/, r3, r6, 0); 1016 TESTINST3("cmp r3, r6", 1, 0, r6/*fake*/, r3, r6, 0); 1017 TESTINST3("cmp r3, r6", 0, 1, r6/*fake*/, r3, r6, 0); 1018 TESTINST3("cmp r3, r6", -1, 0, r6/*fake*/, r3, r6, 0); 1019 TESTINST3("cmp r3, r6", 0, -1, r6/*fake*/, r3, r6, 0); 1020 TESTINST3("cmp r3, r6", 0, 0x80000000, r6/*fake*/, r3, r6, 0); 1021 TESTINST3("cmp r3, r6", 0x80000000, 0, r6/*fake*/, r3, r6, 0); 1022 TESTCARRYEND 1023 1024 printf("CMN-16 0x10a\n"); 1025 TESTCARRY 1026 TESTINST3("cmn r3, r6", 0, 0, r6/*fake*/, r3, r6, 0); 1027 TESTINST3("cmn r3, r6", 1, 0, r6/*fake*/, r3, r6, 0); 1028 TESTINST3("cmn r3, r6", 0, 1, r6/*fake*/, r3, r6, 0); 1029 TESTINST3("cmn r3, r6", -1, 0, r6/*fake*/, r3, r6, 0); 1030 TESTINST3("cmn r3, r6", 0, -1, r6/*fake*/, r3, r6, 0); 1031 TESTINST3("cmn r3, r6", 0, 0x80000000, r6/*fake*/, r3, r6, 0); 1032 TESTINST3("cmn r3, r6", 0x80000000, 0, r6/*fake*/, r3, r6, 0); 1033 TESTCARRYEND 1034 1035 printf("TST-16 0x108\n"); 1036 TESTCARRY 1037 TESTINST3("tst r3, r6", 0, 0, r6/*fake*/, r3, r6, cv); 1038 TESTINST3("tst r3, r6", 1, 0, r6/*fake*/, r3, r6, cv); 1039 TESTINST3("tst r3, r6", 0, 1, r6/*fake*/, r3, r6, cv); 1040 TESTINST3("tst r3, r6", 1, 1, r6/*fake*/, r3, r6, cv); 1041 TESTINST3("tst r3, r6", -1, 0, r6/*fake*/, r3, r6, cv); 1042 TESTINST3("tst r3, r6", 0, -1, r6/*fake*/, r3, r6, cv); 1043 TESTINST3("tst r3, r6", -1, -1, r6/*fake*/, r3, r6, cv); 1044 TESTCARRYEND 1045 1046 printf("NEGS-16 0x109\n"); 1047 TESTINST2("negs r0, r1", 1, r0, r1, 0); 1048 TESTCARRY 1049 TESTINST2("negs r0, r1", 1, r0, r1, cv); 1050 TESTINST2("negs r0, r1", 0, r0, r1, cv); 1051 TESTINST2("negs r0, r1", 0x80000000, r0, r1, cv); 1052 TESTINST2("negs r0, r1", 0x80000001, r0, r1, cv); 1053 TESTINST2("negs r0, r1", 0xFFFFFFFF, r0, r1, cv); 1054 TESTINST2("negs r0, r1", 0x7FFFFFFF, r0, r1, cv); 1055 TESTCARRYEND 1056 1057 printf("MVNS-16 0x10F\n"); 1058 TESTINST2("mvns r0, r1", 1, r0, r1, 0); 1059 TESTCARRY 1060 TESTINST2("mvns r0, r1", 1, r0, r1, cv); 1061 TESTINST2("mvns r0, r1", 0, r0, r1, cv); 1062 TESTINST2("mvns r0, r1", 0x80000000, r0, r1, cv); 1063 TESTINST2("mvns r0, r1", 0x80000001, r0, r1, cv); 1064 TESTINST2("mvns r0, r1", 0xFFFFFFFF, r0, r1, cv); 1065 TESTINST2("mvns r0, r1", 0x7FFFFFFF, r0, r1, cv); 1066 TESTCARRYEND 1067 1068 printf("ORRS-16 0x10C\n"); 1069 TESTCARRY 1070 TESTINST2x("orrs r1, r2", 0x31415927, 0x27181728, r1, r2, cv); 1071 TESTINST2x("orrs r1, r2", 0x00000000, 0x00000000, r1, r2, cv); 1072 TESTINST2x("orrs r1, r2", 0x00000001, 0x00000000, r1, r2, cv); 1073 TESTINST2x("orrs r1, r2", 0x00000000, 0x00000001, r1, r2, cv); 1074 TESTINST2x("orrs r1, r2", 0x80000000, 0x00000000, r1, r2, cv); 1075 TESTINST2x("orrs r1, r2", 0x00000000, 0x80000000, r1, r2, cv); 1076 TESTINST2x("orrs r1, r2", 0x80000000, 0x80000000, r1, r2, cv); 1077 TESTCARRYEND 1078 1079 printf("ANDS-16 0x100\n"); 1080 TESTCARRY 1081 TESTINST2x("ands r1, r2", 0x31415927, 0x27181728, r1, r2, cv); 1082 TESTINST2x("ands r1, r2", 0x00000000, 0x00000000, r1, r2, cv); 1083 TESTINST2x("ands r1, r2", 0x00000001, 0x00000000, r1, r2, cv); 1084 TESTINST2x("ands r1, r2", 0x00000000, 0x00000001, r1, r2, cv); 1085 TESTINST2x("ands r1, r2", 0x80000000, 0x00000000, r1, r2, cv); 1086 TESTINST2x("ands r1, r2", 0x00000000, 0x80000000, r1, r2, cv); 1087 TESTINST2x("ands r1, r2", 0x80000000, 0x80000000, r1, r2, cv); 1088 TESTCARRYEND 1089 1090 printf("EORS-16 0x101\n"); 1091 TESTCARRY 1092 TESTINST2x("eors r1, r2", 0x31415927, 0x27181728, r1, r2, cv); 1093 TESTINST2x("eors r1, r2", 0x00000000, 0x00000000, r1, r2, cv); 1094 TESTINST2x("eors r1, r2", 0x00000001, 0x00000000, r1, r2, cv); 1095 TESTINST2x("eors r1, r2", 0x00000000, 0x00000001, r1, r2, cv); 1096 TESTINST2x("eors r1, r2", 0x80000000, 0x00000000, r1, r2, cv); 1097 TESTINST2x("eors r1, r2", 0x00000000, 0x80000000, r1, r2, cv); 1098 TESTINST2x("eors r1, r2", 0x80000000, 0x80000000, r1, r2, cv); 1099 TESTCARRYEND 1100 1101 printf("MULS-16 0x10d\n"); 1102 TESTCARRY 1103 TESTINST2x("muls r1, r2", 0x31415927, 0x27181728, r1, r2, cv); 1104 TESTINST2x("muls r1, r2", 0x00000000, 0x00000000, r1, r2, cv); 1105 TESTINST2x("muls r1, r2", 0x00000001, 0x00000000, r1, r2, cv); 1106 TESTINST2x("muls r1, r2", 0x00000000, 0x00000001, r1, r2, cv); 1107 TESTINST2x("muls r1, r2", 0x80000000, 0x00000000, r1, r2, cv); 1108 TESTINST2x("muls r1, r2", 0x00000000, 0x80000000, r1, r2, cv); 1109 TESTINST2x("muls r1, r2", 0x80000000, 0x80000000, r1, r2, cv); 1110 TESTCARRYEND 1111 1112 printf("BICS-16 0x10E\n"); 1113 TESTCARRY 1114 TESTINST2x("bics r1, r2", 0x31415927, 0x27181728, r1, r2, cv); 1115 TESTINST2x("bics r1, r2", 0x00000000, 0x00000000, r1, r2, cv); 1116 TESTINST2x("bics r1, r2", 0x00000001, 0x00000000, r1, r2, cv); 1117 TESTINST2x("bics r1, r2", 0x00000000, 0x00000001, r1, r2, cv); 1118 TESTINST2x("bics r1, r2", 0x80000000, 0x00000000, r1, r2, cv); 1119 TESTINST2x("bics r1, r2", 0x00000000, 0x80000000, r1, r2, cv); 1120 TESTINST2x("bics r1, r2", 0x80000000, 0x80000000, r1, r2, cv); 1121 TESTCARRYEND 1122 1123 printf("ADCS-16 0x105\n"); 1124 TESTCARRY 1125 TESTINST2x("adcs r1, r2", 0x31415927, 0x27181728, r1, r2, cv); 1126 TESTINST2x("adcs r1, r2", 0x00000000, 0x00000000, r1, r2, cv); 1127 TESTINST2x("adcs r1, r2", 0x00000001, 0x00000000, r1, r2, cv); 1128 TESTINST2x("adcs r1, r2", 0x00000000, 0x00000001, r1, r2, cv); 1129 TESTINST2x("adcs r1, r2", 0x80000000, 0x00000000, r1, r2, cv); 1130 TESTINST2x("adcs r1, r2", 0x00000000, 0x80000000, r1, r2, cv); 1131 TESTINST2x("adcs r1, r2", 0x80000000, 0x80000000, r1, r2, cv); 1132 TESTCARRYEND 1133 1134 printf("SBCS-16 0x100\n"); 1135 TESTCARRY 1136 TESTINST2x("sbcs r1, r2", 0x31415927, 0x27181728, r1, r2, cv); 1137 TESTINST2x("sbcs r1, r2", 0x00000000, 0x00000000, r1, r2, cv); 1138 TESTINST2x("sbcs r1, r2", 0x00000001, 0x00000000, r1, r2, cv); 1139 TESTINST2x("sbcs r1, r2", 0x00000000, 0x00000001, r1, r2, cv); 1140 TESTINST2x("sbcs r1, r2", 0x80000000, 0x00000000, r1, r2, cv); 1141 TESTINST2x("sbcs r1, r2", 0x00000000, 0x80000000, r1, r2, cv); 1142 TESTINST2x("sbcs r1, r2", 0x80000000, 0x80000000, r1, r2, cv); 1143 TESTCARRYEND 1144 1145 printf("UXTB-16 0x2CB\n"); 1146 TESTCARRY 1147 TESTINST2("uxtb r1, r2", 0x31415927, r1, r2, cv); 1148 TESTINST2("uxtb r1, r2", 0x31415997, r1, r2, cv); 1149 TESTCARRYEND 1150 1151 printf("SXTB-16 0x2C9\n"); 1152 TESTCARRY 1153 TESTINST2("sxtb r1, r2", 0x31415927, r1, r2, cv); 1154 TESTINST2("sxtb r1, r2", 0x31415997, r1, r2, cv); 1155 TESTCARRYEND 1156 1157 printf("UXTH-16 0x2CA\n"); 1158 TESTCARRY 1159 TESTINST2("uxth r1, r2", 0x31415927, r1, r2, cv); 1160 TESTINST2("uxth r1, r2", 0x31419597, r1, r2, cv); 1161 TESTCARRYEND 1162 1163 printf("SXTH-16 0x2C8\n"); 1164 TESTCARRY 1165 TESTINST2("sxth r1, r2", 0x31415927, r1, r2, cv); 1166 TESTINST2("sxth r1, r2", 0x31419597, r1, r2, cv); 1167 TESTCARRYEND 1168 1169 printf("LSLS-16 0x102\n"); 1170 TESTCARRY 1171 TESTINST2x("lsls r1, r2", 0x31415927, 0x00000000, r1, r2, cv); 1172 TESTINST2x("lsls r1, r2", 0x31415927, 0x00000001, r1, r2, cv); 1173 TESTINST2x("lsls r1, r2", 0x31415927, 0x00000002, r1, r2, cv); 1174 TESTINST2x("lsls r1, r2", 0x31415927, 0x0000000F, r1, r2, cv); 1175 TESTINST2x("lsls r1, r2", 0x31415927, 0x00000010, r1, r2, cv); 1176 TESTINST2x("lsls r1, r2", 0x31415927, 0x0000001F, r1, r2, cv); 1177 TESTINST2x("lsls r1, r2", 0x31415927, 0x00000020, r1, r2, cv); 1178 TESTINST2x("lsls r1, r2", 0x31415927, 0x00000021, r1, r2, cv); 1179 TESTCARRYEND 1180 1181 printf("LSRS-16 0x103\n"); 1182 TESTCARRY 1183 TESTINST2x("lsrs r1, r2", 0x31415927, 0x00000000, r1, r2, cv); 1184 TESTINST2x("lsrs r1, r2", 0x31415927, 0x00000001, r1, r2, cv); 1185 TESTINST2x("lsrs r1, r2", 0x31415927, 0x00000002, r1, r2, cv); 1186 TESTINST2x("lsrs r1, r2", 0x31415927, 0x0000000F, r1, r2, cv); 1187 TESTINST2x("lsrs r1, r2", 0x31415927, 0x00000010, r1, r2, cv); 1188 TESTINST2x("lsrs r1, r2", 0x31415927, 0x0000001F, r1, r2, cv); 1189 TESTINST2x("lsrs r1, r2", 0x31415927, 0x00000020, r1, r2, cv); 1190 TESTINST2x("lsrs r1, r2", 0x31415927, 0x00000021, r1, r2, cv); 1191 TESTCARRYEND 1192 1193 printf("ASRS-16 0x104\n"); 1194 TESTCARRY 1195 TESTINST2x("asrs r1, r2", 0x31415927, 0x00000000, r1, r2, cv); 1196 TESTINST2x("asrs r1, r2", 0x91415927, 0x00000001, r1, r2, cv); 1197 TESTINST2x("asrs r1, r2", 0x31415927, 0x00000002, r1, r2, cv); 1198 TESTINST2x("asrs r1, r2", 0x91415927, 0x0000000F, r1, r2, cv); 1199 TESTINST2x("asrs r1, r2", 0x31415927, 0x00000010, r1, r2, cv); 1200 TESTINST2x("asrs r1, r2", 0x91415927, 0x0000001F, r1, r2, cv); 1201 TESTINST2x("asrs r1, r2", 0x31415927, 0x00000020, r1, r2, cv); 1202 TESTINST2x("asrs r1, r2", 0x91415927, 0x00000021, r1, r2, cv); 1203 TESTCARRYEND 1204 1205 printf("RORS-16 0x107\n"); 1206 TESTCARRY 1207 TESTINST2x("rors r1, r2", 0x31415927, 0x00000000, r1, r2, cv); 1208 TESTINST2x("rors r1, r2", 0x31415927, 0x00000001, r1, r2, cv); 1209 TESTINST2x("rors r1, r2", 0x31415927, 0x00000002, r1, r2, cv); 1210 TESTINST2x("rors r1, r2", 0x31415927, 0x0000000F, r1, r2, cv); 1211 TESTINST2x("rors r1, r2", 0x31415927, 0x00000010, r1, r2, cv); 1212 TESTINST2x("rors r1, r2", 0x31415927, 0x0000001F, r1, r2, cv); 1213 TESTINST2x("rors r1, r2", 0x31415927, 0x00000020, r1, r2, cv); 1214 TESTINST2x("rors r1, r2", 0x31415927, 0x00000021, r1, r2, cv); 1215 TESTCARRYEND 1216 1217 printf("ADD(HI)-16\n"); 1218 TESTCARRY 1219 TESTINST2x("add r5, r12", 0x31415927, 0x12345678, r5, r12, cv); 1220 TESTINST2x("add r4, r9 ", 0x31415927, 0x12345678, r4, r9, cv); 1221 TESTCARRYEND 1222 1223 printf("CMP(HI)-16 0x10a\n"); 1224 TESTCARRY 1225 TESTINST3("cmp r5, r12", 0, 0, r12/*fake*/, r5, r12, 0); 1226 TESTINST3("cmp r5, r12", 1, 0, r12/*fake*/, r5, r12, 0); 1227 TESTINST3("cmp r5, r12", 0, 1, r12/*fake*/, r5, r12, 0); 1228 TESTINST3("cmp r5, r12", -1, 0, r12/*fake*/, r5, r12, 0); 1229 TESTINST3("cmp r5, r12", 0, -1, r12/*fake*/, r5, r12, 0); 1230 TESTINST3("cmp r5, r12", 0, 0x80000000, r12/*fake*/, r5, r12, 0); 1231 TESTINST3("cmp r5, r12", 0x80000000, 0, r12/*fake*/, r5, r12, 0); 1232 TESTCARRYEND 1233 1234 printf("MOV(HI)-16\n"); 1235 TESTCARRY 1236 TESTINST2x("mov r5, r12", 0x31415927, 0x12345678, r5, r12, cv); 1237 TESTINST2x("mov r4, r9 ", 0x31415927, 0x12345678, r4, r9, cv); 1238 TESTCARRYEND 1239 1240 printf("ADDS-16 Rd, Rn, #imm3\n"); 1241 TESTCARRY 1242 TESTINST2x("adds r1, r2, #1", 0x31415927, 0x27181728, r1, r2, cv); 1243 TESTINST2x("adds r1, r2, #7", 0x31415927, 0x97181728, r1, r2, cv); 1244 TESTCARRYEND 1245 1246 printf("ADDS-16 Rd, Rn, Rm\n"); 1247 TESTCARRY 1248 TESTINST3("adds r1, r2, r3", 0x31415927, 0x27181728, r1, r2, r3, cv); 1249 TESTINST3("adds r1, r2, r3", 0x31415927, 0x97181728, r1, r2, r3, cv); 1250 TESTINST3("adds r1, r2, r3", 0, 0, r1, r2, r3, cv); 1251 TESTINST3("adds r1, r2, r3", 1, 0, r1, r2, r3, cv); 1252 TESTINST3("adds r1, r2, r3", 0, 1, r1, r2, r3, cv); 1253 TESTINST3("adds r1, r2, r3", -1, 0, r1, r2, r3, cv); 1254 TESTINST3("adds r1, r2, r3", 0, -1, r1, r2, r3, cv); 1255 TESTINST3("adds r1, r2, r3", 0, 0x80000000, r1, r2, r3, cv); 1256 TESTINST3("adds r1, r2, r3", 0x80000000, 0, r1, r2, r3, cv); 1257 TESTINST3("adds r1, r2, r3", 0x80000000, 0x80000000, r1, r2, r3, cv); 1258 TESTINST3("adds r1, r2, r3", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1259 TESTINST3("adds r1, r2, r3", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1260 TESTINST3("adds r1, r2, r3", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 1261 TESTCARRYEND 1262 1263 printf("SUBS-16 Rd, Rn, Rm\n"); 1264 TESTCARRY 1265 TESTINST3("subs r1, r2, r3", 0x31415927, 0x27181728, r1, r2, r3, cv); 1266 TESTINST3("subs r1, r2, r3", 0x31415927, 0x97181728, r1, r2, r3, cv); 1267 TESTINST3("subs r1, r2, r3", 0, 0, r1, r2, r3, cv); 1268 TESTINST3("subs r1, r2, r3", 1, 0, r1, r2, r3, cv); 1269 TESTINST3("subs r1, r2, r3", 0, 1, r1, r2, r3, cv); 1270 TESTINST3("subs r1, r2, r3", -1, 0, r1, r2, r3, cv); 1271 TESTINST3("subs r1, r2, r3", 0, -1, r1, r2, r3, cv); 1272 TESTINST3("subs r1, r2, r3", 0, 0x80000000, r1, r2, r3, cv); 1273 TESTINST3("subs r1, r2, r3", 0x80000000, 0, r1, r2, r3, cv); 1274 TESTINST3("subs r1, r2, r3", 0x80000000, 0x80000000, r1, r2, r3, cv); 1275 TESTINST3("subs r1, r2, r3", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1276 TESTINST3("subs r1, r2, r3", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1277 TESTINST3("subs r1, r2, r3", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 1278 TESTCARRYEND 1279 1280 printf("ADDS-16 Rn, #uimm8\n"); 1281 TESTCARRY 1282 TESTINST1x("adds r1, #0 ", 0x31415927, r1, cv); 1283 TESTINST1x("adds r1, #255", 0x31415927, r1, cv); 1284 TESTINST1x("adds r1, #0 ", 0x91415927, r1, cv); 1285 TESTINST1x("adds r1, #255", 0x91415927, r1, cv); 1286 TESTCARRYEND 1287 1288 printf("SUBS-16 Rn, #uimm8\n"); 1289 TESTCARRY 1290 TESTINST1x("subs r1, #0 ", 0x31415927, r1, cv); 1291 TESTINST1x("subs r1, #255", 0x31415927, r1, cv); 1292 TESTINST1x("subs r1, #0 ", 0x91415927, r1, cv); 1293 TESTINST1x("subs r1, #255", 0x91415927, r1, cv); 1294 TESTCARRYEND 1295 1296 printf("CMP-16 Rn, #uimm8\n"); 1297 TESTCARRY 1298 TESTINST1x("cmp r1, #0x80 ", 0x00000080, r1, cv); 1299 TESTINST1x("cmp r1, #0x7f ", 0x00000080, r1, cv); 1300 TESTINST1x("cmp r1, #0x81 ", 0x00000080, r1, cv); 1301 TESTINST1x("cmp r1, #0x80 ", 0xffffff80, r1, cv); 1302 TESTINST1x("cmp r1, #0x7f ", 0xffffff80, r1, cv); 1303 TESTINST1x("cmp r1, #0x81 ", 0xffffff80, r1, cv); 1304 TESTINST1x("cmp r1, #0x01 ", 0x80000000, r1, cv); 1305 TESTCARRYEND 1306 1307 printf("MOVS-16 Rn, #uimm8\n"); 1308 TESTCARRY 1309 TESTINST1x("movs r1, #0 ", 0x31415927, r1, cv); 1310 TESTINST1x("movs r1, #0x7f", 0x31415927, r1, cv); 1311 TESTINST1x("movs r1, #0x80", 0x31415927, r1, cv); 1312 TESTINST1x("movs r1, #0x81", 0x31415927, r1, cv); 1313 TESTINST1x("movs r1, #0xff", 0x31415927, r1, cv); 1314 TESTCARRYEND 1315 1316 printf("LSLS-16 Rd, Rm, imm5\n"); 1317 TESTCARRY 1318 TESTINST2("lsls r1, r2, #0 ", 0x31415927, r1, r2, cv); 1319 TESTINST2("lsls r1, r2, #1 ", 0x31415927, r1, r2, cv); 1320 TESTINST2("lsls r1, r2, #2 ", 0x31415927, r1, r2, cv); 1321 TESTINST2("lsls r1, r2, #0xF ", 0x31415927, r1, r2, cv); 1322 TESTINST2("lsls r1, r2, #0x10", 0x31415927, r1, r2, cv); 1323 TESTINST2("lsls r1, r2, #0x1F", 0x31415927, r1, r2, cv); 1324 TESTCARRYEND 1325 1326 printf("LSRS-16 Rd, Rm, imm5\n"); 1327 TESTCARRY 1328 TESTINST2("lsrs r1, r2, #0 ", 0x31415927, r1, r2, cv); 1329 TESTINST2("lsrs r1, r2, #1 ", 0x31415927, r1, r2, cv); 1330 TESTINST2("lsrs r1, r2, #2 ", 0x31415927, r1, r2, cv); 1331 TESTINST2("lsrs r1, r2, #0xF ", 0x31415927, r1, r2, cv); 1332 TESTINST2("lsrs r1, r2, #0x10", 0x31415927, r1, r2, cv); 1333 TESTINST2("lsrs r1, r2, #0x1F", 0x31415927, r1, r2, cv); 1334 TESTCARRYEND 1335 1336 printf("ASRS-16 Rd, Rm, imm5\n"); 1337 TESTCARRY 1338 TESTINST2("asrs r1, r2, #0 ", 0x31415927, r1, r2, cv); 1339 TESTINST2("asrs r1, r2, #1 ", 0x91415927, r1, r2, cv); 1340 TESTINST2("asrs r1, r2, #2 ", 0x31415927, r1, r2, cv); 1341 TESTINST2("asrs r1, r2, #0xF ", 0x91415927, r1, r2, cv); 1342 TESTINST2("asrs r1, r2, #0x10", 0x31415927, r1, r2, cv); 1343 TESTINST2("asrs r1, r2, #0x1F", 0x91415927, r1, r2, cv); 1344 TESTCARRYEND 1345 1346 // 32 bit instructions 1347 1348 printf("(T3) ADD{S}.W Rd, Rn, #constT [allegedly]\n"); 1349 TESTCARRY 1350 TESTINST2("adds.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1351 TESTINST2("adds.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1352 TESTINST2("adds.w r1, r2, #255 ", 0, r1, r2, cv); 1353 TESTINST2("adds.w r1, r2, #0 ", 1, r1, r2, cv); 1354 TESTINST2("adds.w r1, r2, #1 ", 0, r1, r2, cv); 1355 TESTINST2("adds.w r1, r2, #0 ", -1, r1, r2, cv); 1356 TESTINST2("adds.w r1, r2, #-1 ", 0, r1, r2, cv); 1357 TESTINST2("adds.w r1, r2, #0x80000000", 0, r1, r2, cv); 1358 TESTINST2("adds.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1359 TESTINST2("adds.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1360 TESTINST2("adds.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1361 TESTINST2("adds.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1362 TESTINST2("adds.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1363 TESTINST2("add.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1364 TESTINST2("add.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1365 TESTINST2("add.w r1, r2, #255 ", 0, r1, r2, cv); 1366 TESTINST2("add.w r1, r2, #0 ", 1, r1, r2, cv); 1367 TESTINST2("add.w r1, r2, #1 ", 0, r1, r2, cv); 1368 TESTINST2("add.w r1, r2, #0 ", -1, r1, r2, cv); 1369 TESTINST2("add.w r1, r2, #-1 ", 0, r1, r2, cv); 1370 TESTINST2("add.w r1, r2, #0x80000000", 0, r1, r2, cv); 1371 TESTINST2("add.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1372 TESTINST2("add.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1373 TESTINST2("add.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1374 TESTINST2("add.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1375 TESTINST2("add.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1376 TESTCARRYEND 1377 1378 printf("(T3) CMP.W Rn, #constT [allegedly]\n"); 1379 TESTCARRY 1380 TESTINST1x("cmp.w r1, #0xffffffff", 0x31415927, r1, cv); 1381 TESTINST1x("cmp.w r1, #0xee00ee00", 0x31415927, r1, cv); 1382 TESTINST1x("cmp.w r1, #255 ", 0, r1, cv); 1383 TESTINST1x("cmp.w r1, #0 ", 1, r1, cv); 1384 TESTINST1x("cmp.w r1, #1 ", 0, r1, cv); 1385 TESTINST1x("cmp.w r1, #0 ", -1, r1, cv); 1386 TESTINST1x("cmp.w r1, #-1 ", 0, r1, cv); 1387 TESTINST1x("cmp.w r1, #0x80000000", 0, r1, cv); 1388 TESTINST1x("cmp.w r1, #0 ", 0x80000000, r1, cv); 1389 TESTINST1x("cmp.w r1, #0x80000000", 0x80000000, r1, cv); 1390 TESTINST1x("cmp.w r1, #0x80000000", 0x7fffffff, r1, cv); 1391 TESTINST1x("cmp.w r1, #0xff000000", 0x80000000, r1, cv); 1392 TESTINST1x("cmp.w r1, #0x0dd00000", 0x7fffffff, r1, cv); 1393 TESTCARRYEND 1394 1395 printf("(T3) CMN.W Rn, #constT [allegedly]\n"); 1396 TESTCARRY 1397 TESTINST1x("cmn.w r1, #0xffffffff", 0x31415927, r1, cv); 1398 TESTINST1x("cmn.w r1, #0xee00ee00", 0x31415927, r1, cv); 1399 TESTINST1x("cmn.w r1, #255 ", 0, r1, cv); 1400 TESTINST1x("cmn.w r1, #0 ", 1, r1, cv); 1401 TESTINST1x("cmn.w r1, #1 ", 0, r1, cv); 1402 TESTINST1x("cmn.w r1, #0 ", -1, r1, cv); 1403 TESTINST1x("cmn.w r1, #-1 ", 0, r1, cv); 1404 TESTINST1x("cmn.w r1, #0x80000000", 0, r1, cv); 1405 TESTINST1x("cmn.w r1, #0 ", 0x80000000, r1, cv); 1406 TESTINST1x("cmn.w r1, #0x80000000", 0x80000000, r1, cv); 1407 TESTINST1x("cmn.w r1, #0x80000000", 0x7fffffff, r1, cv); 1408 TESTINST1x("cmn.w r1, #0xff000000", 0x80000000, r1, cv); 1409 TESTINST1x("cmn.w r1, #0x0dd00000", 0x7fffffff, r1, cv); 1410 TESTCARRYEND 1411 1412 printf("(T3) TST.W Rn, #constT [allegedly]\n"); 1413 TESTCARRY 1414 TESTINST1x("tst.w r1, #0xffffffff", 0x31415927, r1, cv); 1415 TESTINST1x("tst.w r1, #0xee00ee00", 0x31415927, r1, cv); 1416 TESTINST1x("tst.w r1, #255 ", 0, r1, cv); 1417 TESTINST1x("tst.w r1, #0 ", 1, r1, cv); 1418 TESTINST1x("tst.w r1, #1 ", 0, r1, cv); 1419 TESTINST1x("tst.w r1, #0 ", -1, r1, cv); 1420 TESTINST1x("tst.w r1, #-1 ", 0, r1, cv); 1421 TESTINST1x("tst.w r1, #0x80000000", 0, r1, cv); 1422 TESTINST1x("tst.w r1, #0 ", 0x80000000, r1, cv); 1423 TESTINST1x("tst.w r1, #0x80000000", 0x80000000, r1, cv); 1424 TESTINST1x("tst.w r1, #0x80000000", 0x7fffffff, r1, cv); 1425 TESTINST1x("tst.w r1, #0xff000000", 0x80000000, r1, cv); 1426 TESTINST1x("tst.w r1, #0x0dd00000", 0x7fffffff, r1, cv); 1427 TESTCARRYEND 1428 1429 printf("(T3) TEQ.W Rn, #constT [allegedly]\n"); 1430 TESTCARRY 1431 TESTINST1x("teq.w r1, #0xffffffff", 0x31415927, r1, cv); 1432 TESTINST1x("teq.w r1, #0xee00ee00", 0x31415927, r1, cv); 1433 TESTINST1x("teq.w r1, #255 ", 0, r1, cv); 1434 TESTINST1x("teq.w r1, #0 ", 1, r1, cv); 1435 TESTINST1x("teq.w r1, #1 ", 0, r1, cv); 1436 TESTINST1x("teq.w r1, #0 ", -1, r1, cv); 1437 TESTINST1x("teq.w r1, #-1 ", 0, r1, cv); 1438 TESTINST1x("teq.w r1, #0x80000000", 0, r1, cv); 1439 TESTINST1x("teq.w r1, #0 ", 0x80000000, r1, cv); 1440 TESTINST1x("teq.w r1, #0x80000000", 0x80000000, r1, cv); 1441 TESTINST1x("teq.w r1, #0x80000000", 0x7fffffff, r1, cv); 1442 TESTINST1x("teq.w r1, #0xff000000", 0x80000000, r1, cv); 1443 TESTINST1x("teq.w r1, #0x0dd00000", 0x7fffffff, r1, cv); 1444 TESTCARRYEND 1445 1446 printf("(T3) SUB{S}.W Rd, Rn, #constT [allegedly]\n"); 1447 TESTCARRY 1448 TESTINST2("subs.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1449 TESTINST2("subs.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1450 TESTINST2("subs.w r1, r2, #255 ", 0, r1, r2, cv); 1451 TESTINST2("subs.w r1, r2, #0 ", 1, r1, r2, cv); 1452 TESTINST2("subs.w r1, r2, #1 ", 0, r1, r2, cv); 1453 TESTINST2("subs.w r1, r2, #0 ", -1, r1, r2, cv); 1454 TESTINST2("subs.w r1, r2, #-1 ", 0, r1, r2, cv); 1455 TESTINST2("subs.w r1, r2, #0x80000000", 0, r1, r2, cv); 1456 TESTINST2("subs.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1457 TESTINST2("subs.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1458 TESTINST2("subs.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1459 TESTINST2("subs.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1460 TESTINST2("subs.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1461 TESTINST2("sub.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1462 TESTINST2("sub.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1463 TESTINST2("sub.w r1, r2, #255 ", 0, r1, r2, cv); 1464 TESTINST2("sub.w r1, r2, #0 ", 1, r1, r2, cv); 1465 TESTINST2("sub.w r1, r2, #1 ", 0, r1, r2, cv); 1466 TESTINST2("sub.w r1, r2, #0 ", -1, r1, r2, cv); 1467 TESTINST2("sub.w r1, r2, #-1 ", 0, r1, r2, cv); 1468 TESTINST2("sub.w r1, r2, #0x80000000", 0, r1, r2, cv); 1469 TESTINST2("sub.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1470 TESTINST2("sub.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1471 TESTINST2("sub.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1472 TESTINST2("sub.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1473 TESTINST2("sub.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1474 TESTCARRYEND 1475 1476 printf("(T3) RSB{S}.W Rd, Rn, #constT [allegedly]\n"); 1477 TESTCARRY 1478 TESTINST2("rsbs.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1479 TESTINST2("rsbs.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1480 TESTINST2("rsbs.w r1, r2, #255 ", 0, r1, r2, cv); 1481 TESTINST2("rsbs.w r1, r2, #0 ", 1, r1, r2, cv); 1482 TESTINST2("rsbs.w r1, r2, #1 ", 0, r1, r2, cv); 1483 TESTINST2("rsbs.w r1, r2, #0 ", -1, r1, r2, cv); 1484 TESTINST2("rsbs.w r1, r2, #-1 ", 0, r1, r2, cv); 1485 TESTINST2("rsbs.w r1, r2, #0x80000000", 0, r1, r2, cv); 1486 TESTINST2("rsbs.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1487 TESTINST2("rsbs.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1488 TESTINST2("rsbs.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1489 TESTINST2("rsbs.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1490 TESTINST2("rsbs.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1491 TESTINST2("rsb.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1492 TESTINST2("rsb.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1493 TESTINST2("rsb.w r1, r2, #255 ", 0, r1, r2, cv); 1494 TESTINST2("rsb.w r1, r2, #0 ", 1, r1, r2, cv); 1495 TESTINST2("rsb.w r1, r2, #1 ", 0, r1, r2, cv); 1496 TESTINST2("rsb.w r1, r2, #0 ", -1, r1, r2, cv); 1497 TESTINST2("rsb.w r1, r2, #-1 ", 0, r1, r2, cv); 1498 TESTINST2("rsb.w r1, r2, #0x80000000", 0, r1, r2, cv); 1499 TESTINST2("rsb.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1500 TESTINST2("rsb.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1501 TESTINST2("rsb.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1502 TESTINST2("rsb.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1503 TESTINST2("rsb.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1504 TESTCARRYEND 1505 1506 printf("(T3) ADC{S}.W Rd, Rn, #constT [allegedly]\n"); 1507 TESTCARRY 1508 TESTINST2("adcs.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1509 TESTINST2("adcs.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1510 TESTINST2("adcs.w r1, r2, #255 ", 0, r1, r2, cv); 1511 TESTINST2("adcs.w r1, r2, #0 ", 1, r1, r2, cv); 1512 TESTINST2("adcs.w r1, r2, #1 ", 0, r1, r2, cv); 1513 TESTINST2("adcs.w r1, r2, #0 ", -1, r1, r2, cv); 1514 TESTINST2("adcs.w r1, r2, #-1 ", 0, r1, r2, cv); 1515 TESTINST2("adcs.w r1, r2, #0x80000000", 0, r1, r2, cv); 1516 TESTINST2("adcs.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1517 TESTINST2("adcs.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1518 TESTINST2("adcs.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1519 TESTINST2("adcs.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1520 TESTINST2("adcs.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1521 TESTINST2("adc.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1522 TESTINST2("adc.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1523 TESTINST2("adc.w r1, r2, #255 ", 0, r1, r2, cv); 1524 TESTINST2("adc.w r1, r2, #0 ", 1, r1, r2, cv); 1525 TESTINST2("adc.w r1, r2, #1 ", 0, r1, r2, cv); 1526 TESTINST2("adc.w r1, r2, #0 ", -1, r1, r2, cv); 1527 TESTINST2("adc.w r1, r2, #-1 ", 0, r1, r2, cv); 1528 TESTINST2("adc.w r1, r2, #0x80000000", 0, r1, r2, cv); 1529 TESTINST2("adc.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1530 TESTINST2("adc.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1531 TESTINST2("adc.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1532 TESTINST2("adc.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1533 TESTINST2("adc.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1534 TESTCARRYEND 1535 1536 printf("(T3) SBC{S}.W Rd, Rn, #constT [allegedly]\n"); 1537 TESTCARRY 1538 TESTINST2("sbcs.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1539 TESTINST2("sbcs.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1540 TESTINST2("sbcs.w r1, r2, #255 ", 0, r1, r2, cv); 1541 TESTINST2("sbcs.w r1, r2, #0 ", 1, r1, r2, cv); 1542 TESTINST2("sbcs.w r1, r2, #1 ", 0, r1, r2, cv); 1543 TESTINST2("sbcs.w r1, r2, #0 ", -1, r1, r2, cv); 1544 TESTINST2("sbcs.w r1, r2, #-1 ", 0, r1, r2, cv); 1545 TESTINST2("sbcs.w r1, r2, #0x80000000", 0, r1, r2, cv); 1546 TESTINST2("sbcs.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1547 TESTINST2("sbcs.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1548 TESTINST2("sbcs.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1549 TESTINST2("sbcs.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1550 TESTINST2("sbcs.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1551 TESTINST2("sbc.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1552 TESTINST2("sbc.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1553 TESTINST2("sbc.w r1, r2, #255 ", 0, r1, r2, cv); 1554 TESTINST2("sbc.w r1, r2, #0 ", 1, r1, r2, cv); 1555 TESTINST2("sbc.w r1, r2, #1 ", 0, r1, r2, cv); 1556 TESTINST2("sbc.w r1, r2, #0 ", -1, r1, r2, cv); 1557 TESTINST2("sbc.w r1, r2, #-1 ", 0, r1, r2, cv); 1558 TESTINST2("sbc.w r1, r2, #0x80000000", 0, r1, r2, cv); 1559 TESTINST2("sbc.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1560 TESTINST2("sbc.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1561 TESTINST2("sbc.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1562 TESTINST2("sbc.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1563 TESTINST2("sbc.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1564 TESTCARRYEND 1565 1566 printf("(T3) AND{S}.W Rd, Rn, #constT [allegedly]\n"); 1567 TESTCARRY 1568 TESTINST2("ands.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1569 TESTINST2("ands.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1570 TESTINST2("ands.w r1, r2, #255 ", 0, r1, r2, cv); 1571 TESTINST2("ands.w r1, r2, #0 ", 1, r1, r2, cv); 1572 TESTINST2("ands.w r1, r2, #1 ", 0, r1, r2, cv); 1573 TESTINST2("ands.w r1, r2, #0 ", -1, r1, r2, cv); 1574 TESTINST2("ands.w r1, r2, #-1 ", 0, r1, r2, cv); 1575 TESTINST2("ands.w r1, r2, #0x80000000", 0, r1, r2, cv); 1576 TESTINST2("ands.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1577 TESTINST2("ands.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1578 TESTINST2("ands.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1579 TESTINST2("ands.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1580 TESTINST2("ands.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1581 TESTINST2("and.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1582 TESTINST2("and.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1583 TESTINST2("and.w r1, r2, #255 ", 0, r1, r2, cv); 1584 TESTINST2("and.w r1, r2, #0 ", 1, r1, r2, cv); 1585 TESTINST2("and.w r1, r2, #1 ", 0, r1, r2, cv); 1586 TESTINST2("and.w r1, r2, #0 ", -1, r1, r2, cv); 1587 TESTINST2("and.w r1, r2, #-1 ", 0, r1, r2, cv); 1588 TESTINST2("and.w r1, r2, #0x80000000", 0, r1, r2, cv); 1589 TESTINST2("and.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1590 TESTINST2("and.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1591 TESTINST2("and.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1592 TESTINST2("and.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1593 TESTINST2("and.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1594 TESTCARRYEND 1595 1596 printf("(T3) ORR{S}.W Rd, Rn, #constT [allegedly]\n"); 1597 TESTCARRY 1598 TESTINST2("orrs.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1599 TESTINST2("orrs.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1600 TESTINST2("orrs.w r1, r2, #255 ", 0, r1, r2, cv); 1601 TESTINST2("orrs.w r1, r2, #0 ", 1, r1, r2, cv); 1602 TESTINST2("orrs.w r1, r2, #1 ", 0, r1, r2, cv); 1603 TESTINST2("orrs.w r1, r2, #0 ", -1, r1, r2, cv); 1604 TESTINST2("orrs.w r1, r2, #-1 ", 0, r1, r2, cv); 1605 TESTINST2("orrs.w r1, r2, #0x80000000", 0, r1, r2, cv); 1606 TESTINST2("orrs.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1607 TESTINST2("orrs.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1608 TESTINST2("orrs.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1609 TESTINST2("orrs.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1610 TESTINST2("orrs.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1611 TESTINST2("orr.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1612 TESTINST2("orr.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1613 TESTINST2("orr.w r1, r2, #255 ", 0, r1, r2, cv); 1614 TESTINST2("orr.w r1, r2, #0 ", 1, r1, r2, cv); 1615 TESTINST2("orr.w r1, r2, #1 ", 0, r1, r2, cv); 1616 TESTINST2("orr.w r1, r2, #0 ", -1, r1, r2, cv); 1617 TESTINST2("orr.w r1, r2, #-1 ", 0, r1, r2, cv); 1618 TESTINST2("orr.w r1, r2, #0x80000000", 0, r1, r2, cv); 1619 TESTINST2("orr.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1620 TESTINST2("orr.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1621 TESTINST2("orr.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1622 TESTINST2("orr.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1623 TESTINST2("orr.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1624 TESTCARRYEND 1625 1626 printf("(T3) EOR{S}.W Rd, Rn, #constT [allegedly]\n"); 1627 TESTCARRY 1628 TESTINST2("eors.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1629 TESTINST2("eors.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1630 TESTINST2("eors.w r1, r2, #255 ", 0, r1, r2, cv); 1631 TESTINST2("eors.w r1, r2, #0 ", 1, r1, r2, cv); 1632 TESTINST2("eors.w r1, r2, #1 ", 0, r1, r2, cv); 1633 TESTINST2("eors.w r1, r2, #0 ", -1, r1, r2, cv); 1634 TESTINST2("eors.w r1, r2, #-1 ", 0, r1, r2, cv); 1635 TESTINST2("eors.w r1, r2, #0x80000000", 0, r1, r2, cv); 1636 TESTINST2("eors.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1637 TESTINST2("eors.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1638 TESTINST2("eors.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1639 TESTINST2("eors.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1640 TESTINST2("eors.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1641 TESTINST2("eor.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1642 TESTINST2("eor.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1643 TESTINST2("eor.w r1, r2, #255 ", 0, r1, r2, cv); 1644 TESTINST2("eor.w r1, r2, #0 ", 1, r1, r2, cv); 1645 TESTINST2("eor.w r1, r2, #1 ", 0, r1, r2, cv); 1646 TESTINST2("eor.w r1, r2, #0 ", -1, r1, r2, cv); 1647 TESTINST2("eor.w r1, r2, #-1 ", 0, r1, r2, cv); 1648 TESTINST2("eor.w r1, r2, #0x80000000", 0, r1, r2, cv); 1649 TESTINST2("eor.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1650 TESTINST2("eor.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1651 TESTINST2("eor.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1652 TESTINST2("eor.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1653 TESTINST2("eor.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1654 TESTCARRYEND 1655 1656 printf("(T3) BIC{S}.W Rd, Rn, #constT [allegedly]\n"); 1657 TESTCARRY 1658 TESTINST2("bics.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1659 TESTINST2("bics.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1660 TESTINST2("bics.w r1, r2, #255 ", 0, r1, r2, cv); 1661 TESTINST2("bics.w r1, r2, #0 ", 1, r1, r2, cv); 1662 TESTINST2("bics.w r1, r2, #1 ", 0, r1, r2, cv); 1663 TESTINST2("bics.w r1, r2, #0 ", -1, r1, r2, cv); 1664 TESTINST2("bics.w r1, r2, #-1 ", 0, r1, r2, cv); 1665 TESTINST2("bics.w r1, r2, #0x80000000", 0, r1, r2, cv); 1666 TESTINST2("bics.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1667 TESTINST2("bics.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1668 TESTINST2("bics.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1669 TESTINST2("bics.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1670 TESTINST2("bics.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1671 TESTINST2("bic.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1672 TESTINST2("bic.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1673 TESTINST2("bic.w r1, r2, #255 ", 0, r1, r2, cv); 1674 TESTINST2("bic.w r1, r2, #0 ", 1, r1, r2, cv); 1675 TESTINST2("bic.w r1, r2, #1 ", 0, r1, r2, cv); 1676 TESTINST2("bic.w r1, r2, #0 ", -1, r1, r2, cv); 1677 TESTINST2("bic.w r1, r2, #-1 ", 0, r1, r2, cv); 1678 TESTINST2("bic.w r1, r2, #0x80000000", 0, r1, r2, cv); 1679 TESTINST2("bic.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1680 TESTINST2("bic.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1681 TESTINST2("bic.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1682 TESTINST2("bic.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1683 TESTINST2("bic.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1684 TESTCARRYEND 1685 1686 printf("(T3) ORN{S}.W Rd, Rn, #constT [allegedly]\n"); 1687 TESTCARRY 1688 TESTINST2("orns.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1689 TESTINST2("orns.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1690 TESTINST2("orns.w r1, r2, #255 ", 0, r1, r2, cv); 1691 TESTINST2("orns.w r1, r2, #0 ", 1, r1, r2, cv); 1692 TESTINST2("orns.w r1, r2, #1 ", 0, r1, r2, cv); 1693 TESTINST2("orns.w r1, r2, #0 ", -1, r1, r2, cv); 1694 TESTINST2("orns.w r1, r2, #-1 ", 0, r1, r2, cv); 1695 TESTINST2("orns.w r1, r2, #0x80000000", 0, r1, r2, cv); 1696 TESTINST2("orns.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1697 TESTINST2("orns.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1698 TESTINST2("orns.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1699 TESTINST2("orns.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1700 TESTINST2("orns.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1701 TESTINST2("orn.w r1, r2, #0xffffffff", 0x31415927, r1, r2, cv); 1702 TESTINST2("orn.w r1, r2, #0xee00ee00", 0x31415927, r1, r2, cv); 1703 TESTINST2("orn.w r1, r2, #255 ", 0, r1, r2, cv); 1704 TESTINST2("orn.w r1, r2, #0 ", 1, r1, r2, cv); 1705 TESTINST2("orn.w r1, r2, #1 ", 0, r1, r2, cv); 1706 TESTINST2("orn.w r1, r2, #0 ", -1, r1, r2, cv); 1707 TESTINST2("orn.w r1, r2, #-1 ", 0, r1, r2, cv); 1708 TESTINST2("orn.w r1, r2, #0x80000000", 0, r1, r2, cv); 1709 TESTINST2("orn.w r1, r2, #0 ", 0x80000000, r1, r2, cv); 1710 TESTINST2("orn.w r1, r2, #0x80000000", 0x80000000, r1, r2, cv); 1711 TESTINST2("orn.w r1, r2, #0x80000000", 0x7fffffff, r1, r2, cv); 1712 TESTINST2("orn.w r1, r2, #0xff000000", 0x80000000, r1, r2, cv); 1713 TESTINST2("orn.w r1, r2, #0x0dd00000", 0x7fffffff, r1, r2, cv); 1714 TESTCARRYEND 1715 1716 printf("ADD{S}.W Rd, Rn, Rm, {shift}\n"); 1717 TESTCARRY 1718 TESTINST3("adds.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 1719 TESTINST3("adds.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 1720 TESTINST3("adds.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 1721 TESTINST3("adds.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 1722 TESTINST3("adds.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 1723 TESTINST3("adds.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 1724 TESTINST3("adds.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 1725 TESTINST3("adds.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 1726 TESTINST3("adds.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 1727 TESTINST3("adds.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 1728 TESTINST3("adds.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 1729 TESTINST3("adds.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 1730 TESTINST3("add.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 1731 TESTINST3("add.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 1732 TESTINST3("add.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 1733 TESTINST3("add.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 1734 TESTINST3("add.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 1735 TESTINST3("add.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 1736 TESTINST3("add.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 1737 TESTINST3("add.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 1738 TESTINST3("add.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 1739 TESTINST3("add.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 1740 TESTINST3("add.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 1741 TESTINST3("add.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 1742 TESTINST3("adds.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 1743 TESTINST3("adds.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 1744 TESTINST3("adds.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 1745 TESTINST3("adds.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 1746 TESTINST3("adds.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 1747 TESTINST3("adds.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 1748 TESTINST3("adds.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 1749 TESTINST3("adds.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 1750 TESTINST3("adds.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 1751 TESTINST3("adds.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 1752 TESTINST3("adds.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 1753 TESTINST3("adds.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 1754 TESTINST3("add.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 1755 TESTINST3("add.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 1756 TESTINST3("add.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 1757 TESTINST3("add.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 1758 TESTINST3("add.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 1759 TESTINST3("add.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 1760 TESTINST3("add.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 1761 TESTINST3("add.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 1762 TESTINST3("add.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 1763 TESTINST3("add.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 1764 TESTINST3("add.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 1765 TESTINST3("add.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 1766 TESTINST3("adds.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 1767 TESTINST3("adds.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 1768 TESTINST3("adds.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 1769 TESTINST3("adds.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 1770 TESTINST3("adds.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 1771 TESTINST3("adds.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 1772 TESTINST3("adds.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 1773 TESTINST3("adds.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 1774 TESTINST3("adds.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 1775 TESTINST3("adds.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 1776 TESTINST3("adds.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 1777 TESTINST3("adds.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 1778 TESTINST3("add.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 1779 TESTINST3("add.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 1780 TESTINST3("add.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 1781 TESTINST3("add.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 1782 TESTINST3("add.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 1783 TESTINST3("add.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 1784 TESTINST3("add.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 1785 TESTINST3("add.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 1786 TESTINST3("add.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 1787 TESTINST3("add.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 1788 TESTINST3("add.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 1789 TESTINST3("add.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 1790 TESTINST3("adds.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 1791 TESTINST3("adds.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 1792 TESTINST3("adds.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 1793 TESTINST3("adds.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 1794 TESTINST3("adds.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 1795 TESTINST3("adds.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 1796 TESTINST3("adds.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 1797 TESTINST3("adds.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 1798 TESTINST3("adds.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 1799 TESTINST3("adds.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 1800 TESTINST3("adds.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 1801 TESTINST3("adds.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 1802 TESTINST3("add.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 1803 TESTINST3("add.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 1804 TESTINST3("add.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 1805 TESTINST3("add.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 1806 TESTINST3("add.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 1807 TESTINST3("add.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 1808 TESTINST3("add.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 1809 TESTINST3("add.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 1810 TESTINST3("add.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 1811 TESTINST3("add.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 1812 TESTINST3("add.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 1813 TESTINST3("add.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 1814 TESTINST3("adds.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 1815 TESTINST3("adds.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 1816 TESTINST3("adds.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 1817 TESTINST3("adds.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 1818 TESTINST3("adds.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 1819 TESTINST3("adds.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 1820 TESTINST3("adds.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 1821 TESTINST3("adds.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 1822 TESTINST3("adds.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 1823 TESTINST3("adds.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 1824 TESTINST3("adds.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 1825 TESTINST3("adds.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 1826 TESTINST3("add.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 1827 TESTINST3("add.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 1828 TESTINST3("add.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 1829 TESTINST3("add.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 1830 TESTINST3("add.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 1831 TESTINST3("add.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 1832 TESTINST3("add.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 1833 TESTINST3("add.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 1834 TESTINST3("add.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 1835 TESTINST3("add.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 1836 TESTINST3("add.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 1837 TESTINST3("add.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 1838 TESTINST3("adds.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 1839 TESTINST3("adds.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 1840 TESTINST3("adds.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 1841 TESTINST3("adds.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 1842 TESTINST3("adds.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 1843 TESTINST3("adds.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 1844 TESTINST3("adds.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 1845 TESTINST3("adds.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 1846 TESTINST3("adds.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 1847 TESTINST3("adds.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 1848 TESTINST3("adds.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 1849 TESTINST3("adds.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 1850 TESTINST3("add.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 1851 TESTINST3("add.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 1852 TESTINST3("add.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 1853 TESTINST3("add.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 1854 TESTINST3("add.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 1855 TESTINST3("add.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 1856 TESTINST3("add.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 1857 TESTINST3("add.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 1858 TESTINST3("add.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 1859 TESTINST3("add.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 1860 TESTINST3("add.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 1861 TESTINST3("add.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 1862 TESTINST3("adds.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 1863 TESTINST3("adds.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 1864 TESTINST3("adds.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 1865 TESTINST3("adds.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 1866 TESTINST3("adds.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 1867 TESTINST3("adds.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 1868 TESTINST3("adds.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 1869 TESTINST3("adds.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 1870 TESTINST3("adds.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 1871 TESTINST3("adds.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 1872 TESTINST3("adds.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 1873 TESTINST3("adds.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 1874 TESTINST3("add.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 1875 TESTINST3("add.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 1876 TESTINST3("add.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 1877 TESTINST3("add.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 1878 TESTINST3("add.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 1879 TESTINST3("add.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 1880 TESTINST3("add.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 1881 TESTINST3("add.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 1882 TESTINST3("add.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 1883 TESTINST3("add.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 1884 TESTINST3("add.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 1885 TESTINST3("add.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 1886 TESTINST3("adds.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 1887 TESTINST3("adds.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 1888 TESTINST3("adds.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 1889 TESTINST3("adds.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 1890 TESTINST3("adds.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 1891 TESTINST3("adds.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 1892 TESTINST3("adds.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 1893 TESTINST3("adds.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 1894 TESTINST3("adds.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 1895 TESTINST3("adds.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 1896 TESTINST3("adds.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 1897 TESTINST3("adds.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 1898 TESTINST3("add.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 1899 TESTINST3("add.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 1900 TESTINST3("add.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 1901 TESTINST3("add.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 1902 TESTINST3("add.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 1903 TESTINST3("add.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 1904 TESTINST3("add.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 1905 TESTINST3("add.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 1906 TESTINST3("add.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 1907 TESTINST3("add.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 1908 TESTINST3("add.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 1909 TESTINST3("add.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 1910 TESTINST3("adds.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 1911 TESTINST3("adds.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 1912 TESTINST3("adds.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 1913 TESTINST3("adds.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 1914 TESTINST3("adds.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 1915 TESTINST3("adds.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 1916 TESTINST3("adds.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 1917 TESTINST3("adds.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 1918 TESTINST3("adds.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 1919 TESTINST3("adds.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 1920 TESTINST3("adds.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 1921 TESTINST3("adds.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 1922 TESTINST3("add.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 1923 TESTINST3("add.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 1924 TESTINST3("add.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 1925 TESTINST3("add.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 1926 TESTINST3("add.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 1927 TESTINST3("add.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 1928 TESTINST3("add.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 1929 TESTINST3("add.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 1930 TESTINST3("add.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 1931 TESTINST3("add.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 1932 TESTINST3("add.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 1933 TESTINST3("add.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 1934 TESTINST3("adds.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 1935 TESTINST3("adds.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 1936 TESTINST3("adds.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 1937 TESTINST3("adds.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 1938 TESTINST3("adds.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 1939 TESTINST3("adds.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 1940 TESTINST3("adds.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 1941 TESTINST3("adds.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 1942 TESTINST3("adds.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 1943 TESTINST3("adds.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 1944 TESTINST3("adds.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 1945 TESTINST3("adds.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 1946 TESTINST3("add.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 1947 TESTINST3("add.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 1948 TESTINST3("add.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 1949 TESTINST3("add.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 1950 TESTINST3("add.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 1951 TESTINST3("add.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 1952 TESTINST3("add.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 1953 TESTINST3("add.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 1954 TESTINST3("add.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 1955 TESTINST3("add.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 1956 TESTINST3("add.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 1957 TESTINST3("add.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 1958 TESTINST3("adds.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1959 TESTINST3("adds.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1960 TESTINST3("adds.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1961 TESTINST3("adds.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1962 TESTINST3("adds.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1963 TESTINST3("adds.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1964 TESTINST3("adds.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1965 TESTINST3("adds.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1966 TESTINST3("adds.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1967 TESTINST3("adds.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1968 TESTINST3("adds.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1969 TESTINST3("adds.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1970 TESTINST3("add.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1971 TESTINST3("add.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1972 TESTINST3("add.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1973 TESTINST3("add.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1974 TESTINST3("add.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1975 TESTINST3("add.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1976 TESTINST3("add.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1977 TESTINST3("add.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1978 TESTINST3("add.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1979 TESTINST3("add.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1980 TESTINST3("add.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1981 TESTINST3("add.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 1982 TESTINST3("adds.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1983 TESTINST3("adds.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1984 TESTINST3("adds.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1985 TESTINST3("adds.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1986 TESTINST3("adds.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1987 TESTINST3("adds.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1988 TESTINST3("adds.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1989 TESTINST3("adds.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1990 TESTINST3("adds.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1991 TESTINST3("adds.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1992 TESTINST3("adds.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1993 TESTINST3("adds.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1994 TESTINST3("add.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1995 TESTINST3("add.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1996 TESTINST3("add.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1997 TESTINST3("add.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1998 TESTINST3("add.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 1999 TESTINST3("add.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2000 TESTINST3("add.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2001 TESTINST3("add.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2002 TESTINST3("add.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2003 TESTINST3("add.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2004 TESTINST3("add.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2005 TESTINST3("add.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2006 TESTINST3("adds.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2007 TESTINST3("adds.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2008 TESTINST3("adds.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2009 TESTINST3("adds.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2010 TESTINST3("adds.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2011 TESTINST3("adds.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2012 TESTINST3("adds.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2013 TESTINST3("adds.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2014 TESTINST3("adds.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2015 TESTINST3("adds.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2016 TESTINST3("adds.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2017 TESTINST3("adds.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2018 TESTINST3("add.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2019 TESTINST3("add.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2020 TESTINST3("add.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2021 TESTINST3("add.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2022 TESTINST3("add.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2023 TESTINST3("add.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2024 TESTINST3("add.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2025 TESTINST3("add.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2026 TESTINST3("add.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2027 TESTINST3("add.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2028 TESTINST3("add.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2029 TESTINST3("add.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2030 TESTCARRYEND 2031 2032 printf("SUBB{S}.W Rd, Rn, Rm, {shift}\n"); 2033 TESTCARRY 2034 TESTINST3("subs.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2035 TESTINST3("subs.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2036 TESTINST3("subs.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2037 TESTINST3("subs.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2038 TESTINST3("subs.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2039 TESTINST3("subs.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2040 TESTINST3("subs.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2041 TESTINST3("subs.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2042 TESTINST3("subs.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2043 TESTINST3("subs.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2044 TESTINST3("subs.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2045 TESTINST3("subs.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2046 TESTINST3("sub.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2047 TESTINST3("sub.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2048 TESTINST3("sub.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2049 TESTINST3("sub.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2050 TESTINST3("sub.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2051 TESTINST3("sub.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2052 TESTINST3("sub.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2053 TESTINST3("sub.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2054 TESTINST3("sub.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2055 TESTINST3("sub.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2056 TESTINST3("sub.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2057 TESTINST3("sub.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2058 TESTINST3("subs.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2059 TESTINST3("subs.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2060 TESTINST3("subs.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2061 TESTINST3("subs.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2062 TESTINST3("subs.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2063 TESTINST3("subs.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2064 TESTINST3("subs.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2065 TESTINST3("subs.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2066 TESTINST3("subs.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2067 TESTINST3("subs.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2068 TESTINST3("subs.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2069 TESTINST3("subs.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2070 TESTINST3("sub.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2071 TESTINST3("sub.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2072 TESTINST3("sub.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2073 TESTINST3("sub.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2074 TESTINST3("sub.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2075 TESTINST3("sub.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2076 TESTINST3("sub.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2077 TESTINST3("sub.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2078 TESTINST3("sub.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2079 TESTINST3("sub.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2080 TESTINST3("sub.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2081 TESTINST3("sub.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2082 TESTINST3("subs.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 2083 TESTINST3("subs.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 2084 TESTINST3("subs.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 2085 TESTINST3("subs.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 2086 TESTINST3("subs.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 2087 TESTINST3("subs.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 2088 TESTINST3("subs.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 2089 TESTINST3("subs.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 2090 TESTINST3("subs.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 2091 TESTINST3("subs.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 2092 TESTINST3("subs.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 2093 TESTINST3("subs.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 2094 TESTINST3("sub.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 2095 TESTINST3("sub.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 2096 TESTINST3("sub.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 2097 TESTINST3("sub.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 2098 TESTINST3("sub.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 2099 TESTINST3("sub.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 2100 TESTINST3("sub.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 2101 TESTINST3("sub.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 2102 TESTINST3("sub.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 2103 TESTINST3("sub.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 2104 TESTINST3("sub.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 2105 TESTINST3("sub.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 2106 TESTINST3("subs.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 2107 TESTINST3("subs.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 2108 TESTINST3("subs.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 2109 TESTINST3("subs.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 2110 TESTINST3("subs.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 2111 TESTINST3("subs.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 2112 TESTINST3("subs.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 2113 TESTINST3("subs.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 2114 TESTINST3("subs.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 2115 TESTINST3("subs.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 2116 TESTINST3("subs.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 2117 TESTINST3("subs.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 2118 TESTINST3("sub.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 2119 TESTINST3("sub.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 2120 TESTINST3("sub.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 2121 TESTINST3("sub.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 2122 TESTINST3("sub.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 2123 TESTINST3("sub.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 2124 TESTINST3("sub.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 2125 TESTINST3("sub.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 2126 TESTINST3("sub.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 2127 TESTINST3("sub.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 2128 TESTINST3("sub.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 2129 TESTINST3("sub.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 2130 TESTINST3("subs.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 2131 TESTINST3("subs.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 2132 TESTINST3("subs.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 2133 TESTINST3("subs.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 2134 TESTINST3("subs.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 2135 TESTINST3("subs.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 2136 TESTINST3("subs.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 2137 TESTINST3("subs.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 2138 TESTINST3("subs.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 2139 TESTINST3("subs.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 2140 TESTINST3("subs.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 2141 TESTINST3("subs.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 2142 TESTINST3("sub.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 2143 TESTINST3("sub.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 2144 TESTINST3("sub.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 2145 TESTINST3("sub.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 2146 TESTINST3("sub.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 2147 TESTINST3("sub.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 2148 TESTINST3("sub.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 2149 TESTINST3("sub.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 2150 TESTINST3("sub.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 2151 TESTINST3("sub.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 2152 TESTINST3("sub.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 2153 TESTINST3("sub.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 2154 TESTINST3("subs.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 2155 TESTINST3("subs.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 2156 TESTINST3("subs.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 2157 TESTINST3("subs.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 2158 TESTINST3("subs.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 2159 TESTINST3("subs.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 2160 TESTINST3("subs.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 2161 TESTINST3("subs.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 2162 TESTINST3("subs.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 2163 TESTINST3("subs.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 2164 TESTINST3("subs.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 2165 TESTINST3("subs.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 2166 TESTINST3("sub.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 2167 TESTINST3("sub.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 2168 TESTINST3("sub.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 2169 TESTINST3("sub.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 2170 TESTINST3("sub.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 2171 TESTINST3("sub.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 2172 TESTINST3("sub.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 2173 TESTINST3("sub.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 2174 TESTINST3("sub.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 2175 TESTINST3("sub.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 2176 TESTINST3("sub.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 2177 TESTINST3("sub.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 2178 TESTINST3("subs.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 2179 TESTINST3("subs.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 2180 TESTINST3("subs.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 2181 TESTINST3("subs.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 2182 TESTINST3("subs.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 2183 TESTINST3("subs.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 2184 TESTINST3("subs.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 2185 TESTINST3("subs.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 2186 TESTINST3("subs.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 2187 TESTINST3("subs.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 2188 TESTINST3("subs.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 2189 TESTINST3("subs.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 2190 TESTINST3("sub.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 2191 TESTINST3("sub.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 2192 TESTINST3("sub.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 2193 TESTINST3("sub.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 2194 TESTINST3("sub.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 2195 TESTINST3("sub.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 2196 TESTINST3("sub.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 2197 TESTINST3("sub.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 2198 TESTINST3("sub.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 2199 TESTINST3("sub.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 2200 TESTINST3("sub.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 2201 TESTINST3("sub.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 2202 TESTINST3("subs.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 2203 TESTINST3("subs.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 2204 TESTINST3("subs.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 2205 TESTINST3("subs.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 2206 TESTINST3("subs.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 2207 TESTINST3("subs.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 2208 TESTINST3("subs.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 2209 TESTINST3("subs.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 2210 TESTINST3("subs.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 2211 TESTINST3("subs.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 2212 TESTINST3("subs.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 2213 TESTINST3("subs.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 2214 TESTINST3("sub.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 2215 TESTINST3("sub.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 2216 TESTINST3("sub.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 2217 TESTINST3("sub.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 2218 TESTINST3("sub.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 2219 TESTINST3("sub.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 2220 TESTINST3("sub.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 2221 TESTINST3("sub.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 2222 TESTINST3("sub.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 2223 TESTINST3("sub.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 2224 TESTINST3("sub.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 2225 TESTINST3("sub.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 2226 TESTINST3("subs.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 2227 TESTINST3("subs.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 2228 TESTINST3("subs.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 2229 TESTINST3("subs.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 2230 TESTINST3("subs.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 2231 TESTINST3("subs.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 2232 TESTINST3("subs.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 2233 TESTINST3("subs.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 2234 TESTINST3("subs.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 2235 TESTINST3("subs.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 2236 TESTINST3("subs.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 2237 TESTINST3("subs.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 2238 TESTINST3("sub.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 2239 TESTINST3("sub.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 2240 TESTINST3("sub.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 2241 TESTINST3("sub.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 2242 TESTINST3("sub.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 2243 TESTINST3("sub.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 2244 TESTINST3("sub.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 2245 TESTINST3("sub.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 2246 TESTINST3("sub.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 2247 TESTINST3("sub.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 2248 TESTINST3("sub.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 2249 TESTINST3("sub.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 2250 TESTINST3("subs.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2251 TESTINST3("subs.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2252 TESTINST3("subs.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2253 TESTINST3("subs.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2254 TESTINST3("subs.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2255 TESTINST3("subs.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2256 TESTINST3("subs.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2257 TESTINST3("subs.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2258 TESTINST3("subs.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2259 TESTINST3("subs.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2260 TESTINST3("subs.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2261 TESTINST3("subs.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2262 TESTINST3("sub.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2263 TESTINST3("sub.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2264 TESTINST3("sub.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2265 TESTINST3("sub.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2266 TESTINST3("sub.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2267 TESTINST3("sub.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2268 TESTINST3("sub.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2269 TESTINST3("sub.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2270 TESTINST3("sub.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2271 TESTINST3("sub.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2272 TESTINST3("sub.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2273 TESTINST3("sub.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2274 TESTINST3("subs.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2275 TESTINST3("subs.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2276 TESTINST3("subs.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2277 TESTINST3("subs.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2278 TESTINST3("subs.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2279 TESTINST3("subs.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2280 TESTINST3("subs.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2281 TESTINST3("subs.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2282 TESTINST3("subs.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2283 TESTINST3("subs.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2284 TESTINST3("subs.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2285 TESTINST3("subs.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2286 TESTINST3("sub.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2287 TESTINST3("sub.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2288 TESTINST3("sub.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2289 TESTINST3("sub.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2290 TESTINST3("sub.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2291 TESTINST3("sub.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2292 TESTINST3("sub.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2293 TESTINST3("sub.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2294 TESTINST3("sub.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2295 TESTINST3("sub.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2296 TESTINST3("sub.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2297 TESTINST3("sub.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2298 TESTINST3("subs.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2299 TESTINST3("subs.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2300 TESTINST3("subs.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2301 TESTINST3("subs.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2302 TESTINST3("subs.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2303 TESTINST3("subs.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2304 TESTINST3("subs.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2305 TESTINST3("subs.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2306 TESTINST3("subs.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2307 TESTINST3("subs.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2308 TESTINST3("subs.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2309 TESTINST3("subs.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2310 TESTINST3("sub.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2311 TESTINST3("sub.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2312 TESTINST3("sub.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2313 TESTINST3("sub.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2314 TESTINST3("sub.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2315 TESTINST3("sub.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2316 TESTINST3("sub.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2317 TESTINST3("sub.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2318 TESTINST3("sub.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2319 TESTINST3("sub.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2320 TESTINST3("sub.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2321 TESTINST3("sub.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2322 TESTINST3("subs.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2323 TESTINST3("subs.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2324 TESTINST3("subs.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2325 TESTINST3("subs.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2326 TESTINST3("subs.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2327 TESTINST3("subs.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2328 TESTINST3("subs.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2329 TESTINST3("subs.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2330 TESTINST3("subs.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2331 TESTINST3("subs.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2332 TESTINST3("subs.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2333 TESTINST3("subs.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2334 TESTINST3("sub.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2335 TESTINST3("sub.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2336 TESTINST3("sub.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2337 TESTINST3("sub.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2338 TESTINST3("sub.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2339 TESTINST3("sub.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2340 TESTINST3("sub.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2341 TESTINST3("sub.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2342 TESTINST3("sub.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2343 TESTINST3("sub.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2344 TESTINST3("sub.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2345 TESTINST3("sub.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2346 TESTCARRYEND 2347 2348 printf("RSB{S}.W Rd, Rn, Rm, {shift}\n"); 2349 TESTCARRY 2350 TESTINST3("rsbs.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2351 TESTINST3("rsbs.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2352 TESTINST3("rsbs.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2353 TESTINST3("rsbs.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2354 TESTINST3("rsbs.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2355 TESTINST3("rsbs.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2356 TESTINST3("rsbs.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2357 TESTINST3("rsbs.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2358 TESTINST3("rsbs.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2359 TESTINST3("rsbs.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2360 TESTINST3("rsbs.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2361 TESTINST3("rsbs.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2362 TESTINST3("rsb.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2363 TESTINST3("rsb.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2364 TESTINST3("rsb.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2365 TESTINST3("rsb.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2366 TESTINST3("rsb.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2367 TESTINST3("rsb.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2368 TESTINST3("rsb.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2369 TESTINST3("rsb.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2370 TESTINST3("rsb.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2371 TESTINST3("rsb.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2372 TESTINST3("rsb.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2373 TESTINST3("rsb.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2374 TESTINST3("rsbs.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2375 TESTINST3("rsbs.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2376 TESTINST3("rsbs.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2377 TESTINST3("rsbs.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2378 TESTINST3("rsbs.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2379 TESTINST3("rsbs.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2380 TESTINST3("rsbs.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2381 TESTINST3("rsbs.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2382 TESTINST3("rsbs.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2383 TESTINST3("rsbs.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2384 TESTINST3("rsbs.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2385 TESTINST3("rsbs.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2386 TESTINST3("rsb.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2387 TESTINST3("rsb.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2388 TESTINST3("rsb.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2389 TESTINST3("rsb.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2390 TESTINST3("rsb.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2391 TESTINST3("rsb.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2392 TESTINST3("rsb.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2393 TESTINST3("rsb.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2394 TESTINST3("rsb.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2395 TESTINST3("rsb.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2396 TESTINST3("rsb.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2397 TESTINST3("rsb.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2398 TESTINST3("rsbs.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 2399 TESTINST3("rsbs.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 2400 TESTINST3("rsbs.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 2401 TESTINST3("rsbs.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 2402 TESTINST3("rsbs.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 2403 TESTINST3("rsbs.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 2404 TESTINST3("rsbs.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 2405 TESTINST3("rsbs.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 2406 TESTINST3("rsbs.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 2407 TESTINST3("rsbs.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 2408 TESTINST3("rsbs.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 2409 TESTINST3("rsbs.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 2410 TESTINST3("rsb.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 2411 TESTINST3("rsb.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 2412 TESTINST3("rsb.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 2413 TESTINST3("rsb.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 2414 TESTINST3("rsb.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 2415 TESTINST3("rsb.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 2416 TESTINST3("rsb.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 2417 TESTINST3("rsb.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 2418 TESTINST3("rsb.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 2419 TESTINST3("rsb.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 2420 TESTINST3("rsb.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 2421 TESTINST3("rsb.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 2422 TESTINST3("rsbs.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 2423 TESTINST3("rsbs.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 2424 TESTINST3("rsbs.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 2425 TESTINST3("rsbs.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 2426 TESTINST3("rsbs.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 2427 TESTINST3("rsbs.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 2428 TESTINST3("rsbs.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 2429 TESTINST3("rsbs.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 2430 TESTINST3("rsbs.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 2431 TESTINST3("rsbs.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 2432 TESTINST3("rsbs.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 2433 TESTINST3("rsbs.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 2434 TESTINST3("rsb.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 2435 TESTINST3("rsb.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 2436 TESTINST3("rsb.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 2437 TESTINST3("rsb.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 2438 TESTINST3("rsb.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 2439 TESTINST3("rsb.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 2440 TESTINST3("rsb.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 2441 TESTINST3("rsb.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 2442 TESTINST3("rsb.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 2443 TESTINST3("rsb.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 2444 TESTINST3("rsb.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 2445 TESTINST3("rsb.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 2446 TESTINST3("rsbs.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 2447 TESTINST3("rsbs.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 2448 TESTINST3("rsbs.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 2449 TESTINST3("rsbs.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 2450 TESTINST3("rsbs.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 2451 TESTINST3("rsbs.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 2452 TESTINST3("rsbs.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 2453 TESTINST3("rsbs.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 2454 TESTINST3("rsbs.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 2455 TESTINST3("rsbs.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 2456 TESTINST3("rsbs.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 2457 TESTINST3("rsbs.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 2458 TESTINST3("rsb.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 2459 TESTINST3("rsb.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 2460 TESTINST3("rsb.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 2461 TESTINST3("rsb.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 2462 TESTINST3("rsb.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 2463 TESTINST3("rsb.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 2464 TESTINST3("rsb.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 2465 TESTINST3("rsb.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 2466 TESTINST3("rsb.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 2467 TESTINST3("rsb.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 2468 TESTINST3("rsb.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 2469 TESTINST3("rsb.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 2470 TESTINST3("rsbs.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 2471 TESTINST3("rsbs.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 2472 TESTINST3("rsbs.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 2473 TESTINST3("rsbs.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 2474 TESTINST3("rsbs.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 2475 TESTINST3("rsbs.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 2476 TESTINST3("rsbs.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 2477 TESTINST3("rsbs.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 2478 TESTINST3("rsbs.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 2479 TESTINST3("rsbs.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 2480 TESTINST3("rsbs.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 2481 TESTINST3("rsbs.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 2482 TESTINST3("rsb.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 2483 TESTINST3("rsb.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 2484 TESTINST3("rsb.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 2485 TESTINST3("rsb.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 2486 TESTINST3("rsb.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 2487 TESTINST3("rsb.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 2488 TESTINST3("rsb.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 2489 TESTINST3("rsb.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 2490 TESTINST3("rsb.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 2491 TESTINST3("rsb.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 2492 TESTINST3("rsb.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 2493 TESTINST3("rsb.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 2494 TESTINST3("rsbs.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 2495 TESTINST3("rsbs.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 2496 TESTINST3("rsbs.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 2497 TESTINST3("rsbs.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 2498 TESTINST3("rsbs.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 2499 TESTINST3("rsbs.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 2500 TESTINST3("rsbs.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 2501 TESTINST3("rsbs.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 2502 TESTINST3("rsbs.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 2503 TESTINST3("rsbs.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 2504 TESTINST3("rsbs.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 2505 TESTINST3("rsbs.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 2506 TESTINST3("rsb.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 2507 TESTINST3("rsb.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 2508 TESTINST3("rsb.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 2509 TESTINST3("rsb.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 2510 TESTINST3("rsb.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 2511 TESTINST3("rsb.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 2512 TESTINST3("rsb.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 2513 TESTINST3("rsb.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 2514 TESTINST3("rsb.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 2515 TESTINST3("rsb.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 2516 TESTINST3("rsb.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 2517 TESTINST3("rsb.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 2518 TESTINST3("rsbs.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 2519 TESTINST3("rsbs.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 2520 TESTINST3("rsbs.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 2521 TESTINST3("rsbs.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 2522 TESTINST3("rsbs.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 2523 TESTINST3("rsbs.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 2524 TESTINST3("rsbs.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 2525 TESTINST3("rsbs.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 2526 TESTINST3("rsbs.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 2527 TESTINST3("rsbs.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 2528 TESTINST3("rsbs.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 2529 TESTINST3("rsbs.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 2530 TESTINST3("rsb.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 2531 TESTINST3("rsb.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 2532 TESTINST3("rsb.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 2533 TESTINST3("rsb.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 2534 TESTINST3("rsb.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 2535 TESTINST3("rsb.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 2536 TESTINST3("rsb.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 2537 TESTINST3("rsb.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 2538 TESTINST3("rsb.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 2539 TESTINST3("rsb.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 2540 TESTINST3("rsb.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 2541 TESTINST3("rsb.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 2542 TESTINST3("rsbs.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 2543 TESTINST3("rsbs.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 2544 TESTINST3("rsbs.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 2545 TESTINST3("rsbs.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 2546 TESTINST3("rsbs.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 2547 TESTINST3("rsbs.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 2548 TESTINST3("rsbs.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 2549 TESTINST3("rsbs.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 2550 TESTINST3("rsbs.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 2551 TESTINST3("rsbs.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 2552 TESTINST3("rsbs.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 2553 TESTINST3("rsbs.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 2554 TESTINST3("rsb.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 2555 TESTINST3("rsb.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 2556 TESTINST3("rsb.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 2557 TESTINST3("rsb.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 2558 TESTINST3("rsb.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 2559 TESTINST3("rsb.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 2560 TESTINST3("rsb.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 2561 TESTINST3("rsb.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 2562 TESTINST3("rsb.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 2563 TESTINST3("rsb.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 2564 TESTINST3("rsb.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 2565 TESTINST3("rsb.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 2566 TESTINST3("rsbs.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2567 TESTINST3("rsbs.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2568 TESTINST3("rsbs.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2569 TESTINST3("rsbs.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2570 TESTINST3("rsbs.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2571 TESTINST3("rsbs.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2572 TESTINST3("rsbs.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2573 TESTINST3("rsbs.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2574 TESTINST3("rsbs.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2575 TESTINST3("rsbs.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2576 TESTINST3("rsbs.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2577 TESTINST3("rsbs.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2578 TESTINST3("rsb.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2579 TESTINST3("rsb.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2580 TESTINST3("rsb.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2581 TESTINST3("rsb.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2582 TESTINST3("rsb.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2583 TESTINST3("rsb.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2584 TESTINST3("rsb.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2585 TESTINST3("rsb.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2586 TESTINST3("rsb.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2587 TESTINST3("rsb.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2588 TESTINST3("rsb.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2589 TESTINST3("rsb.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2590 TESTINST3("rsbs.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2591 TESTINST3("rsbs.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2592 TESTINST3("rsbs.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2593 TESTINST3("rsbs.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2594 TESTINST3("rsbs.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2595 TESTINST3("rsbs.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2596 TESTINST3("rsbs.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2597 TESTINST3("rsbs.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2598 TESTINST3("rsbs.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2599 TESTINST3("rsbs.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2600 TESTINST3("rsbs.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2601 TESTINST3("rsbs.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2602 TESTINST3("rsb.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2603 TESTINST3("rsb.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2604 TESTINST3("rsb.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2605 TESTINST3("rsb.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2606 TESTINST3("rsb.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2607 TESTINST3("rsb.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2608 TESTINST3("rsb.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2609 TESTINST3("rsb.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2610 TESTINST3("rsb.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2611 TESTINST3("rsb.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2612 TESTINST3("rsb.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2613 TESTINST3("rsb.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2614 TESTINST3("rsbs.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2615 TESTINST3("rsbs.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2616 TESTINST3("rsbs.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2617 TESTINST3("rsbs.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2618 TESTINST3("rsbs.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2619 TESTINST3("rsbs.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2620 TESTINST3("rsbs.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2621 TESTINST3("rsbs.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2622 TESTINST3("rsbs.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2623 TESTINST3("rsbs.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2624 TESTINST3("rsbs.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2625 TESTINST3("rsbs.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2626 TESTINST3("rsb.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2627 TESTINST3("rsb.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2628 TESTINST3("rsb.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2629 TESTINST3("rsb.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2630 TESTINST3("rsb.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2631 TESTINST3("rsb.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2632 TESTINST3("rsb.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2633 TESTINST3("rsb.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2634 TESTINST3("rsb.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2635 TESTINST3("rsb.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2636 TESTINST3("rsb.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2637 TESTINST3("rsb.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2638 TESTINST3("rsbs.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2639 TESTINST3("rsbs.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2640 TESTINST3("rsbs.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2641 TESTINST3("rsbs.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2642 TESTINST3("rsbs.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2643 TESTINST3("rsbs.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2644 TESTINST3("rsbs.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2645 TESTINST3("rsbs.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2646 TESTINST3("rsbs.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2647 TESTINST3("rsbs.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2648 TESTINST3("rsbs.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2649 TESTINST3("rsbs.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2650 TESTINST3("rsb.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2651 TESTINST3("rsb.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2652 TESTINST3("rsb.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2653 TESTINST3("rsb.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2654 TESTINST3("rsb.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2655 TESTINST3("rsb.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2656 TESTINST3("rsb.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2657 TESTINST3("rsb.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2658 TESTINST3("rsb.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2659 TESTINST3("rsb.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2660 TESTINST3("rsb.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2661 TESTINST3("rsb.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2662 TESTCARRYEND 2663 2664 printf("ADC{S}.W Rd, Rn, Rm, {shift}\n"); 2665 TESTCARRY 2666 TESTINST3("adcs.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2667 TESTINST3("adcs.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2668 TESTINST3("adcs.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2669 TESTINST3("adcs.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2670 TESTINST3("adcs.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2671 TESTINST3("adcs.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2672 TESTINST3("adcs.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2673 TESTINST3("adcs.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2674 TESTINST3("adcs.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2675 TESTINST3("adcs.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2676 TESTINST3("adcs.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2677 TESTINST3("adcs.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2678 TESTINST3("adc.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2679 TESTINST3("adc.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2680 TESTINST3("adc.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2681 TESTINST3("adc.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2682 TESTINST3("adc.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2683 TESTINST3("adc.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2684 TESTINST3("adc.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2685 TESTINST3("adc.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2686 TESTINST3("adc.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2687 TESTINST3("adc.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2688 TESTINST3("adc.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2689 TESTINST3("adc.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2690 TESTINST3("adcs.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2691 TESTINST3("adcs.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2692 TESTINST3("adcs.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2693 TESTINST3("adcs.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2694 TESTINST3("adcs.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2695 TESTINST3("adcs.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2696 TESTINST3("adcs.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2697 TESTINST3("adcs.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2698 TESTINST3("adcs.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2699 TESTINST3("adcs.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2700 TESTINST3("adcs.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2701 TESTINST3("adcs.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2702 TESTINST3("adc.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2703 TESTINST3("adc.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2704 TESTINST3("adc.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2705 TESTINST3("adc.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2706 TESTINST3("adc.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2707 TESTINST3("adc.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2708 TESTINST3("adc.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2709 TESTINST3("adc.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2710 TESTINST3("adc.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2711 TESTINST3("adc.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 2712 TESTINST3("adc.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 2713 TESTINST3("adc.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 2714 TESTINST3("adcs.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 2715 TESTINST3("adcs.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 2716 TESTINST3("adcs.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 2717 TESTINST3("adcs.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 2718 TESTINST3("adcs.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 2719 TESTINST3("adcs.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 2720 TESTINST3("adcs.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 2721 TESTINST3("adcs.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 2722 TESTINST3("adcs.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 2723 TESTINST3("adcs.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 2724 TESTINST3("adcs.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 2725 TESTINST3("adcs.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 2726 TESTINST3("adc.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 2727 TESTINST3("adc.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 2728 TESTINST3("adc.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 2729 TESTINST3("adc.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 2730 TESTINST3("adc.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 2731 TESTINST3("adc.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 2732 TESTINST3("adc.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 2733 TESTINST3("adc.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 2734 TESTINST3("adc.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 2735 TESTINST3("adc.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 2736 TESTINST3("adc.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 2737 TESTINST3("adc.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 2738 TESTINST3("adcs.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 2739 TESTINST3("adcs.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 2740 TESTINST3("adcs.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 2741 TESTINST3("adcs.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 2742 TESTINST3("adcs.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 2743 TESTINST3("adcs.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 2744 TESTINST3("adcs.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 2745 TESTINST3("adcs.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 2746 TESTINST3("adcs.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 2747 TESTINST3("adcs.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 2748 TESTINST3("adcs.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 2749 TESTINST3("adcs.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 2750 TESTINST3("adc.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 2751 TESTINST3("adc.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 2752 TESTINST3("adc.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 2753 TESTINST3("adc.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 2754 TESTINST3("adc.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 2755 TESTINST3("adc.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 2756 TESTINST3("adc.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 2757 TESTINST3("adc.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 2758 TESTINST3("adc.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 2759 TESTINST3("adc.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 2760 TESTINST3("adc.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 2761 TESTINST3("adc.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 2762 TESTINST3("adcs.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 2763 TESTINST3("adcs.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 2764 TESTINST3("adcs.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 2765 TESTINST3("adcs.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 2766 TESTINST3("adcs.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 2767 TESTINST3("adcs.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 2768 TESTINST3("adcs.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 2769 TESTINST3("adcs.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 2770 TESTINST3("adcs.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 2771 TESTINST3("adcs.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 2772 TESTINST3("adcs.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 2773 TESTINST3("adcs.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 2774 TESTINST3("adc.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 2775 TESTINST3("adc.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 2776 TESTINST3("adc.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 2777 TESTINST3("adc.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 2778 TESTINST3("adc.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 2779 TESTINST3("adc.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 2780 TESTINST3("adc.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 2781 TESTINST3("adc.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 2782 TESTINST3("adc.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 2783 TESTINST3("adc.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 2784 TESTINST3("adc.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 2785 TESTINST3("adc.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 2786 TESTINST3("adcs.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 2787 TESTINST3("adcs.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 2788 TESTINST3("adcs.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 2789 TESTINST3("adcs.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 2790 TESTINST3("adcs.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 2791 TESTINST3("adcs.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 2792 TESTINST3("adcs.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 2793 TESTINST3("adcs.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 2794 TESTINST3("adcs.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 2795 TESTINST3("adcs.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 2796 TESTINST3("adcs.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 2797 TESTINST3("adcs.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 2798 TESTINST3("adc.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 2799 TESTINST3("adc.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 2800 TESTINST3("adc.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 2801 TESTINST3("adc.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 2802 TESTINST3("adc.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 2803 TESTINST3("adc.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 2804 TESTINST3("adc.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 2805 TESTINST3("adc.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 2806 TESTINST3("adc.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 2807 TESTINST3("adc.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 2808 TESTINST3("adc.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 2809 TESTINST3("adc.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 2810 TESTINST3("adcs.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 2811 TESTINST3("adcs.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 2812 TESTINST3("adcs.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 2813 TESTINST3("adcs.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 2814 TESTINST3("adcs.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 2815 TESTINST3("adcs.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 2816 TESTINST3("adcs.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 2817 TESTINST3("adcs.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 2818 TESTINST3("adcs.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 2819 TESTINST3("adcs.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 2820 TESTINST3("adcs.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 2821 TESTINST3("adcs.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 2822 TESTINST3("adc.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 2823 TESTINST3("adc.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 2824 TESTINST3("adc.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 2825 TESTINST3("adc.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 2826 TESTINST3("adc.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 2827 TESTINST3("adc.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 2828 TESTINST3("adc.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 2829 TESTINST3("adc.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 2830 TESTINST3("adc.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 2831 TESTINST3("adc.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 2832 TESTINST3("adc.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 2833 TESTINST3("adc.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 2834 TESTINST3("adcs.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 2835 TESTINST3("adcs.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 2836 TESTINST3("adcs.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 2837 TESTINST3("adcs.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 2838 TESTINST3("adcs.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 2839 TESTINST3("adcs.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 2840 TESTINST3("adcs.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 2841 TESTINST3("adcs.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 2842 TESTINST3("adcs.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 2843 TESTINST3("adcs.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 2844 TESTINST3("adcs.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 2845 TESTINST3("adcs.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 2846 TESTINST3("adc.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 2847 TESTINST3("adc.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 2848 TESTINST3("adc.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 2849 TESTINST3("adc.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 2850 TESTINST3("adc.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 2851 TESTINST3("adc.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 2852 TESTINST3("adc.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 2853 TESTINST3("adc.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 2854 TESTINST3("adc.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 2855 TESTINST3("adc.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 2856 TESTINST3("adc.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 2857 TESTINST3("adc.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 2858 TESTINST3("adcs.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 2859 TESTINST3("adcs.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 2860 TESTINST3("adcs.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 2861 TESTINST3("adcs.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 2862 TESTINST3("adcs.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 2863 TESTINST3("adcs.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 2864 TESTINST3("adcs.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 2865 TESTINST3("adcs.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 2866 TESTINST3("adcs.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 2867 TESTINST3("adcs.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 2868 TESTINST3("adcs.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 2869 TESTINST3("adcs.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 2870 TESTINST3("adc.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 2871 TESTINST3("adc.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 2872 TESTINST3("adc.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 2873 TESTINST3("adc.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 2874 TESTINST3("adc.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 2875 TESTINST3("adc.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 2876 TESTINST3("adc.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 2877 TESTINST3("adc.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 2878 TESTINST3("adc.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 2879 TESTINST3("adc.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 2880 TESTINST3("adc.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 2881 TESTINST3("adc.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 2882 TESTINST3("adcs.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2883 TESTINST3("adcs.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2884 TESTINST3("adcs.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2885 TESTINST3("adcs.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2886 TESTINST3("adcs.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2887 TESTINST3("adcs.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2888 TESTINST3("adcs.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2889 TESTINST3("adcs.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2890 TESTINST3("adcs.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2891 TESTINST3("adcs.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2892 TESTINST3("adcs.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2893 TESTINST3("adcs.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2894 TESTINST3("adc.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2895 TESTINST3("adc.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2896 TESTINST3("adc.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2897 TESTINST3("adc.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2898 TESTINST3("adc.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2899 TESTINST3("adc.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2900 TESTINST3("adc.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2901 TESTINST3("adc.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2902 TESTINST3("adc.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2903 TESTINST3("adc.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 2904 TESTINST3("adc.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 2905 TESTINST3("adc.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 2906 TESTINST3("adcs.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2907 TESTINST3("adcs.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2908 TESTINST3("adcs.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2909 TESTINST3("adcs.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2910 TESTINST3("adcs.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2911 TESTINST3("adcs.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2912 TESTINST3("adcs.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2913 TESTINST3("adcs.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2914 TESTINST3("adcs.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2915 TESTINST3("adcs.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2916 TESTINST3("adcs.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2917 TESTINST3("adcs.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2918 TESTINST3("adc.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2919 TESTINST3("adc.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2920 TESTINST3("adc.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2921 TESTINST3("adc.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2922 TESTINST3("adc.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2923 TESTINST3("adc.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2924 TESTINST3("adc.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2925 TESTINST3("adc.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2926 TESTINST3("adc.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2927 TESTINST3("adc.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2928 TESTINST3("adc.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2929 TESTINST3("adc.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 2930 TESTINST3("adcs.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2931 TESTINST3("adcs.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2932 TESTINST3("adcs.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2933 TESTINST3("adcs.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2934 TESTINST3("adcs.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2935 TESTINST3("adcs.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2936 TESTINST3("adcs.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2937 TESTINST3("adcs.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2938 TESTINST3("adcs.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2939 TESTINST3("adcs.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2940 TESTINST3("adcs.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2941 TESTINST3("adcs.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2942 TESTINST3("adc.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2943 TESTINST3("adc.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2944 TESTINST3("adc.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2945 TESTINST3("adc.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2946 TESTINST3("adc.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2947 TESTINST3("adc.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2948 TESTINST3("adc.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2949 TESTINST3("adc.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2950 TESTINST3("adc.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2951 TESTINST3("adc.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2952 TESTINST3("adc.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2953 TESTINST3("adc.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 2954 TESTINST3("adcs.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2955 TESTINST3("adcs.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2956 TESTINST3("adcs.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2957 TESTINST3("adcs.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2958 TESTINST3("adcs.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2959 TESTINST3("adcs.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2960 TESTINST3("adcs.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2961 TESTINST3("adcs.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2962 TESTINST3("adcs.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2963 TESTINST3("adcs.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2964 TESTINST3("adcs.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2965 TESTINST3("adcs.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2966 TESTINST3("adc.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2967 TESTINST3("adc.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2968 TESTINST3("adc.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2969 TESTINST3("adc.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2970 TESTINST3("adc.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2971 TESTINST3("adc.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2972 TESTINST3("adc.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2973 TESTINST3("adc.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2974 TESTINST3("adc.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2975 TESTINST3("adc.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2976 TESTINST3("adc.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2977 TESTINST3("adc.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 2978 TESTCARRYEND 2979 2980 printf("SBC{S}.W Rd, Rn, Rm, {shift}\n"); 2981 TESTCARRY 2982 TESTINST3("sbcs.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2983 TESTINST3("sbcs.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2984 TESTINST3("sbcs.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2985 TESTINST3("sbcs.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2986 TESTINST3("sbcs.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2987 TESTINST3("sbcs.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2988 TESTINST3("sbcs.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2989 TESTINST3("sbcs.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2990 TESTINST3("sbcs.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2991 TESTINST3("sbcs.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2992 TESTINST3("sbcs.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2993 TESTINST3("sbcs.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2994 TESTINST3("sbc.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2995 TESTINST3("sbc.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2996 TESTINST3("sbc.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 2997 TESTINST3("sbc.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 2998 TESTINST3("sbc.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 2999 TESTINST3("sbc.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3000 TESTINST3("sbc.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3001 TESTINST3("sbc.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3002 TESTINST3("sbc.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3003 TESTINST3("sbc.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3004 TESTINST3("sbc.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3005 TESTINST3("sbc.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3006 TESTINST3("sbcs.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3007 TESTINST3("sbcs.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3008 TESTINST3("sbcs.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3009 TESTINST3("sbcs.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3010 TESTINST3("sbcs.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3011 TESTINST3("sbcs.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3012 TESTINST3("sbcs.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3013 TESTINST3("sbcs.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3014 TESTINST3("sbcs.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3015 TESTINST3("sbcs.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3016 TESTINST3("sbcs.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3017 TESTINST3("sbcs.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3018 TESTINST3("sbc.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3019 TESTINST3("sbc.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3020 TESTINST3("sbc.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3021 TESTINST3("sbc.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3022 TESTINST3("sbc.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3023 TESTINST3("sbc.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3024 TESTINST3("sbc.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3025 TESTINST3("sbc.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3026 TESTINST3("sbc.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3027 TESTINST3("sbc.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3028 TESTINST3("sbc.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3029 TESTINST3("sbc.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3030 TESTINST3("sbcs.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 3031 TESTINST3("sbcs.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 3032 TESTINST3("sbcs.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 3033 TESTINST3("sbcs.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 3034 TESTINST3("sbcs.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 3035 TESTINST3("sbcs.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 3036 TESTINST3("sbcs.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 3037 TESTINST3("sbcs.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 3038 TESTINST3("sbcs.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 3039 TESTINST3("sbcs.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 3040 TESTINST3("sbcs.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 3041 TESTINST3("sbcs.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 3042 TESTINST3("sbc.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 3043 TESTINST3("sbc.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 3044 TESTINST3("sbc.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 3045 TESTINST3("sbc.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 3046 TESTINST3("sbc.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 3047 TESTINST3("sbc.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 3048 TESTINST3("sbc.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 3049 TESTINST3("sbc.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 3050 TESTINST3("sbc.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 3051 TESTINST3("sbc.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 3052 TESTINST3("sbc.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 3053 TESTINST3("sbc.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 3054 TESTINST3("sbcs.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 3055 TESTINST3("sbcs.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 3056 TESTINST3("sbcs.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 3057 TESTINST3("sbcs.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 3058 TESTINST3("sbcs.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 3059 TESTINST3("sbcs.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 3060 TESTINST3("sbcs.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 3061 TESTINST3("sbcs.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 3062 TESTINST3("sbcs.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 3063 TESTINST3("sbcs.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 3064 TESTINST3("sbcs.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 3065 TESTINST3("sbcs.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 3066 TESTINST3("sbc.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 3067 TESTINST3("sbc.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 3068 TESTINST3("sbc.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 3069 TESTINST3("sbc.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 3070 TESTINST3("sbc.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 3071 TESTINST3("sbc.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 3072 TESTINST3("sbc.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 3073 TESTINST3("sbc.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 3074 TESTINST3("sbc.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 3075 TESTINST3("sbc.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 3076 TESTINST3("sbc.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 3077 TESTINST3("sbc.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 3078 TESTINST3("sbcs.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 3079 TESTINST3("sbcs.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 3080 TESTINST3("sbcs.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 3081 TESTINST3("sbcs.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 3082 TESTINST3("sbcs.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 3083 TESTINST3("sbcs.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 3084 TESTINST3("sbcs.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 3085 TESTINST3("sbcs.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 3086 TESTINST3("sbcs.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 3087 TESTINST3("sbcs.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 3088 TESTINST3("sbcs.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 3089 TESTINST3("sbcs.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 3090 TESTINST3("sbc.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 3091 TESTINST3("sbc.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 3092 TESTINST3("sbc.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 3093 TESTINST3("sbc.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 3094 TESTINST3("sbc.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 3095 TESTINST3("sbc.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 3096 TESTINST3("sbc.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 3097 TESTINST3("sbc.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 3098 TESTINST3("sbc.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 3099 TESTINST3("sbc.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 3100 TESTINST3("sbc.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 3101 TESTINST3("sbc.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 3102 TESTINST3("sbcs.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 3103 TESTINST3("sbcs.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 3104 TESTINST3("sbcs.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 3105 TESTINST3("sbcs.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 3106 TESTINST3("sbcs.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 3107 TESTINST3("sbcs.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 3108 TESTINST3("sbcs.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 3109 TESTINST3("sbcs.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 3110 TESTINST3("sbcs.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 3111 TESTINST3("sbcs.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 3112 TESTINST3("sbcs.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 3113 TESTINST3("sbcs.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 3114 TESTINST3("sbc.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 3115 TESTINST3("sbc.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 3116 TESTINST3("sbc.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 3117 TESTINST3("sbc.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 3118 TESTINST3("sbc.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 3119 TESTINST3("sbc.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 3120 TESTINST3("sbc.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 3121 TESTINST3("sbc.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 3122 TESTINST3("sbc.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 3123 TESTINST3("sbc.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 3124 TESTINST3("sbc.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 3125 TESTINST3("sbc.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 3126 TESTINST3("sbcs.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 3127 TESTINST3("sbcs.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 3128 TESTINST3("sbcs.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 3129 TESTINST3("sbcs.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 3130 TESTINST3("sbcs.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 3131 TESTINST3("sbcs.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 3132 TESTINST3("sbcs.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 3133 TESTINST3("sbcs.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 3134 TESTINST3("sbcs.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 3135 TESTINST3("sbcs.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 3136 TESTINST3("sbcs.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 3137 TESTINST3("sbcs.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 3138 TESTINST3("sbc.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 3139 TESTINST3("sbc.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 3140 TESTINST3("sbc.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 3141 TESTINST3("sbc.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 3142 TESTINST3("sbc.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 3143 TESTINST3("sbc.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 3144 TESTINST3("sbc.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 3145 TESTINST3("sbc.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 3146 TESTINST3("sbc.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 3147 TESTINST3("sbc.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 3148 TESTINST3("sbc.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 3149 TESTINST3("sbc.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 3150 TESTINST3("sbcs.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 3151 TESTINST3("sbcs.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 3152 TESTINST3("sbcs.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 3153 TESTINST3("sbcs.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 3154 TESTINST3("sbcs.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 3155 TESTINST3("sbcs.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 3156 TESTINST3("sbcs.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 3157 TESTINST3("sbcs.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 3158 TESTINST3("sbcs.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 3159 TESTINST3("sbcs.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 3160 TESTINST3("sbcs.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 3161 TESTINST3("sbcs.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 3162 TESTINST3("sbc.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 3163 TESTINST3("sbc.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 3164 TESTINST3("sbc.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 3165 TESTINST3("sbc.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 3166 TESTINST3("sbc.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 3167 TESTINST3("sbc.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 3168 TESTINST3("sbc.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 3169 TESTINST3("sbc.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 3170 TESTINST3("sbc.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 3171 TESTINST3("sbc.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 3172 TESTINST3("sbc.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 3173 TESTINST3("sbc.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 3174 TESTINST3("sbcs.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 3175 TESTINST3("sbcs.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 3176 TESTINST3("sbcs.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 3177 TESTINST3("sbcs.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 3178 TESTINST3("sbcs.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 3179 TESTINST3("sbcs.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 3180 TESTINST3("sbcs.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 3181 TESTINST3("sbcs.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 3182 TESTINST3("sbcs.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 3183 TESTINST3("sbcs.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 3184 TESTINST3("sbcs.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 3185 TESTINST3("sbcs.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 3186 TESTINST3("sbc.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 3187 TESTINST3("sbc.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 3188 TESTINST3("sbc.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 3189 TESTINST3("sbc.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 3190 TESTINST3("sbc.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 3191 TESTINST3("sbc.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 3192 TESTINST3("sbc.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 3193 TESTINST3("sbc.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 3194 TESTINST3("sbc.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 3195 TESTINST3("sbc.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 3196 TESTINST3("sbc.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 3197 TESTINST3("sbc.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 3198 TESTINST3("sbcs.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3199 TESTINST3("sbcs.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3200 TESTINST3("sbcs.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3201 TESTINST3("sbcs.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3202 TESTINST3("sbcs.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3203 TESTINST3("sbcs.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3204 TESTINST3("sbcs.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3205 TESTINST3("sbcs.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3206 TESTINST3("sbcs.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3207 TESTINST3("sbcs.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3208 TESTINST3("sbcs.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3209 TESTINST3("sbcs.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3210 TESTINST3("sbc.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3211 TESTINST3("sbc.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3212 TESTINST3("sbc.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3213 TESTINST3("sbc.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3214 TESTINST3("sbc.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3215 TESTINST3("sbc.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3216 TESTINST3("sbc.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3217 TESTINST3("sbc.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3218 TESTINST3("sbc.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3219 TESTINST3("sbc.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3220 TESTINST3("sbc.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3221 TESTINST3("sbc.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3222 TESTINST3("sbcs.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3223 TESTINST3("sbcs.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3224 TESTINST3("sbcs.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3225 TESTINST3("sbcs.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3226 TESTINST3("sbcs.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3227 TESTINST3("sbcs.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3228 TESTINST3("sbcs.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3229 TESTINST3("sbcs.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3230 TESTINST3("sbcs.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3231 TESTINST3("sbcs.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3232 TESTINST3("sbcs.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3233 TESTINST3("sbcs.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3234 TESTINST3("sbc.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3235 TESTINST3("sbc.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3236 TESTINST3("sbc.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3237 TESTINST3("sbc.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3238 TESTINST3("sbc.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3239 TESTINST3("sbc.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3240 TESTINST3("sbc.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3241 TESTINST3("sbc.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3242 TESTINST3("sbc.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3243 TESTINST3("sbc.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3244 TESTINST3("sbc.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3245 TESTINST3("sbc.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3246 TESTINST3("sbcs.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3247 TESTINST3("sbcs.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3248 TESTINST3("sbcs.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3249 TESTINST3("sbcs.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3250 TESTINST3("sbcs.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3251 TESTINST3("sbcs.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3252 TESTINST3("sbcs.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3253 TESTINST3("sbcs.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3254 TESTINST3("sbcs.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3255 TESTINST3("sbcs.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3256 TESTINST3("sbcs.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3257 TESTINST3("sbcs.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3258 TESTINST3("sbc.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3259 TESTINST3("sbc.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3260 TESTINST3("sbc.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3261 TESTINST3("sbc.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3262 TESTINST3("sbc.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3263 TESTINST3("sbc.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3264 TESTINST3("sbc.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3265 TESTINST3("sbc.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3266 TESTINST3("sbc.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3267 TESTINST3("sbc.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3268 TESTINST3("sbc.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3269 TESTINST3("sbc.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3270 TESTINST3("sbcs.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3271 TESTINST3("sbcs.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3272 TESTINST3("sbcs.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3273 TESTINST3("sbcs.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3274 TESTINST3("sbcs.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3275 TESTINST3("sbcs.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3276 TESTINST3("sbcs.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3277 TESTINST3("sbcs.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3278 TESTINST3("sbcs.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3279 TESTINST3("sbcs.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3280 TESTINST3("sbcs.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3281 TESTINST3("sbcs.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3282 TESTINST3("sbc.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3283 TESTINST3("sbc.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3284 TESTINST3("sbc.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3285 TESTINST3("sbc.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3286 TESTINST3("sbc.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3287 TESTINST3("sbc.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3288 TESTINST3("sbc.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3289 TESTINST3("sbc.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3290 TESTINST3("sbc.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3291 TESTINST3("sbc.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3292 TESTINST3("sbc.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3293 TESTINST3("sbc.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3294 TESTCARRYEND 3295 3296 #if 0 3297 printf("XXX{S}.W Rd, Rn, Rm, {shift}\n"); 3298 TESTCARRY 3299 TESTINST3("xxxs.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3300 TESTINST3("xxxs.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3301 TESTINST3("xxxs.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3302 TESTINST3("xxxs.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3303 TESTINST3("xxxs.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3304 TESTINST3("xxxs.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3305 TESTINST3("xxxs.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3306 TESTINST3("xxxs.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3307 TESTINST3("xxxs.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3308 TESTINST3("xxxs.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3309 TESTINST3("xxxs.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3310 TESTINST3("xxxs.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3311 TESTINST3("xxx.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3312 TESTINST3("xxx.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3313 TESTINST3("xxx.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3314 TESTINST3("xxx.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3315 TESTINST3("xxx.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3316 TESTINST3("xxx.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3317 TESTINST3("xxx.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3318 TESTINST3("xxx.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3319 TESTINST3("xxx.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3320 TESTINST3("xxx.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3321 TESTINST3("xxx.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3322 TESTINST3("xxx.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3323 TESTINST3("xxxs.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3324 TESTINST3("xxxs.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3325 TESTINST3("xxxs.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3326 TESTINST3("xxxs.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3327 TESTINST3("xxxs.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3328 TESTINST3("xxxs.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3329 TESTINST3("xxxs.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3330 TESTINST3("xxxs.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3331 TESTINST3("xxxs.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3332 TESTINST3("xxxs.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3333 TESTINST3("xxxs.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3334 TESTINST3("xxxs.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3335 TESTINST3("xxx.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3336 TESTINST3("xxx.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3337 TESTINST3("xxx.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3338 TESTINST3("xxx.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3339 TESTINST3("xxx.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3340 TESTINST3("xxx.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3341 TESTINST3("xxx.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3342 TESTINST3("xxx.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3343 TESTINST3("xxx.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3344 TESTINST3("xxx.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3345 TESTINST3("xxx.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3346 TESTINST3("xxx.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3347 TESTINST3("xxxs.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 3348 TESTINST3("xxxs.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 3349 TESTINST3("xxxs.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 3350 TESTINST3("xxxs.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 3351 TESTINST3("xxxs.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 3352 TESTINST3("xxxs.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 3353 TESTINST3("xxxs.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 3354 TESTINST3("xxxs.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 3355 TESTINST3("xxxs.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 3356 TESTINST3("xxxs.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 3357 TESTINST3("xxxs.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 3358 TESTINST3("xxxs.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 3359 TESTINST3("xxx.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 3360 TESTINST3("xxx.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 3361 TESTINST3("xxx.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 3362 TESTINST3("xxx.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 3363 TESTINST3("xxx.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 3364 TESTINST3("xxx.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 3365 TESTINST3("xxx.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 3366 TESTINST3("xxx.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 3367 TESTINST3("xxx.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 3368 TESTINST3("xxx.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 3369 TESTINST3("xxx.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 3370 TESTINST3("xxx.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 3371 TESTINST3("xxxs.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 3372 TESTINST3("xxxs.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 3373 TESTINST3("xxxs.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 3374 TESTINST3("xxxs.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 3375 TESTINST3("xxxs.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 3376 TESTINST3("xxxs.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 3377 TESTINST3("xxxs.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 3378 TESTINST3("xxxs.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 3379 TESTINST3("xxxs.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 3380 TESTINST3("xxxs.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 3381 TESTINST3("xxxs.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 3382 TESTINST3("xxxs.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 3383 TESTINST3("xxx.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 3384 TESTINST3("xxx.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 3385 TESTINST3("xxx.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 3386 TESTINST3("xxx.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 3387 TESTINST3("xxx.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 3388 TESTINST3("xxx.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 3389 TESTINST3("xxx.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 3390 TESTINST3("xxx.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 3391 TESTINST3("xxx.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 3392 TESTINST3("xxx.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 3393 TESTINST3("xxx.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 3394 TESTINST3("xxx.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 3395 TESTINST3("xxxs.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 3396 TESTINST3("xxxs.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 3397 TESTINST3("xxxs.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 3398 TESTINST3("xxxs.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 3399 TESTINST3("xxxs.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 3400 TESTINST3("xxxs.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 3401 TESTINST3("xxxs.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 3402 TESTINST3("xxxs.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 3403 TESTINST3("xxxs.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 3404 TESTINST3("xxxs.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 3405 TESTINST3("xxxs.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 3406 TESTINST3("xxxs.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 3407 TESTINST3("xxx.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 3408 TESTINST3("xxx.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 3409 TESTINST3("xxx.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 3410 TESTINST3("xxx.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 3411 TESTINST3("xxx.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 3412 TESTINST3("xxx.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 3413 TESTINST3("xxx.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 3414 TESTINST3("xxx.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 3415 TESTINST3("xxx.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 3416 TESTINST3("xxx.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 3417 TESTINST3("xxx.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 3418 TESTINST3("xxx.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 3419 TESTINST3("xxxs.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 3420 TESTINST3("xxxs.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 3421 TESTINST3("xxxs.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 3422 TESTINST3("xxxs.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 3423 TESTINST3("xxxs.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 3424 TESTINST3("xxxs.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 3425 TESTINST3("xxxs.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 3426 TESTINST3("xxxs.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 3427 TESTINST3("xxxs.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 3428 TESTINST3("xxxs.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 3429 TESTINST3("xxxs.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 3430 TESTINST3("xxxs.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 3431 TESTINST3("xxx.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 3432 TESTINST3("xxx.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 3433 TESTINST3("xxx.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 3434 TESTINST3("xxx.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 3435 TESTINST3("xxx.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 3436 TESTINST3("xxx.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 3437 TESTINST3("xxx.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 3438 TESTINST3("xxx.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 3439 TESTINST3("xxx.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 3440 TESTINST3("xxx.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 3441 TESTINST3("xxx.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 3442 TESTINST3("xxx.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 3443 TESTINST3("xxxs.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 3444 TESTINST3("xxxs.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 3445 TESTINST3("xxxs.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 3446 TESTINST3("xxxs.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 3447 TESTINST3("xxxs.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 3448 TESTINST3("xxxs.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 3449 TESTINST3("xxxs.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 3450 TESTINST3("xxxs.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 3451 TESTINST3("xxxs.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 3452 TESTINST3("xxxs.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 3453 TESTINST3("xxxs.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 3454 TESTINST3("xxxs.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 3455 TESTINST3("xxx.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 3456 TESTINST3("xxx.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 3457 TESTINST3("xxx.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 3458 TESTINST3("xxx.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 3459 TESTINST3("xxx.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 3460 TESTINST3("xxx.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 3461 TESTINST3("xxx.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 3462 TESTINST3("xxx.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 3463 TESTINST3("xxx.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 3464 TESTINST3("xxx.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 3465 TESTINST3("xxx.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 3466 TESTINST3("xxx.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 3467 TESTINST3("xxxs.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 3468 TESTINST3("xxxs.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 3469 TESTINST3("xxxs.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 3470 TESTINST3("xxxs.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 3471 TESTINST3("xxxs.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 3472 TESTINST3("xxxs.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 3473 TESTINST3("xxxs.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 3474 TESTINST3("xxxs.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 3475 TESTINST3("xxxs.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 3476 TESTINST3("xxxs.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 3477 TESTINST3("xxxs.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 3478 TESTINST3("xxxs.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 3479 TESTINST3("xxx.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 3480 TESTINST3("xxx.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 3481 TESTINST3("xxx.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 3482 TESTINST3("xxx.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 3483 TESTINST3("xxx.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 3484 TESTINST3("xxx.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 3485 TESTINST3("xxx.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 3486 TESTINST3("xxx.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 3487 TESTINST3("xxx.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 3488 TESTINST3("xxx.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 3489 TESTINST3("xxx.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 3490 TESTINST3("xxx.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 3491 TESTINST3("xxxs.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 3492 TESTINST3("xxxs.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 3493 TESTINST3("xxxs.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 3494 TESTINST3("xxxs.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 3495 TESTINST3("xxxs.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 3496 TESTINST3("xxxs.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 3497 TESTINST3("xxxs.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 3498 TESTINST3("xxxs.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 3499 TESTINST3("xxxs.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 3500 TESTINST3("xxxs.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 3501 TESTINST3("xxxs.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 3502 TESTINST3("xxxs.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 3503 TESTINST3("xxx.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 3504 TESTINST3("xxx.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 3505 TESTINST3("xxx.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 3506 TESTINST3("xxx.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 3507 TESTINST3("xxx.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 3508 TESTINST3("xxx.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 3509 TESTINST3("xxx.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 3510 TESTINST3("xxx.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 3511 TESTINST3("xxx.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 3512 TESTINST3("xxx.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 3513 TESTINST3("xxx.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 3514 TESTINST3("xxx.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 3515 TESTINST3("xxxs.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3516 TESTINST3("xxxs.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3517 TESTINST3("xxxs.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3518 TESTINST3("xxxs.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3519 TESTINST3("xxxs.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3520 TESTINST3("xxxs.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3521 TESTINST3("xxxs.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3522 TESTINST3("xxxs.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3523 TESTINST3("xxxs.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3524 TESTINST3("xxxs.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3525 TESTINST3("xxxs.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3526 TESTINST3("xxxs.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3527 TESTINST3("xxx.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3528 TESTINST3("xxx.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3529 TESTINST3("xxx.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3530 TESTINST3("xxx.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3531 TESTINST3("xxx.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3532 TESTINST3("xxx.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3533 TESTINST3("xxx.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3534 TESTINST3("xxx.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3535 TESTINST3("xxx.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3536 TESTINST3("xxx.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3537 TESTINST3("xxx.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3538 TESTINST3("xxx.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3539 TESTINST3("xxxs.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3540 TESTINST3("xxxs.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3541 TESTINST3("xxxs.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3542 TESTINST3("xxxs.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3543 TESTINST3("xxxs.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3544 TESTINST3("xxxs.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3545 TESTINST3("xxxs.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3546 TESTINST3("xxxs.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3547 TESTINST3("xxxs.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3548 TESTINST3("xxxs.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3549 TESTINST3("xxxs.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3550 TESTINST3("xxxs.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3551 TESTINST3("xxx.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3552 TESTINST3("xxx.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3553 TESTINST3("xxx.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3554 TESTINST3("xxx.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3555 TESTINST3("xxx.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3556 TESTINST3("xxx.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3557 TESTINST3("xxx.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3558 TESTINST3("xxx.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3559 TESTINST3("xxx.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3560 TESTINST3("xxx.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3561 TESTINST3("xxx.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3562 TESTINST3("xxx.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3563 TESTINST3("xxxs.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3564 TESTINST3("xxxs.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3565 TESTINST3("xxxs.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3566 TESTINST3("xxxs.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3567 TESTINST3("xxxs.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3568 TESTINST3("xxxs.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3569 TESTINST3("xxxs.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3570 TESTINST3("xxxs.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3571 TESTINST3("xxxs.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3572 TESTINST3("xxxs.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3573 TESTINST3("xxxs.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3574 TESTINST3("xxxs.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3575 TESTINST3("xxx.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3576 TESTINST3("xxx.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3577 TESTINST3("xxx.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3578 TESTINST3("xxx.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3579 TESTINST3("xxx.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3580 TESTINST3("xxx.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3581 TESTINST3("xxx.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3582 TESTINST3("xxx.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3583 TESTINST3("xxx.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3584 TESTINST3("xxx.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3585 TESTINST3("xxx.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3586 TESTINST3("xxx.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3587 TESTINST3("xxxs.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3588 TESTINST3("xxxs.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3589 TESTINST3("xxxs.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3590 TESTINST3("xxxs.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3591 TESTINST3("xxxs.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3592 TESTINST3("xxxs.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3593 TESTINST3("xxxs.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3594 TESTINST3("xxxs.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3595 TESTINST3("xxxs.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3596 TESTINST3("xxxs.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3597 TESTINST3("xxxs.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3598 TESTINST3("xxxs.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3599 TESTINST3("xxx.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3600 TESTINST3("xxx.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3601 TESTINST3("xxx.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3602 TESTINST3("xxx.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3603 TESTINST3("xxx.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3604 TESTINST3("xxx.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3605 TESTINST3("xxx.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3606 TESTINST3("xxx.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3607 TESTINST3("xxx.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3608 TESTINST3("xxx.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3609 TESTINST3("xxx.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3610 TESTINST3("xxx.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3611 TESTCARRYEND 3612 #endif 3613 3614 printf("AND{S}.W Rd, Rn, Rm, {shift}\n"); 3615 TESTCARRY 3616 TESTINST3("ands.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3617 TESTINST3("ands.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3618 TESTINST3("ands.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3619 TESTINST3("ands.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3620 TESTINST3("ands.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3621 TESTINST3("ands.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3622 TESTINST3("ands.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3623 TESTINST3("ands.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3624 TESTINST3("ands.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3625 TESTINST3("ands.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3626 TESTINST3("ands.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3627 TESTINST3("ands.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3628 TESTINST3("and.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3629 TESTINST3("and.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3630 TESTINST3("and.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3631 TESTINST3("and.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3632 TESTINST3("and.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3633 TESTINST3("and.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3634 TESTINST3("and.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3635 TESTINST3("and.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3636 TESTINST3("and.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3637 TESTINST3("and.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3638 TESTINST3("and.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3639 TESTINST3("and.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3640 TESTINST3("ands.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3641 TESTINST3("ands.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3642 TESTINST3("ands.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3643 TESTINST3("ands.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3644 TESTINST3("ands.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3645 TESTINST3("ands.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3646 TESTINST3("ands.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3647 TESTINST3("ands.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3648 TESTINST3("ands.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3649 TESTINST3("ands.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3650 TESTINST3("ands.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3651 TESTINST3("ands.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3652 TESTINST3("and.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3653 TESTINST3("and.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3654 TESTINST3("and.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3655 TESTINST3("and.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3656 TESTINST3("and.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3657 TESTINST3("and.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3658 TESTINST3("and.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3659 TESTINST3("and.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3660 TESTINST3("and.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3661 TESTINST3("and.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3662 TESTINST3("and.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3663 TESTINST3("and.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3664 TESTINST3("ands.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 3665 TESTINST3("ands.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 3666 TESTINST3("ands.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 3667 TESTINST3("ands.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 3668 TESTINST3("ands.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 3669 TESTINST3("ands.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 3670 TESTINST3("ands.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 3671 TESTINST3("ands.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 3672 TESTINST3("ands.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 3673 TESTINST3("ands.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 3674 TESTINST3("ands.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 3675 TESTINST3("ands.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 3676 TESTINST3("and.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 3677 TESTINST3("and.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 3678 TESTINST3("and.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 3679 TESTINST3("and.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 3680 TESTINST3("and.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 3681 TESTINST3("and.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 3682 TESTINST3("and.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 3683 TESTINST3("and.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 3684 TESTINST3("and.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 3685 TESTINST3("and.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 3686 TESTINST3("and.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 3687 TESTINST3("and.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 3688 TESTINST3("ands.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 3689 TESTINST3("ands.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 3690 TESTINST3("ands.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 3691 TESTINST3("ands.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 3692 TESTINST3("ands.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 3693 TESTINST3("ands.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 3694 TESTINST3("ands.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 3695 TESTINST3("ands.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 3696 TESTINST3("ands.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 3697 TESTINST3("ands.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 3698 TESTINST3("ands.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 3699 TESTINST3("ands.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 3700 TESTINST3("and.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 3701 TESTINST3("and.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 3702 TESTINST3("and.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 3703 TESTINST3("and.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 3704 TESTINST3("and.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 3705 TESTINST3("and.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 3706 TESTINST3("and.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 3707 TESTINST3("and.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 3708 TESTINST3("and.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 3709 TESTINST3("and.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 3710 TESTINST3("and.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 3711 TESTINST3("and.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 3712 TESTINST3("ands.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 3713 TESTINST3("ands.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 3714 TESTINST3("ands.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 3715 TESTINST3("ands.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 3716 TESTINST3("ands.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 3717 TESTINST3("ands.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 3718 TESTINST3("ands.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 3719 TESTINST3("ands.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 3720 TESTINST3("ands.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 3721 TESTINST3("ands.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 3722 TESTINST3("ands.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 3723 TESTINST3("ands.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 3724 TESTINST3("and.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 3725 TESTINST3("and.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 3726 TESTINST3("and.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 3727 TESTINST3("and.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 3728 TESTINST3("and.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 3729 TESTINST3("and.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 3730 TESTINST3("and.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 3731 TESTINST3("and.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 3732 TESTINST3("and.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 3733 TESTINST3("and.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 3734 TESTINST3("and.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 3735 TESTINST3("and.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 3736 TESTINST3("ands.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 3737 TESTINST3("ands.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 3738 TESTINST3("ands.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 3739 TESTINST3("ands.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 3740 TESTINST3("ands.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 3741 TESTINST3("ands.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 3742 TESTINST3("ands.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 3743 TESTINST3("ands.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 3744 TESTINST3("ands.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 3745 TESTINST3("ands.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 3746 TESTINST3("ands.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 3747 TESTINST3("ands.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 3748 TESTINST3("and.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 3749 TESTINST3("and.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 3750 TESTINST3("and.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 3751 TESTINST3("and.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 3752 TESTINST3("and.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 3753 TESTINST3("and.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 3754 TESTINST3("and.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 3755 TESTINST3("and.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 3756 TESTINST3("and.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 3757 TESTINST3("and.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 3758 TESTINST3("and.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 3759 TESTINST3("and.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 3760 TESTINST3("ands.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 3761 TESTINST3("ands.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 3762 TESTINST3("ands.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 3763 TESTINST3("ands.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 3764 TESTINST3("ands.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 3765 TESTINST3("ands.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 3766 TESTINST3("ands.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 3767 TESTINST3("ands.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 3768 TESTINST3("ands.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 3769 TESTINST3("ands.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 3770 TESTINST3("ands.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 3771 TESTINST3("ands.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 3772 TESTINST3("and.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 3773 TESTINST3("and.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 3774 TESTINST3("and.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 3775 TESTINST3("and.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 3776 TESTINST3("and.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 3777 TESTINST3("and.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 3778 TESTINST3("and.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 3779 TESTINST3("and.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 3780 TESTINST3("and.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 3781 TESTINST3("and.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 3782 TESTINST3("and.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 3783 TESTINST3("and.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 3784 TESTINST3("ands.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 3785 TESTINST3("ands.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 3786 TESTINST3("ands.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 3787 TESTINST3("ands.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 3788 TESTINST3("ands.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 3789 TESTINST3("ands.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 3790 TESTINST3("ands.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 3791 TESTINST3("ands.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 3792 TESTINST3("ands.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 3793 TESTINST3("ands.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 3794 TESTINST3("ands.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 3795 TESTINST3("ands.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 3796 TESTINST3("and.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 3797 TESTINST3("and.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 3798 TESTINST3("and.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 3799 TESTINST3("and.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 3800 TESTINST3("and.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 3801 TESTINST3("and.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 3802 TESTINST3("and.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 3803 TESTINST3("and.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 3804 TESTINST3("and.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 3805 TESTINST3("and.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 3806 TESTINST3("and.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 3807 TESTINST3("and.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 3808 TESTINST3("ands.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 3809 TESTINST3("ands.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 3810 TESTINST3("ands.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 3811 TESTINST3("ands.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 3812 TESTINST3("ands.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 3813 TESTINST3("ands.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 3814 TESTINST3("ands.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 3815 TESTINST3("ands.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 3816 TESTINST3("ands.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 3817 TESTINST3("ands.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 3818 TESTINST3("ands.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 3819 TESTINST3("ands.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 3820 TESTINST3("and.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 3821 TESTINST3("and.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 3822 TESTINST3("and.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 3823 TESTINST3("and.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 3824 TESTINST3("and.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 3825 TESTINST3("and.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 3826 TESTINST3("and.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 3827 TESTINST3("and.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 3828 TESTINST3("and.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 3829 TESTINST3("and.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 3830 TESTINST3("and.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 3831 TESTINST3("and.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 3832 TESTINST3("ands.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3833 TESTINST3("ands.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3834 TESTINST3("ands.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3835 TESTINST3("ands.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3836 TESTINST3("ands.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3837 TESTINST3("ands.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3838 TESTINST3("ands.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3839 TESTINST3("ands.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3840 TESTINST3("ands.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3841 TESTINST3("ands.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3842 TESTINST3("ands.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3843 TESTINST3("ands.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3844 TESTINST3("and.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3845 TESTINST3("and.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3846 TESTINST3("and.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3847 TESTINST3("and.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3848 TESTINST3("and.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3849 TESTINST3("and.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3850 TESTINST3("and.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3851 TESTINST3("and.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3852 TESTINST3("and.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3853 TESTINST3("and.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 3854 TESTINST3("and.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 3855 TESTINST3("and.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 3856 TESTINST3("ands.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3857 TESTINST3("ands.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3858 TESTINST3("ands.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3859 TESTINST3("ands.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3860 TESTINST3("ands.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3861 TESTINST3("ands.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3862 TESTINST3("ands.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3863 TESTINST3("ands.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3864 TESTINST3("ands.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3865 TESTINST3("ands.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3866 TESTINST3("ands.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3867 TESTINST3("ands.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3868 TESTINST3("and.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3869 TESTINST3("and.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3870 TESTINST3("and.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3871 TESTINST3("and.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3872 TESTINST3("and.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3873 TESTINST3("and.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3874 TESTINST3("and.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3875 TESTINST3("and.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3876 TESTINST3("and.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3877 TESTINST3("and.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3878 TESTINST3("and.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3879 TESTINST3("and.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 3880 TESTINST3("ands.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3881 TESTINST3("ands.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3882 TESTINST3("ands.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3883 TESTINST3("ands.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3884 TESTINST3("ands.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3885 TESTINST3("ands.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3886 TESTINST3("ands.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3887 TESTINST3("ands.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3888 TESTINST3("ands.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3889 TESTINST3("ands.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3890 TESTINST3("ands.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3891 TESTINST3("ands.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3892 TESTINST3("and.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3893 TESTINST3("and.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3894 TESTINST3("and.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3895 TESTINST3("and.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3896 TESTINST3("and.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3897 TESTINST3("and.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3898 TESTINST3("and.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3899 TESTINST3("and.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3900 TESTINST3("and.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3901 TESTINST3("and.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3902 TESTINST3("and.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3903 TESTINST3("and.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 3904 TESTINST3("ands.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3905 TESTINST3("ands.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3906 TESTINST3("ands.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3907 TESTINST3("ands.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3908 TESTINST3("ands.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3909 TESTINST3("ands.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3910 TESTINST3("ands.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3911 TESTINST3("ands.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3912 TESTINST3("ands.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3913 TESTINST3("ands.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3914 TESTINST3("ands.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3915 TESTINST3("ands.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3916 TESTINST3("and.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3917 TESTINST3("and.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3918 TESTINST3("and.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3919 TESTINST3("and.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3920 TESTINST3("and.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3921 TESTINST3("and.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3922 TESTINST3("and.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3923 TESTINST3("and.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3924 TESTINST3("and.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3925 TESTINST3("and.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3926 TESTINST3("and.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3927 TESTINST3("and.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 3928 TESTCARRYEND 3929 3930 printf("ORR{S}.W Rd, Rn, Rm, {shift}\n"); 3931 TESTCARRY 3932 TESTINST3("orrs.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3933 TESTINST3("orrs.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3934 TESTINST3("orrs.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3935 TESTINST3("orrs.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3936 TESTINST3("orrs.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3937 TESTINST3("orrs.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3938 TESTINST3("orrs.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3939 TESTINST3("orrs.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3940 TESTINST3("orrs.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3941 TESTINST3("orrs.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3942 TESTINST3("orrs.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3943 TESTINST3("orrs.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3944 TESTINST3("orr.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3945 TESTINST3("orr.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3946 TESTINST3("orr.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3947 TESTINST3("orr.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3948 TESTINST3("orr.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3949 TESTINST3("orr.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3950 TESTINST3("orr.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3951 TESTINST3("orr.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3952 TESTINST3("orr.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3953 TESTINST3("orr.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 3954 TESTINST3("orr.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 3955 TESTINST3("orr.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 3956 TESTINST3("orrs.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3957 TESTINST3("orrs.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3958 TESTINST3("orrs.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3959 TESTINST3("orrs.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3960 TESTINST3("orrs.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3961 TESTINST3("orrs.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3962 TESTINST3("orrs.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3963 TESTINST3("orrs.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3964 TESTINST3("orrs.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3965 TESTINST3("orrs.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3966 TESTINST3("orrs.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3967 TESTINST3("orrs.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3968 TESTINST3("orr.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3969 TESTINST3("orr.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3970 TESTINST3("orr.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3971 TESTINST3("orr.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3972 TESTINST3("orr.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3973 TESTINST3("orr.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3974 TESTINST3("orr.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3975 TESTINST3("orr.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3976 TESTINST3("orr.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3977 TESTINST3("orr.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 3978 TESTINST3("orr.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 3979 TESTINST3("orr.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 3980 TESTINST3("orrs.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 3981 TESTINST3("orrs.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 3982 TESTINST3("orrs.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 3983 TESTINST3("orrs.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 3984 TESTINST3("orrs.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 3985 TESTINST3("orrs.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 3986 TESTINST3("orrs.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 3987 TESTINST3("orrs.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 3988 TESTINST3("orrs.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 3989 TESTINST3("orrs.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 3990 TESTINST3("orrs.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 3991 TESTINST3("orrs.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 3992 TESTINST3("orr.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 3993 TESTINST3("orr.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 3994 TESTINST3("orr.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 3995 TESTINST3("orr.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 3996 TESTINST3("orr.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 3997 TESTINST3("orr.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 3998 TESTINST3("orr.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 3999 TESTINST3("orr.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 4000 TESTINST3("orr.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 4001 TESTINST3("orr.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 4002 TESTINST3("orr.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 4003 TESTINST3("orr.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 4004 TESTINST3("orrs.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 4005 TESTINST3("orrs.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 4006 TESTINST3("orrs.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 4007 TESTINST3("orrs.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 4008 TESTINST3("orrs.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 4009 TESTINST3("orrs.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 4010 TESTINST3("orrs.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 4011 TESTINST3("orrs.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 4012 TESTINST3("orrs.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 4013 TESTINST3("orrs.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 4014 TESTINST3("orrs.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 4015 TESTINST3("orrs.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 4016 TESTINST3("orr.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 4017 TESTINST3("orr.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 4018 TESTINST3("orr.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 4019 TESTINST3("orr.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 4020 TESTINST3("orr.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 4021 TESTINST3("orr.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 4022 TESTINST3("orr.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 4023 TESTINST3("orr.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 4024 TESTINST3("orr.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 4025 TESTINST3("orr.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 4026 TESTINST3("orr.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 4027 TESTINST3("orr.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 4028 TESTINST3("orrs.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 4029 TESTINST3("orrs.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 4030 TESTINST3("orrs.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 4031 TESTINST3("orrs.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 4032 TESTINST3("orrs.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 4033 TESTINST3("orrs.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 4034 TESTINST3("orrs.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 4035 TESTINST3("orrs.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 4036 TESTINST3("orrs.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 4037 TESTINST3("orrs.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 4038 TESTINST3("orrs.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 4039 TESTINST3("orrs.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 4040 TESTINST3("orr.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 4041 TESTINST3("orr.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 4042 TESTINST3("orr.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 4043 TESTINST3("orr.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 4044 TESTINST3("orr.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 4045 TESTINST3("orr.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 4046 TESTINST3("orr.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 4047 TESTINST3("orr.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 4048 TESTINST3("orr.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 4049 TESTINST3("orr.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 4050 TESTINST3("orr.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 4051 TESTINST3("orr.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 4052 TESTINST3("orrs.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 4053 TESTINST3("orrs.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 4054 TESTINST3("orrs.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 4055 TESTINST3("orrs.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 4056 TESTINST3("orrs.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 4057 TESTINST3("orrs.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 4058 TESTINST3("orrs.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 4059 TESTINST3("orrs.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 4060 TESTINST3("orrs.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 4061 TESTINST3("orrs.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 4062 TESTINST3("orrs.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 4063 TESTINST3("orrs.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 4064 TESTINST3("orr.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 4065 TESTINST3("orr.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 4066 TESTINST3("orr.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 4067 TESTINST3("orr.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 4068 TESTINST3("orr.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 4069 TESTINST3("orr.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 4070 TESTINST3("orr.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 4071 TESTINST3("orr.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 4072 TESTINST3("orr.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 4073 TESTINST3("orr.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 4074 TESTINST3("orr.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 4075 TESTINST3("orr.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 4076 TESTINST3("orrs.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 4077 TESTINST3("orrs.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 4078 TESTINST3("orrs.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 4079 TESTINST3("orrs.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 4080 TESTINST3("orrs.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 4081 TESTINST3("orrs.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 4082 TESTINST3("orrs.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 4083 TESTINST3("orrs.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 4084 TESTINST3("orrs.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 4085 TESTINST3("orrs.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 4086 TESTINST3("orrs.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 4087 TESTINST3("orrs.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 4088 TESTINST3("orr.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 4089 TESTINST3("orr.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 4090 TESTINST3("orr.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 4091 TESTINST3("orr.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 4092 TESTINST3("orr.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 4093 TESTINST3("orr.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 4094 TESTINST3("orr.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 4095 TESTINST3("orr.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 4096 TESTINST3("orr.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 4097 TESTINST3("orr.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 4098 TESTINST3("orr.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 4099 TESTINST3("orr.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 4100 TESTINST3("orrs.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 4101 TESTINST3("orrs.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 4102 TESTINST3("orrs.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 4103 TESTINST3("orrs.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 4104 TESTINST3("orrs.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 4105 TESTINST3("orrs.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 4106 TESTINST3("orrs.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 4107 TESTINST3("orrs.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 4108 TESTINST3("orrs.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 4109 TESTINST3("orrs.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 4110 TESTINST3("orrs.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 4111 TESTINST3("orrs.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 4112 TESTINST3("orr.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 4113 TESTINST3("orr.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 4114 TESTINST3("orr.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 4115 TESTINST3("orr.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 4116 TESTINST3("orr.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 4117 TESTINST3("orr.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 4118 TESTINST3("orr.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 4119 TESTINST3("orr.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 4120 TESTINST3("orr.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 4121 TESTINST3("orr.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 4122 TESTINST3("orr.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 4123 TESTINST3("orr.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 4124 TESTINST3("orrs.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 4125 TESTINST3("orrs.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 4126 TESTINST3("orrs.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 4127 TESTINST3("orrs.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 4128 TESTINST3("orrs.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 4129 TESTINST3("orrs.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 4130 TESTINST3("orrs.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 4131 TESTINST3("orrs.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 4132 TESTINST3("orrs.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 4133 TESTINST3("orrs.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 4134 TESTINST3("orrs.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 4135 TESTINST3("orrs.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 4136 TESTINST3("orr.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 4137 TESTINST3("orr.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 4138 TESTINST3("orr.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 4139 TESTINST3("orr.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 4140 TESTINST3("orr.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 4141 TESTINST3("orr.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 4142 TESTINST3("orr.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 4143 TESTINST3("orr.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 4144 TESTINST3("orr.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 4145 TESTINST3("orr.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 4146 TESTINST3("orr.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 4147 TESTINST3("orr.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 4148 TESTINST3("orrs.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4149 TESTINST3("orrs.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4150 TESTINST3("orrs.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4151 TESTINST3("orrs.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4152 TESTINST3("orrs.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4153 TESTINST3("orrs.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4154 TESTINST3("orrs.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4155 TESTINST3("orrs.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4156 TESTINST3("orrs.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4157 TESTINST3("orrs.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4158 TESTINST3("orrs.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4159 TESTINST3("orrs.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4160 TESTINST3("orr.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4161 TESTINST3("orr.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4162 TESTINST3("orr.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4163 TESTINST3("orr.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4164 TESTINST3("orr.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4165 TESTINST3("orr.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4166 TESTINST3("orr.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4167 TESTINST3("orr.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4168 TESTINST3("orr.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4169 TESTINST3("orr.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4170 TESTINST3("orr.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4171 TESTINST3("orr.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4172 TESTINST3("orrs.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4173 TESTINST3("orrs.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4174 TESTINST3("orrs.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4175 TESTINST3("orrs.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4176 TESTINST3("orrs.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4177 TESTINST3("orrs.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4178 TESTINST3("orrs.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4179 TESTINST3("orrs.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4180 TESTINST3("orrs.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4181 TESTINST3("orrs.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4182 TESTINST3("orrs.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4183 TESTINST3("orrs.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4184 TESTINST3("orr.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4185 TESTINST3("orr.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4186 TESTINST3("orr.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4187 TESTINST3("orr.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4188 TESTINST3("orr.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4189 TESTINST3("orr.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4190 TESTINST3("orr.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4191 TESTINST3("orr.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4192 TESTINST3("orr.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4193 TESTINST3("orr.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4194 TESTINST3("orr.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4195 TESTINST3("orr.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4196 TESTINST3("orrs.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4197 TESTINST3("orrs.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4198 TESTINST3("orrs.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4199 TESTINST3("orrs.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4200 TESTINST3("orrs.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4201 TESTINST3("orrs.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4202 TESTINST3("orrs.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4203 TESTINST3("orrs.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4204 TESTINST3("orrs.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4205 TESTINST3("orrs.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4206 TESTINST3("orrs.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4207 TESTINST3("orrs.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4208 TESTINST3("orr.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4209 TESTINST3("orr.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4210 TESTINST3("orr.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4211 TESTINST3("orr.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4212 TESTINST3("orr.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4213 TESTINST3("orr.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4214 TESTINST3("orr.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4215 TESTINST3("orr.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4216 TESTINST3("orr.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4217 TESTINST3("orr.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4218 TESTINST3("orr.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4219 TESTINST3("orr.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4220 TESTINST3("orrs.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4221 TESTINST3("orrs.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4222 TESTINST3("orrs.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4223 TESTINST3("orrs.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4224 TESTINST3("orrs.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4225 TESTINST3("orrs.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4226 TESTINST3("orrs.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4227 TESTINST3("orrs.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4228 TESTINST3("orrs.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4229 TESTINST3("orrs.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4230 TESTINST3("orrs.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4231 TESTINST3("orrs.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4232 TESTINST3("orr.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4233 TESTINST3("orr.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4234 TESTINST3("orr.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4235 TESTINST3("orr.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4236 TESTINST3("orr.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4237 TESTINST3("orr.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4238 TESTINST3("orr.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4239 TESTINST3("orr.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4240 TESTINST3("orr.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4241 TESTINST3("orr.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4242 TESTINST3("orr.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4243 TESTINST3("orr.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4244 TESTCARRYEND 4245 4246 printf("EOR{S}.W Rd, Rn, Rm, {shift}\n"); 4247 TESTCARRY 4248 TESTINST3("eors.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4249 TESTINST3("eors.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4250 TESTINST3("eors.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4251 TESTINST3("eors.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4252 TESTINST3("eors.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4253 TESTINST3("eors.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4254 TESTINST3("eors.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4255 TESTINST3("eors.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4256 TESTINST3("eors.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4257 TESTINST3("eors.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4258 TESTINST3("eors.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4259 TESTINST3("eors.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4260 TESTINST3("eor.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4261 TESTINST3("eor.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4262 TESTINST3("eor.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4263 TESTINST3("eor.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4264 TESTINST3("eor.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4265 TESTINST3("eor.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4266 TESTINST3("eor.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4267 TESTINST3("eor.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4268 TESTINST3("eor.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4269 TESTINST3("eor.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4270 TESTINST3("eor.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4271 TESTINST3("eor.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4272 TESTINST3("eors.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4273 TESTINST3("eors.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4274 TESTINST3("eors.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4275 TESTINST3("eors.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4276 TESTINST3("eors.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4277 TESTINST3("eors.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4278 TESTINST3("eors.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4279 TESTINST3("eors.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4280 TESTINST3("eors.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4281 TESTINST3("eors.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4282 TESTINST3("eors.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4283 TESTINST3("eors.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4284 TESTINST3("eor.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4285 TESTINST3("eor.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4286 TESTINST3("eor.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4287 TESTINST3("eor.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4288 TESTINST3("eor.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4289 TESTINST3("eor.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4290 TESTINST3("eor.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4291 TESTINST3("eor.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4292 TESTINST3("eor.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4293 TESTINST3("eor.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4294 TESTINST3("eor.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4295 TESTINST3("eor.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4296 TESTINST3("eors.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 4297 TESTINST3("eors.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 4298 TESTINST3("eors.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 4299 TESTINST3("eors.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 4300 TESTINST3("eors.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 4301 TESTINST3("eors.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 4302 TESTINST3("eors.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 4303 TESTINST3("eors.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 4304 TESTINST3("eors.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 4305 TESTINST3("eors.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 4306 TESTINST3("eors.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 4307 TESTINST3("eors.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 4308 TESTINST3("eor.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 4309 TESTINST3("eor.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 4310 TESTINST3("eor.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 4311 TESTINST3("eor.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 4312 TESTINST3("eor.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 4313 TESTINST3("eor.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 4314 TESTINST3("eor.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 4315 TESTINST3("eor.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 4316 TESTINST3("eor.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 4317 TESTINST3("eor.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 4318 TESTINST3("eor.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 4319 TESTINST3("eor.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 4320 TESTINST3("eors.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 4321 TESTINST3("eors.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 4322 TESTINST3("eors.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 4323 TESTINST3("eors.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 4324 TESTINST3("eors.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 4325 TESTINST3("eors.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 4326 TESTINST3("eors.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 4327 TESTINST3("eors.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 4328 TESTINST3("eors.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 4329 TESTINST3("eors.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 4330 TESTINST3("eors.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 4331 TESTINST3("eors.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 4332 TESTINST3("eor.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 4333 TESTINST3("eor.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 4334 TESTINST3("eor.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 4335 TESTINST3("eor.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 4336 TESTINST3("eor.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 4337 TESTINST3("eor.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 4338 TESTINST3("eor.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 4339 TESTINST3("eor.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 4340 TESTINST3("eor.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 4341 TESTINST3("eor.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 4342 TESTINST3("eor.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 4343 TESTINST3("eor.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 4344 TESTINST3("eors.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 4345 TESTINST3("eors.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 4346 TESTINST3("eors.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 4347 TESTINST3("eors.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 4348 TESTINST3("eors.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 4349 TESTINST3("eors.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 4350 TESTINST3("eors.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 4351 TESTINST3("eors.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 4352 TESTINST3("eors.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 4353 TESTINST3("eors.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 4354 TESTINST3("eors.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 4355 TESTINST3("eors.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 4356 TESTINST3("eor.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 4357 TESTINST3("eor.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 4358 TESTINST3("eor.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 4359 TESTINST3("eor.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 4360 TESTINST3("eor.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 4361 TESTINST3("eor.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 4362 TESTINST3("eor.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 4363 TESTINST3("eor.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 4364 TESTINST3("eor.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 4365 TESTINST3("eor.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 4366 TESTINST3("eor.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 4367 TESTINST3("eor.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 4368 TESTINST3("eors.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 4369 TESTINST3("eors.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 4370 TESTINST3("eors.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 4371 TESTINST3("eors.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 4372 TESTINST3("eors.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 4373 TESTINST3("eors.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 4374 TESTINST3("eors.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 4375 TESTINST3("eors.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 4376 TESTINST3("eors.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 4377 TESTINST3("eors.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 4378 TESTINST3("eors.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 4379 TESTINST3("eors.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 4380 TESTINST3("eor.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 4381 TESTINST3("eor.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 4382 TESTINST3("eor.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 4383 TESTINST3("eor.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 4384 TESTINST3("eor.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 4385 TESTINST3("eor.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 4386 TESTINST3("eor.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 4387 TESTINST3("eor.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 4388 TESTINST3("eor.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 4389 TESTINST3("eor.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 4390 TESTINST3("eor.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 4391 TESTINST3("eor.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 4392 TESTINST3("eors.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 4393 TESTINST3("eors.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 4394 TESTINST3("eors.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 4395 TESTINST3("eors.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 4396 TESTINST3("eors.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 4397 TESTINST3("eors.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 4398 TESTINST3("eors.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 4399 TESTINST3("eors.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 4400 TESTINST3("eors.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 4401 TESTINST3("eors.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 4402 TESTINST3("eors.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 4403 TESTINST3("eors.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 4404 TESTINST3("eor.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 4405 TESTINST3("eor.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 4406 TESTINST3("eor.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 4407 TESTINST3("eor.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 4408 TESTINST3("eor.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 4409 TESTINST3("eor.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 4410 TESTINST3("eor.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 4411 TESTINST3("eor.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 4412 TESTINST3("eor.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 4413 TESTINST3("eor.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 4414 TESTINST3("eor.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 4415 TESTINST3("eor.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 4416 TESTINST3("eors.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 4417 TESTINST3("eors.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 4418 TESTINST3("eors.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 4419 TESTINST3("eors.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 4420 TESTINST3("eors.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 4421 TESTINST3("eors.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 4422 TESTINST3("eors.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 4423 TESTINST3("eors.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 4424 TESTINST3("eors.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 4425 TESTINST3("eors.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 4426 TESTINST3("eors.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 4427 TESTINST3("eors.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 4428 TESTINST3("eor.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 4429 TESTINST3("eor.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 4430 TESTINST3("eor.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 4431 TESTINST3("eor.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 4432 TESTINST3("eor.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 4433 TESTINST3("eor.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 4434 TESTINST3("eor.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 4435 TESTINST3("eor.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 4436 TESTINST3("eor.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 4437 TESTINST3("eor.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 4438 TESTINST3("eor.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 4439 TESTINST3("eor.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 4440 TESTINST3("eors.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 4441 TESTINST3("eors.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 4442 TESTINST3("eors.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 4443 TESTINST3("eors.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 4444 TESTINST3("eors.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 4445 TESTINST3("eors.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 4446 TESTINST3("eors.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 4447 TESTINST3("eors.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 4448 TESTINST3("eors.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 4449 TESTINST3("eors.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 4450 TESTINST3("eors.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 4451 TESTINST3("eors.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 4452 TESTINST3("eor.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 4453 TESTINST3("eor.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 4454 TESTINST3("eor.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 4455 TESTINST3("eor.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 4456 TESTINST3("eor.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 4457 TESTINST3("eor.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 4458 TESTINST3("eor.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 4459 TESTINST3("eor.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 4460 TESTINST3("eor.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 4461 TESTINST3("eor.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 4462 TESTINST3("eor.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 4463 TESTINST3("eor.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 4464 TESTINST3("eors.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4465 TESTINST3("eors.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4466 TESTINST3("eors.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4467 TESTINST3("eors.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4468 TESTINST3("eors.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4469 TESTINST3("eors.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4470 TESTINST3("eors.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4471 TESTINST3("eors.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4472 TESTINST3("eors.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4473 TESTINST3("eors.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4474 TESTINST3("eors.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4475 TESTINST3("eors.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4476 TESTINST3("eor.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4477 TESTINST3("eor.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4478 TESTINST3("eor.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4479 TESTINST3("eor.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4480 TESTINST3("eor.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4481 TESTINST3("eor.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4482 TESTINST3("eor.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4483 TESTINST3("eor.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4484 TESTINST3("eor.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4485 TESTINST3("eor.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4486 TESTINST3("eor.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4487 TESTINST3("eor.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4488 TESTINST3("eors.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4489 TESTINST3("eors.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4490 TESTINST3("eors.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4491 TESTINST3("eors.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4492 TESTINST3("eors.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4493 TESTINST3("eors.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4494 TESTINST3("eors.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4495 TESTINST3("eors.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4496 TESTINST3("eors.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4497 TESTINST3("eors.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4498 TESTINST3("eors.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4499 TESTINST3("eors.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4500 TESTINST3("eor.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4501 TESTINST3("eor.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4502 TESTINST3("eor.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4503 TESTINST3("eor.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4504 TESTINST3("eor.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4505 TESTINST3("eor.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4506 TESTINST3("eor.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4507 TESTINST3("eor.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4508 TESTINST3("eor.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4509 TESTINST3("eor.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4510 TESTINST3("eor.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4511 TESTINST3("eor.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4512 TESTINST3("eors.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4513 TESTINST3("eors.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4514 TESTINST3("eors.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4515 TESTINST3("eors.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4516 TESTINST3("eors.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4517 TESTINST3("eors.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4518 TESTINST3("eors.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4519 TESTINST3("eors.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4520 TESTINST3("eors.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4521 TESTINST3("eors.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4522 TESTINST3("eors.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4523 TESTINST3("eors.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4524 TESTINST3("eor.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4525 TESTINST3("eor.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4526 TESTINST3("eor.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4527 TESTINST3("eor.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4528 TESTINST3("eor.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4529 TESTINST3("eor.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4530 TESTINST3("eor.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4531 TESTINST3("eor.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4532 TESTINST3("eor.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4533 TESTINST3("eor.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4534 TESTINST3("eor.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4535 TESTINST3("eor.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4536 TESTINST3("eors.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4537 TESTINST3("eors.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4538 TESTINST3("eors.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4539 TESTINST3("eors.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4540 TESTINST3("eors.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4541 TESTINST3("eors.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4542 TESTINST3("eors.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4543 TESTINST3("eors.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4544 TESTINST3("eors.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4545 TESTINST3("eors.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4546 TESTINST3("eors.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4547 TESTINST3("eors.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4548 TESTINST3("eor.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4549 TESTINST3("eor.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4550 TESTINST3("eor.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4551 TESTINST3("eor.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4552 TESTINST3("eor.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4553 TESTINST3("eor.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4554 TESTINST3("eor.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4555 TESTINST3("eor.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4556 TESTINST3("eor.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4557 TESTINST3("eor.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4558 TESTINST3("eor.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4559 TESTINST3("eor.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4560 TESTCARRYEND 4561 4562 printf("BIC{S}.W Rd, Rn, Rm, {shift}\n"); 4563 TESTCARRY 4564 TESTINST3("bics.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4565 TESTINST3("bics.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4566 TESTINST3("bics.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4567 TESTINST3("bics.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4568 TESTINST3("bics.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4569 TESTINST3("bics.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4570 TESTINST3("bics.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4571 TESTINST3("bics.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4572 TESTINST3("bics.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4573 TESTINST3("bics.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4574 TESTINST3("bics.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4575 TESTINST3("bics.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4576 TESTINST3("bic.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4577 TESTINST3("bic.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4578 TESTINST3("bic.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4579 TESTINST3("bic.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4580 TESTINST3("bic.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4581 TESTINST3("bic.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4582 TESTINST3("bic.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4583 TESTINST3("bic.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4584 TESTINST3("bic.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4585 TESTINST3("bic.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4586 TESTINST3("bic.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4587 TESTINST3("bic.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4588 TESTINST3("bics.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4589 TESTINST3("bics.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4590 TESTINST3("bics.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4591 TESTINST3("bics.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4592 TESTINST3("bics.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4593 TESTINST3("bics.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4594 TESTINST3("bics.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4595 TESTINST3("bics.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4596 TESTINST3("bics.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4597 TESTINST3("bics.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4598 TESTINST3("bics.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4599 TESTINST3("bics.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4600 TESTINST3("bic.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4601 TESTINST3("bic.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4602 TESTINST3("bic.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4603 TESTINST3("bic.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4604 TESTINST3("bic.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4605 TESTINST3("bic.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4606 TESTINST3("bic.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4607 TESTINST3("bic.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4608 TESTINST3("bic.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4609 TESTINST3("bic.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4610 TESTINST3("bic.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4611 TESTINST3("bic.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4612 TESTINST3("bics.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 4613 TESTINST3("bics.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 4614 TESTINST3("bics.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 4615 TESTINST3("bics.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 4616 TESTINST3("bics.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 4617 TESTINST3("bics.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 4618 TESTINST3("bics.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 4619 TESTINST3("bics.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 4620 TESTINST3("bics.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 4621 TESTINST3("bics.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 4622 TESTINST3("bics.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 4623 TESTINST3("bics.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 4624 TESTINST3("bic.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 4625 TESTINST3("bic.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 4626 TESTINST3("bic.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 4627 TESTINST3("bic.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 4628 TESTINST3("bic.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 4629 TESTINST3("bic.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 4630 TESTINST3("bic.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 4631 TESTINST3("bic.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 4632 TESTINST3("bic.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 4633 TESTINST3("bic.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 4634 TESTINST3("bic.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 4635 TESTINST3("bic.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 4636 TESTINST3("bics.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 4637 TESTINST3("bics.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 4638 TESTINST3("bics.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 4639 TESTINST3("bics.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 4640 TESTINST3("bics.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 4641 TESTINST3("bics.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 4642 TESTINST3("bics.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 4643 TESTINST3("bics.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 4644 TESTINST3("bics.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 4645 TESTINST3("bics.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 4646 TESTINST3("bics.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 4647 TESTINST3("bics.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 4648 TESTINST3("bic.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 4649 TESTINST3("bic.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 4650 TESTINST3("bic.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 4651 TESTINST3("bic.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 4652 TESTINST3("bic.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 4653 TESTINST3("bic.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 4654 TESTINST3("bic.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 4655 TESTINST3("bic.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 4656 TESTINST3("bic.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 4657 TESTINST3("bic.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 4658 TESTINST3("bic.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 4659 TESTINST3("bic.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 4660 TESTINST3("bics.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 4661 TESTINST3("bics.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 4662 TESTINST3("bics.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 4663 TESTINST3("bics.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 4664 TESTINST3("bics.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 4665 TESTINST3("bics.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 4666 TESTINST3("bics.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 4667 TESTINST3("bics.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 4668 TESTINST3("bics.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 4669 TESTINST3("bics.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 4670 TESTINST3("bics.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 4671 TESTINST3("bics.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 4672 TESTINST3("bic.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 4673 TESTINST3("bic.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 4674 TESTINST3("bic.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 4675 TESTINST3("bic.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 4676 TESTINST3("bic.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 4677 TESTINST3("bic.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 4678 TESTINST3("bic.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 4679 TESTINST3("bic.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 4680 TESTINST3("bic.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 4681 TESTINST3("bic.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 4682 TESTINST3("bic.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 4683 TESTINST3("bic.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 4684 TESTINST3("bics.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 4685 TESTINST3("bics.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 4686 TESTINST3("bics.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 4687 TESTINST3("bics.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 4688 TESTINST3("bics.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 4689 TESTINST3("bics.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 4690 TESTINST3("bics.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 4691 TESTINST3("bics.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 4692 TESTINST3("bics.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 4693 TESTINST3("bics.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 4694 TESTINST3("bics.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 4695 TESTINST3("bics.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 4696 TESTINST3("bic.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 4697 TESTINST3("bic.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 4698 TESTINST3("bic.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 4699 TESTINST3("bic.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 4700 TESTINST3("bic.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 4701 TESTINST3("bic.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 4702 TESTINST3("bic.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 4703 TESTINST3("bic.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 4704 TESTINST3("bic.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 4705 TESTINST3("bic.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 4706 TESTINST3("bic.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 4707 TESTINST3("bic.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 4708 TESTINST3("bics.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 4709 TESTINST3("bics.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 4710 TESTINST3("bics.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 4711 TESTINST3("bics.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 4712 TESTINST3("bics.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 4713 TESTINST3("bics.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 4714 TESTINST3("bics.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 4715 TESTINST3("bics.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 4716 TESTINST3("bics.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 4717 TESTINST3("bics.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 4718 TESTINST3("bics.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 4719 TESTINST3("bics.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 4720 TESTINST3("bic.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 4721 TESTINST3("bic.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 4722 TESTINST3("bic.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 4723 TESTINST3("bic.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 4724 TESTINST3("bic.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 4725 TESTINST3("bic.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 4726 TESTINST3("bic.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 4727 TESTINST3("bic.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 4728 TESTINST3("bic.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 4729 TESTINST3("bic.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 4730 TESTINST3("bic.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 4731 TESTINST3("bic.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 4732 TESTINST3("bics.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 4733 TESTINST3("bics.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 4734 TESTINST3("bics.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 4735 TESTINST3("bics.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 4736 TESTINST3("bics.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 4737 TESTINST3("bics.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 4738 TESTINST3("bics.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 4739 TESTINST3("bics.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 4740 TESTINST3("bics.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 4741 TESTINST3("bics.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 4742 TESTINST3("bics.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 4743 TESTINST3("bics.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 4744 TESTINST3("bic.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 4745 TESTINST3("bic.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 4746 TESTINST3("bic.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 4747 TESTINST3("bic.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 4748 TESTINST3("bic.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 4749 TESTINST3("bic.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 4750 TESTINST3("bic.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 4751 TESTINST3("bic.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 4752 TESTINST3("bic.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 4753 TESTINST3("bic.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 4754 TESTINST3("bic.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 4755 TESTINST3("bic.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 4756 TESTINST3("bics.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 4757 TESTINST3("bics.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 4758 TESTINST3("bics.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 4759 TESTINST3("bics.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 4760 TESTINST3("bics.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 4761 TESTINST3("bics.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 4762 TESTINST3("bics.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 4763 TESTINST3("bics.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 4764 TESTINST3("bics.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 4765 TESTINST3("bics.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 4766 TESTINST3("bics.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 4767 TESTINST3("bics.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 4768 TESTINST3("bic.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 4769 TESTINST3("bic.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 4770 TESTINST3("bic.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 4771 TESTINST3("bic.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 4772 TESTINST3("bic.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 4773 TESTINST3("bic.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 4774 TESTINST3("bic.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 4775 TESTINST3("bic.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 4776 TESTINST3("bic.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 4777 TESTINST3("bic.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 4778 TESTINST3("bic.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 4779 TESTINST3("bic.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 4780 TESTINST3("bics.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4781 TESTINST3("bics.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4782 TESTINST3("bics.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4783 TESTINST3("bics.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4784 TESTINST3("bics.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4785 TESTINST3("bics.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4786 TESTINST3("bics.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4787 TESTINST3("bics.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4788 TESTINST3("bics.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4789 TESTINST3("bics.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4790 TESTINST3("bics.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4791 TESTINST3("bics.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4792 TESTINST3("bic.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4793 TESTINST3("bic.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4794 TESTINST3("bic.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4795 TESTINST3("bic.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4796 TESTINST3("bic.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4797 TESTINST3("bic.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4798 TESTINST3("bic.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4799 TESTINST3("bic.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4800 TESTINST3("bic.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4801 TESTINST3("bic.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 4802 TESTINST3("bic.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 4803 TESTINST3("bic.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 4804 TESTINST3("bics.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4805 TESTINST3("bics.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4806 TESTINST3("bics.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4807 TESTINST3("bics.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4808 TESTINST3("bics.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4809 TESTINST3("bics.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4810 TESTINST3("bics.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4811 TESTINST3("bics.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4812 TESTINST3("bics.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4813 TESTINST3("bics.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4814 TESTINST3("bics.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4815 TESTINST3("bics.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4816 TESTINST3("bic.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4817 TESTINST3("bic.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4818 TESTINST3("bic.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4819 TESTINST3("bic.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4820 TESTINST3("bic.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4821 TESTINST3("bic.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4822 TESTINST3("bic.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4823 TESTINST3("bic.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4824 TESTINST3("bic.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4825 TESTINST3("bic.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4826 TESTINST3("bic.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4827 TESTINST3("bic.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 4828 TESTINST3("bics.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4829 TESTINST3("bics.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4830 TESTINST3("bics.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4831 TESTINST3("bics.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4832 TESTINST3("bics.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4833 TESTINST3("bics.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4834 TESTINST3("bics.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4835 TESTINST3("bics.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4836 TESTINST3("bics.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4837 TESTINST3("bics.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4838 TESTINST3("bics.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4839 TESTINST3("bics.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4840 TESTINST3("bic.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4841 TESTINST3("bic.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4842 TESTINST3("bic.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4843 TESTINST3("bic.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4844 TESTINST3("bic.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4845 TESTINST3("bic.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4846 TESTINST3("bic.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4847 TESTINST3("bic.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4848 TESTINST3("bic.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4849 TESTINST3("bic.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4850 TESTINST3("bic.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4851 TESTINST3("bic.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 4852 TESTINST3("bics.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4853 TESTINST3("bics.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4854 TESTINST3("bics.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4855 TESTINST3("bics.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4856 TESTINST3("bics.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4857 TESTINST3("bics.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4858 TESTINST3("bics.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4859 TESTINST3("bics.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4860 TESTINST3("bics.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4861 TESTINST3("bics.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4862 TESTINST3("bics.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4863 TESTINST3("bics.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4864 TESTINST3("bic.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4865 TESTINST3("bic.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4866 TESTINST3("bic.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4867 TESTINST3("bic.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4868 TESTINST3("bic.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4869 TESTINST3("bic.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4870 TESTINST3("bic.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4871 TESTINST3("bic.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4872 TESTINST3("bic.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4873 TESTINST3("bic.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4874 TESTINST3("bic.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4875 TESTINST3("bic.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 4876 TESTCARRYEND 4877 4878 printf("ORN{S}.W Rd, Rn, Rm, {shift}\n"); 4879 TESTCARRY 4880 TESTINST3("orns.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4881 TESTINST3("orns.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4882 TESTINST3("orns.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4883 TESTINST3("orns.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4884 TESTINST3("orns.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4885 TESTINST3("orns.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4886 TESTINST3("orns.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4887 TESTINST3("orns.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4888 TESTINST3("orns.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4889 TESTINST3("orns.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4890 TESTINST3("orns.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4891 TESTINST3("orns.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4892 TESTINST3("orn.w r1, r2, r3, lsl #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4893 TESTINST3("orn.w r1, r2, r3, lsl #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4894 TESTINST3("orn.w r1, r2, r3, lsl #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4895 TESTINST3("orn.w r1, r2, r3, lsl #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4896 TESTINST3("orn.w r1, r2, r3, lsr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4897 TESTINST3("orn.w r1, r2, r3, lsr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4898 TESTINST3("orn.w r1, r2, r3, lsr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4899 TESTINST3("orn.w r1, r2, r3, lsr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4900 TESTINST3("orn.w r1, r2, r3, asr #0 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4901 TESTINST3("orn.w r1, r2, r3, asr #1 ", 0x31415927, 0x27181728, r1, r2, r3, cv); 4902 TESTINST3("orn.w r1, r2, r3, asr #15", 0x31415927, 0x27181728, r1, r2, r3, cv); 4903 TESTINST3("orn.w r1, r2, r3, asr #31", 0x31415927, 0x27181728, r1, r2, r3, cv); 4904 TESTINST3("orns.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4905 TESTINST3("orns.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4906 TESTINST3("orns.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4907 TESTINST3("orns.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4908 TESTINST3("orns.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4909 TESTINST3("orns.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4910 TESTINST3("orns.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4911 TESTINST3("orns.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4912 TESTINST3("orns.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4913 TESTINST3("orns.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4914 TESTINST3("orns.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4915 TESTINST3("orns.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4916 TESTINST3("orn.w r1, r2, r3, lsl #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4917 TESTINST3("orn.w r1, r2, r3, lsl #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4918 TESTINST3("orn.w r1, r2, r3, lsl #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4919 TESTINST3("orn.w r1, r2, r3, lsl #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4920 TESTINST3("orn.w r1, r2, r3, lsr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4921 TESTINST3("orn.w r1, r2, r3, lsr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4922 TESTINST3("orn.w r1, r2, r3, lsr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4923 TESTINST3("orn.w r1, r2, r3, lsr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4924 TESTINST3("orn.w r1, r2, r3, asr #0 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4925 TESTINST3("orn.w r1, r2, r3, asr #1 ", 0x31415927, 0x97181728, r1, r2, r3, cv); 4926 TESTINST3("orn.w r1, r2, r3, asr #15", 0x31415927, 0x97181728, r1, r2, r3, cv); 4927 TESTINST3("orn.w r1, r2, r3, asr #31", 0x31415927, 0x97181728, r1, r2, r3, cv); 4928 TESTINST3("orns.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 4929 TESTINST3("orns.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 4930 TESTINST3("orns.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 4931 TESTINST3("orns.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 4932 TESTINST3("orns.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 4933 TESTINST3("orns.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 4934 TESTINST3("orns.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 4935 TESTINST3("orns.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 4936 TESTINST3("orns.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 4937 TESTINST3("orns.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 4938 TESTINST3("orns.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 4939 TESTINST3("orns.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 4940 TESTINST3("orn.w r1, r2, r3, lsl #0 ", 0, 0, r1, r2, r3, cv); 4941 TESTINST3("orn.w r1, r2, r3, lsl #1 ", 0, 0, r1, r2, r3, cv); 4942 TESTINST3("orn.w r1, r2, r3, lsl #15", 0, 0, r1, r2, r3, cv); 4943 TESTINST3("orn.w r1, r2, r3, lsl #31", 0, 0, r1, r2, r3, cv); 4944 TESTINST3("orn.w r1, r2, r3, lsr #0 ", 0, 0, r1, r2, r3, cv); 4945 TESTINST3("orn.w r1, r2, r3, lsr #1 ", 0, 0, r1, r2, r3, cv); 4946 TESTINST3("orn.w r1, r2, r3, lsr #15", 0, 0, r1, r2, r3, cv); 4947 TESTINST3("orn.w r1, r2, r3, lsr #31", 0, 0, r1, r2, r3, cv); 4948 TESTINST3("orn.w r1, r2, r3, asr #0 ", 0, 0, r1, r2, r3, cv); 4949 TESTINST3("orn.w r1, r2, r3, asr #1 ", 0, 0, r1, r2, r3, cv); 4950 TESTINST3("orn.w r1, r2, r3, asr #15", 0, 0, r1, r2, r3, cv); 4951 TESTINST3("orn.w r1, r2, r3, asr #31", 0, 0, r1, r2, r3, cv); 4952 TESTINST3("orns.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 4953 TESTINST3("orns.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 4954 TESTINST3("orns.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 4955 TESTINST3("orns.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 4956 TESTINST3("orns.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 4957 TESTINST3("orns.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 4958 TESTINST3("orns.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 4959 TESTINST3("orns.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 4960 TESTINST3("orns.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 4961 TESTINST3("orns.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 4962 TESTINST3("orns.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 4963 TESTINST3("orns.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 4964 TESTINST3("orn.w r1, r2, r3, lsl #0 ", 1, 0, r1, r2, r3, cv); 4965 TESTINST3("orn.w r1, r2, r3, lsl #1 ", 1, 0, r1, r2, r3, cv); 4966 TESTINST3("orn.w r1, r2, r3, lsl #15", 1, 0, r1, r2, r3, cv); 4967 TESTINST3("orn.w r1, r2, r3, lsl #31", 1, 0, r1, r2, r3, cv); 4968 TESTINST3("orn.w r1, r2, r3, lsr #0 ", 1, 0, r1, r2, r3, cv); 4969 TESTINST3("orn.w r1, r2, r3, lsr #1 ", 1, 0, r1, r2, r3, cv); 4970 TESTINST3("orn.w r1, r2, r3, lsr #15", 1, 0, r1, r2, r3, cv); 4971 TESTINST3("orn.w r1, r2, r3, lsr #31", 1, 0, r1, r2, r3, cv); 4972 TESTINST3("orn.w r1, r2, r3, asr #0 ", 1, 0, r1, r2, r3, cv); 4973 TESTINST3("orn.w r1, r2, r3, asr #1 ", 1, 0, r1, r2, r3, cv); 4974 TESTINST3("orn.w r1, r2, r3, asr #15", 1, 0, r1, r2, r3, cv); 4975 TESTINST3("orn.w r1, r2, r3, asr #31", 1, 0, r1, r2, r3, cv); 4976 TESTINST3("orns.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 4977 TESTINST3("orns.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 4978 TESTINST3("orns.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 4979 TESTINST3("orns.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 4980 TESTINST3("orns.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 4981 TESTINST3("orns.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 4982 TESTINST3("orns.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 4983 TESTINST3("orns.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 4984 TESTINST3("orns.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 4985 TESTINST3("orns.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 4986 TESTINST3("orns.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 4987 TESTINST3("orns.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 4988 TESTINST3("orn.w r1, r2, r3, lsl #0 ", 0, 1, r1, r2, r3, cv); 4989 TESTINST3("orn.w r1, r2, r3, lsl #1 ", 0, 1, r1, r2, r3, cv); 4990 TESTINST3("orn.w r1, r2, r3, lsl #15", 0, 1, r1, r2, r3, cv); 4991 TESTINST3("orn.w r1, r2, r3, lsl #31", 0, 1, r1, r2, r3, cv); 4992 TESTINST3("orn.w r1, r2, r3, lsr #0 ", 0, 1, r1, r2, r3, cv); 4993 TESTINST3("orn.w r1, r2, r3, lsr #1 ", 0, 1, r1, r2, r3, cv); 4994 TESTINST3("orn.w r1, r2, r3, lsr #15", 0, 1, r1, r2, r3, cv); 4995 TESTINST3("orn.w r1, r2, r3, lsr #31", 0, 1, r1, r2, r3, cv); 4996 TESTINST3("orn.w r1, r2, r3, asr #0 ", 0, 1, r1, r2, r3, cv); 4997 TESTINST3("orn.w r1, r2, r3, asr #1 ", 0, 1, r1, r2, r3, cv); 4998 TESTINST3("orn.w r1, r2, r3, asr #15", 0, 1, r1, r2, r3, cv); 4999 TESTINST3("orn.w r1, r2, r3, asr #31", 0, 1, r1, r2, r3, cv); 5000 TESTINST3("orns.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 5001 TESTINST3("orns.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 5002 TESTINST3("orns.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 5003 TESTINST3("orns.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 5004 TESTINST3("orns.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 5005 TESTINST3("orns.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 5006 TESTINST3("orns.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 5007 TESTINST3("orns.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 5008 TESTINST3("orns.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 5009 TESTINST3("orns.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 5010 TESTINST3("orns.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 5011 TESTINST3("orns.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 5012 TESTINST3("orn.w r1, r2, r3, lsl #0 ", -1, 0, r1, r2, r3, cv); 5013 TESTINST3("orn.w r1, r2, r3, lsl #1 ", -1, 0, r1, r2, r3, cv); 5014 TESTINST3("orn.w r1, r2, r3, lsl #15", -1, 0, r1, r2, r3, cv); 5015 TESTINST3("orn.w r1, r2, r3, lsl #31", -1, 0, r1, r2, r3, cv); 5016 TESTINST3("orn.w r1, r2, r3, lsr #0 ", -1, 0, r1, r2, r3, cv); 5017 TESTINST3("orn.w r1, r2, r3, lsr #1 ", -1, 0, r1, r2, r3, cv); 5018 TESTINST3("orn.w r1, r2, r3, lsr #15", -1, 0, r1, r2, r3, cv); 5019 TESTINST3("orn.w r1, r2, r3, lsr #31", -1, 0, r1, r2, r3, cv); 5020 TESTINST3("orn.w r1, r2, r3, asr #0 ", -1, 0, r1, r2, r3, cv); 5021 TESTINST3("orn.w r1, r2, r3, asr #1 ", -1, 0, r1, r2, r3, cv); 5022 TESTINST3("orn.w r1, r2, r3, asr #15", -1, 0, r1, r2, r3, cv); 5023 TESTINST3("orn.w r1, r2, r3, asr #31", -1, 0, r1, r2, r3, cv); 5024 TESTINST3("orns.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 5025 TESTINST3("orns.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 5026 TESTINST3("orns.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 5027 TESTINST3("orns.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 5028 TESTINST3("orns.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 5029 TESTINST3("orns.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 5030 TESTINST3("orns.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 5031 TESTINST3("orns.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 5032 TESTINST3("orns.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 5033 TESTINST3("orns.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 5034 TESTINST3("orns.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 5035 TESTINST3("orns.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 5036 TESTINST3("orn.w r1, r2, r3, lsl #0 ", 0, -1, r1, r2, r3, cv); 5037 TESTINST3("orn.w r1, r2, r3, lsl #1 ", 0, -1, r1, r2, r3, cv); 5038 TESTINST3("orn.w r1, r2, r3, lsl #15", 0, -1, r1, r2, r3, cv); 5039 TESTINST3("orn.w r1, r2, r3, lsl #31", 0, -1, r1, r2, r3, cv); 5040 TESTINST3("orn.w r1, r2, r3, lsr #0 ", 0, -1, r1, r2, r3, cv); 5041 TESTINST3("orn.w r1, r2, r3, lsr #1 ", 0, -1, r1, r2, r3, cv); 5042 TESTINST3("orn.w r1, r2, r3, lsr #15", 0, -1, r1, r2, r3, cv); 5043 TESTINST3("orn.w r1, r2, r3, lsr #31", 0, -1, r1, r2, r3, cv); 5044 TESTINST3("orn.w r1, r2, r3, asr #0 ", 0, -1, r1, r2, r3, cv); 5045 TESTINST3("orn.w r1, r2, r3, asr #1 ", 0, -1, r1, r2, r3, cv); 5046 TESTINST3("orn.w r1, r2, r3, asr #15", 0, -1, r1, r2, r3, cv); 5047 TESTINST3("orn.w r1, r2, r3, asr #31", 0, -1, r1, r2, r3, cv); 5048 TESTINST3("orns.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 5049 TESTINST3("orns.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 5050 TESTINST3("orns.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 5051 TESTINST3("orns.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 5052 TESTINST3("orns.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 5053 TESTINST3("orns.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 5054 TESTINST3("orns.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 5055 TESTINST3("orns.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 5056 TESTINST3("orns.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 5057 TESTINST3("orns.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 5058 TESTINST3("orns.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 5059 TESTINST3("orns.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 5060 TESTINST3("orn.w r1, r2, r3, lsl #0 ", 0, 0x80000000, r1, r2, r3, cv); 5061 TESTINST3("orn.w r1, r2, r3, lsl #1 ", 0, 0x80000000, r1, r2, r3, cv); 5062 TESTINST3("orn.w r1, r2, r3, lsl #15", 0, 0x80000000, r1, r2, r3, cv); 5063 TESTINST3("orn.w r1, r2, r3, lsl #31", 0, 0x80000000, r1, r2, r3, cv); 5064 TESTINST3("orn.w r1, r2, r3, lsr #0 ", 0, 0x80000000, r1, r2, r3, cv); 5065 TESTINST3("orn.w r1, r2, r3, lsr #1 ", 0, 0x80000000, r1, r2, r3, cv); 5066 TESTINST3("orn.w r1, r2, r3, lsr #15", 0, 0x80000000, r1, r2, r3, cv); 5067 TESTINST3("orn.w r1, r2, r3, lsr #31", 0, 0x80000000, r1, r2, r3, cv); 5068 TESTINST3("orn.w r1, r2, r3, asr #0 ", 0, 0x80000000, r1, r2, r3, cv); 5069 TESTINST3("orn.w r1, r2, r3, asr #1 ", 0, 0x80000000, r1, r2, r3, cv); 5070 TESTINST3("orn.w r1, r2, r3, asr #15", 0, 0x80000000, r1, r2, r3, cv); 5071 TESTINST3("orn.w r1, r2, r3, asr #31", 0, 0x80000000, r1, r2, r3, cv); 5072 TESTINST3("orns.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 5073 TESTINST3("orns.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 5074 TESTINST3("orns.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 5075 TESTINST3("orns.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 5076 TESTINST3("orns.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 5077 TESTINST3("orns.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 5078 TESTINST3("orns.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 5079 TESTINST3("orns.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 5080 TESTINST3("orns.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 5081 TESTINST3("orns.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 5082 TESTINST3("orns.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 5083 TESTINST3("orns.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 5084 TESTINST3("orn.w r1, r2, r3, lsl #0 ", 0x80000000, 0, r1, r2, r3, cv); 5085 TESTINST3("orn.w r1, r2, r3, lsl #1 ", 0x80000000, 0, r1, r2, r3, cv); 5086 TESTINST3("orn.w r1, r2, r3, lsl #15", 0x80000000, 0, r1, r2, r3, cv); 5087 TESTINST3("orn.w r1, r2, r3, lsl #31", 0x80000000, 0, r1, r2, r3, cv); 5088 TESTINST3("orn.w r1, r2, r3, lsr #0 ", 0x80000000, 0, r1, r2, r3, cv); 5089 TESTINST3("orn.w r1, r2, r3, lsr #1 ", 0x80000000, 0, r1, r2, r3, cv); 5090 TESTINST3("orn.w r1, r2, r3, lsr #15", 0x80000000, 0, r1, r2, r3, cv); 5091 TESTINST3("orn.w r1, r2, r3, lsr #31", 0x80000000, 0, r1, r2, r3, cv); 5092 TESTINST3("orn.w r1, r2, r3, asr #0 ", 0x80000000, 0, r1, r2, r3, cv); 5093 TESTINST3("orn.w r1, r2, r3, asr #1 ", 0x80000000, 0, r1, r2, r3, cv); 5094 TESTINST3("orn.w r1, r2, r3, asr #15", 0x80000000, 0, r1, r2, r3, cv); 5095 TESTINST3("orn.w r1, r2, r3, asr #31", 0x80000000, 0, r1, r2, r3, cv); 5096 TESTINST3("orns.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 5097 TESTINST3("orns.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 5098 TESTINST3("orns.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 5099 TESTINST3("orns.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 5100 TESTINST3("orns.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 5101 TESTINST3("orns.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 5102 TESTINST3("orns.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 5103 TESTINST3("orns.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 5104 TESTINST3("orns.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 5105 TESTINST3("orns.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 5106 TESTINST3("orns.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 5107 TESTINST3("orns.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 5108 TESTINST3("orn.w r1, r2, r3, lsl #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 5109 TESTINST3("orn.w r1, r2, r3, lsl #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 5110 TESTINST3("orn.w r1, r2, r3, lsl #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 5111 TESTINST3("orn.w r1, r2, r3, lsl #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 5112 TESTINST3("orn.w r1, r2, r3, lsr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 5113 TESTINST3("orn.w r1, r2, r3, lsr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 5114 TESTINST3("orn.w r1, r2, r3, lsr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 5115 TESTINST3("orn.w r1, r2, r3, lsr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 5116 TESTINST3("orn.w r1, r2, r3, asr #0 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 5117 TESTINST3("orn.w r1, r2, r3, asr #1 ", 0x80000000, 0x80000000, r1, r2, r3, cv); 5118 TESTINST3("orn.w r1, r2, r3, asr #15", 0x80000000, 0x80000000, r1, r2, r3, cv); 5119 TESTINST3("orn.w r1, r2, r3, asr #31", 0x80000000, 0x80000000, r1, r2, r3, cv); 5120 TESTINST3("orns.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5121 TESTINST3("orns.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5122 TESTINST3("orns.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5123 TESTINST3("orns.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5124 TESTINST3("orns.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5125 TESTINST3("orns.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5126 TESTINST3("orns.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5127 TESTINST3("orns.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5128 TESTINST3("orns.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5129 TESTINST3("orns.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5130 TESTINST3("orns.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5131 TESTINST3("orns.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5132 TESTINST3("orn.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5133 TESTINST3("orn.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5134 TESTINST3("orn.w r1, r2, r3, lsl #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5135 TESTINST3("orn.w r1, r2, r3, lsl #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5136 TESTINST3("orn.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5137 TESTINST3("orn.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5138 TESTINST3("orn.w r1, r2, r3, lsr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5139 TESTINST3("orn.w r1, r2, r3, lsr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5140 TESTINST3("orn.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5141 TESTINST3("orn.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5142 TESTINST3("orn.w r1, r2, r3, asr #15", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5143 TESTINST3("orn.w r1, r2, r3, asr #31", 0x7fffffff, 0x80000000, r1, r2, r3, cv); 5144 TESTINST3("orns.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5145 TESTINST3("orns.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5146 TESTINST3("orns.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5147 TESTINST3("orns.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5148 TESTINST3("orns.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5149 TESTINST3("orns.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5150 TESTINST3("orns.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5151 TESTINST3("orns.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5152 TESTINST3("orns.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5153 TESTINST3("orns.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5154 TESTINST3("orns.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5155 TESTINST3("orns.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5156 TESTINST3("orn.w r1, r2, r3, lsl #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5157 TESTINST3("orn.w r1, r2, r3, lsl #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5158 TESTINST3("orn.w r1, r2, r3, lsl #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5159 TESTINST3("orn.w r1, r2, r3, lsl #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5160 TESTINST3("orn.w r1, r2, r3, lsr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5161 TESTINST3("orn.w r1, r2, r3, lsr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5162 TESTINST3("orn.w r1, r2, r3, lsr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5163 TESTINST3("orn.w r1, r2, r3, lsr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5164 TESTINST3("orn.w r1, r2, r3, asr #0 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5165 TESTINST3("orn.w r1, r2, r3, asr #1 ", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5166 TESTINST3("orn.w r1, r2, r3, asr #15", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5167 TESTINST3("orn.w r1, r2, r3, asr #31", 0x80000000, 0x7fffffff, r1, r2, r3, cv); 5168 TESTINST3("orns.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5169 TESTINST3("orns.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5170 TESTINST3("orns.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5171 TESTINST3("orns.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5172 TESTINST3("orns.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5173 TESTINST3("orns.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5174 TESTINST3("orns.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5175 TESTINST3("orns.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5176 TESTINST3("orns.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5177 TESTINST3("orns.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5178 TESTINST3("orns.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5179 TESTINST3("orns.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5180 TESTINST3("orn.w r1, r2, r3, lsl #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5181 TESTINST3("orn.w r1, r2, r3, lsl #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5182 TESTINST3("orn.w r1, r2, r3, lsl #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5183 TESTINST3("orn.w r1, r2, r3, lsl #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5184 TESTINST3("orn.w r1, r2, r3, lsr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5185 TESTINST3("orn.w r1, r2, r3, lsr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5186 TESTINST3("orn.w r1, r2, r3, lsr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5187 TESTINST3("orn.w r1, r2, r3, lsr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5188 TESTINST3("orn.w r1, r2, r3, asr #0 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5189 TESTINST3("orn.w r1, r2, r3, asr #1 ", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5190 TESTINST3("orn.w r1, r2, r3, asr #15", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5191 TESTINST3("orn.w r1, r2, r3, asr #31", 0x7fffffff, 0x7fffffff, r1, r2, r3, cv); 5192 TESTCARRYEND 5193 5194 printf("(T?) LSL{S}.W Rd, Rn, Rm\n"); 5195 TESTCARRY 5196 TESTINST3("lsls.w r1, r2, r3", 0x31415927, 0x00000000, r1, r2, r3, cv); 5197 TESTINST3("lsls.w r1, r2, r3", 0x31415927, 0x00000001, r1, r2, r3, cv); 5198 TESTINST3("lsls.w r1, r2, r3", 0x31415927, 0x00000002, r1, r2, r3, cv); 5199 TESTINST3("lsls.w r1, r2, r3", 0x31415927, 0x0000000F, r1, r2, r3, cv); 5200 TESTINST3("lsls.w r1, r2, r3", 0x31415927, 0x00000010, r1, r2, r3, cv); 5201 TESTINST3("lsls.w r1, r2, r3", 0x31415927, 0x0000001F, r1, r2, r3, cv); 5202 TESTINST3("lsls.w r1, r2, r3", 0x31415927, 0x00000020, r1, r2, r3, cv); 5203 TESTINST3("lsls.w r1, r2, r3", 0x31415927, 0x00000021, r1, r2, r3, cv); 5204 TESTINST3("lsl.w r1, r2, r3", 0x31415927, 0x00000000, r1, r2, r3, cv); 5205 TESTINST3("lsl.w r1, r2, r3", 0x31415927, 0x00000001, r1, r2, r3, cv); 5206 TESTINST3("lsl.w r1, r2, r3", 0x31415927, 0x00000002, r1, r2, r3, cv); 5207 TESTINST3("lsl.w r1, r2, r3", 0x31415927, 0x0000000F, r1, r2, r3, cv); 5208 TESTINST3("lsl.w r1, r2, r3", 0x31415927, 0x00000010, r1, r2, r3, cv); 5209 TESTINST3("lsl.w r1, r2, r3", 0x31415927, 0x0000001F, r1, r2, r3, cv); 5210 TESTINST3("lsl.w r1, r2, r3", 0x31415927, 0x00000020, r1, r2, r3, cv); 5211 TESTINST3("lsl.w r1, r2, r3", 0x31415927, 0x00000021, r1, r2, r3, cv); 5212 TESTCARRYEND 5213 5214 printf("(T?) LSR{S}.W Rd, Rn, Rm\n"); 5215 TESTCARRY 5216 TESTINST3("lsrs.w r1, r2, r3", 0x31415927, 0x00000000, r1, r2, r3, cv); 5217 TESTINST3("lsrs.w r1, r2, r3", 0x31415927, 0x00000001, r1, r2, r3, cv); 5218 TESTINST3("lsrs.w r1, r2, r3", 0x31415927, 0x00000002, r1, r2, r3, cv); 5219 TESTINST3("lsrs.w r1, r2, r3", 0x31415927, 0x0000000F, r1, r2, r3, cv); 5220 TESTINST3("lsrs.w r1, r2, r3", 0x31415927, 0x00000010, r1, r2, r3, cv); 5221 TESTINST3("lsrs.w r1, r2, r3", 0x31415927, 0x0000001F, r1, r2, r3, cv); 5222 TESTINST3("lsrs.w r1, r2, r3", 0x31415927, 0x00000020, r1, r2, r3, cv); 5223 TESTINST3("lsrs.w r1, r2, r3", 0x31415927, 0x00000021, r1, r2, r3, cv); 5224 TESTINST3("lsr.w r1, r2, r3", 0x31415927, 0x00000000, r1, r2, r3, cv); 5225 TESTINST3("lsr.w r1, r2, r3", 0x31415927, 0x00000001, r1, r2, r3, cv); 5226 TESTINST3("lsr.w r1, r2, r3", 0x31415927, 0x00000002, r1, r2, r3, cv); 5227 TESTINST3("lsr.w r1, r2, r3", 0x31415927, 0x0000000F, r1, r2, r3, cv); 5228 TESTINST3("lsr.w r1, r2, r3", 0x31415927, 0x00000010, r1, r2, r3, cv); 5229 TESTINST3("lsr.w r1, r2, r3", 0x31415927, 0x0000001F, r1, r2, r3, cv); 5230 TESTINST3("lsr.w r1, r2, r3", 0x31415927, 0x00000020, r1, r2, r3, cv); 5231 TESTINST3("lsr.w r1, r2, r3", 0x31415927, 0x00000021, r1, r2, r3, cv); 5232 TESTCARRYEND 5233 5234 printf("(T?) ASR{S}.W Rd, Rn, Rm\n"); 5235 TESTCARRY 5236 TESTINST3("asrs.w r1, r2, r3", 0x31415927, 0x00000000, r1, r2, r3, cv); 5237 TESTINST3("asrs.w r1, r2, r3", 0x91415927, 0x00000001, r1, r2, r3, cv); 5238 TESTINST3("asrs.w r1, r2, r3", 0x31415927, 0x00000002, r1, r2, r3, cv); 5239 TESTINST3("asrs.w r1, r2, r3", 0x91415927, 0x0000000F, r1, r2, r3, cv); 5240 TESTINST3("asrs.w r1, r2, r3", 0x31415927, 0x00000010, r1, r2, r3, cv); 5241 TESTINST3("asrs.w r1, r2, r3", 0x91415927, 0x0000001F, r1, r2, r3, cv); 5242 TESTINST3("asrs.w r1, r2, r3", 0x31415927, 0x00000020, r1, r2, r3, cv); 5243 TESTINST3("asrs.w r1, r2, r3", 0x91415927, 0x00000021, r1, r2, r3, cv); 5244 TESTINST3("asr.w r1, r2, r3", 0x31415927, 0x00000000, r1, r2, r3, cv); 5245 TESTINST3("asr.w r1, r2, r3", 0x91415927, 0x00000001, r1, r2, r3, cv); 5246 TESTINST3("asr.w r1, r2, r3", 0x31415927, 0x00000002, r1, r2, r3, cv); 5247 TESTINST3("asr.w r1, r2, r3", 0x91415927, 0x0000000F, r1, r2, r3, cv); 5248 TESTINST3("asr.w r1, r2, r3", 0x31415927, 0x00000010, r1, r2, r3, cv); 5249 TESTINST3("asr.w r1, r2, r3", 0x91415927, 0x0000001F, r1, r2, r3, cv); 5250 TESTINST3("asr.w r1, r2, r3", 0x31415927, 0x00000020, r1, r2, r3, cv); 5251 TESTINST3("asr.w r1, r2, r3", 0x91415927, 0x00000021, r1, r2, r3, cv); 5252 TESTCARRYEND 5253 5254 #if 0 5255 // not handled by vex 5256 printf("(T?) ROR{S}.W Rd, Rn, Rm\n"); 5257 TESTCARRY 5258 TESTINST3("rors.w r1, r2, r3", 0x31415927, 0x00000000, r1, r2, r3, cv); 5259 TESTINST3("rors.w r1, r2, r3", 0x31415927, 0x00000001, r1, r2, r3, cv); 5260 TESTINST3("rors.w r1, r2, r3", 0x31415927, 0x00000002, r1, r2, r3, cv); 5261 TESTINST3("rors.w r1, r2, r3", 0x31415927, 0x0000000F, r1, r2, r3, cv); 5262 TESTINST3("rors.w r1, r2, r3", 0x31415927, 0x00000010, r1, r2, r3, cv); 5263 TESTINST3("rors.w r1, r2, r3", 0x31415927, 0x0000001F, r1, r2, r3, cv); 5264 TESTINST3("rors.w r1, r2, r3", 0x31415927, 0x00000020, r1, r2, r3, cv); 5265 TESTINST3("rors.w r1, r2, r3", 0x31415927, 0x00000021, r1, r2, r3, cv); 5266 TESTINST3("ror.w r1, r2, r3", 0x31415927, 0x00000000, r1, r2, r3, cv); 5267 TESTINST3("ror.w r1, r2, r3", 0x31415927, 0x00000001, r1, r2, r3, cv); 5268 TESTINST3("ror.w r1, r2, r3", 0x31415927, 0x00000002, r1, r2, r3, cv); 5269 TESTINST3("ror.w r1, r2, r3", 0x31415927, 0x0000000F, r1, r2, r3, cv); 5270 TESTINST3("ror.w r1, r2, r3", 0x31415927, 0x00000010, r1, r2, r3, cv); 5271 TESTINST3("ror.w r1, r2, r3", 0x31415927, 0x0000001F, r1, r2, r3, cv); 5272 TESTINST3("ror.w r1, r2, r3", 0x31415927, 0x00000020, r1, r2, r3, cv); 5273 TESTINST3("ror.w r1, r2, r3", 0x31415927, 0x00000021, r1, r2, r3, cv); 5274 TESTCARRYEND 5275 #endif 5276 5277 printf("MVN{S}.W Rd, Rn, shift, and MOV{S}.W ditto\n"); 5278 TESTCARRY 5279 TESTINST2("lsls.w r1, r2, #0 ", 0x7fffffff, r1, r2, cv); 5280 TESTINST2("lsls.w r1, r2, #1 ", 0x7fffffff, r1, r2, cv); 5281 TESTINST2("lsls.w r1, r2, #15", 0x7fffffff, r1, r2, cv); 5282 TESTINST2("lsls.w r1, r2, #31", 0x7fffffff, r1, r2, cv); 5283 TESTINST2("lsrs.w r1, r2, #0 ", 0x7fffffff, r1, r2, cv); 5284 TESTINST2("lsrs.w r1, r2, #1 ", 0x7fffffff, r1, r2, cv); 5285 TESTINST2("lsrs.w r1, r2, #15", 0x7fffffff, r1, r2, cv); 5286 TESTINST2("lsrs.w r1, r2, #31", 0x7fffffff, r1, r2, cv); 5287 TESTINST2("asrs.w r1, r2, #0 ", 0x7fffffff, r1, r2, cv); 5288 TESTINST2("asrs.w r1, r2, #1 ", 0x7fffffff, r1, r2, cv); 5289 TESTINST2("asrs.w r1, r2, #15", 0x7fffffff, r1, r2, cv); 5290 TESTINST2("asrs.w r1, r2, #31", 0x7fffffff, r1, r2, cv); 5291 TESTINST2("rors.w r1, r2, #0 ", 0x7fffffff, r1, r2, cv); 5292 TESTINST2("rors.w r1, r2, #1 ", 0x7fffffff, r1, r2, cv); 5293 TESTINST2("rors.w r1, r2, #15", 0x7fffffff, r1, r2, cv); 5294 TESTINST2("rors.w r1, r2, #31", 0x7fffffff, r1, r2, cv); 5295 TESTINST2("lsl.w r1, r2, #0 ", 0x7fffffff, r1, r2, cv); 5296 TESTINST2("lsl.w r1, r2, #1 ", 0x7fffffff, r1, r2, cv); 5297 TESTINST2("lsl.w r1, r2, #15", 0x7fffffff, r1, r2, cv); 5298 TESTINST2("lsl.w r1, r2, #31", 0x7fffffff, r1, r2, cv); 5299 TESTINST2("lsr.w r1, r2, #0 ", 0x7fffffff, r1, r2, cv); 5300 TESTINST2("lsr.w r1, r2, #1 ", 0x7fffffff, r1, r2, cv); 5301 TESTINST2("lsr.w r1, r2, #15", 0x7fffffff, r1, r2, cv); 5302 TESTINST2("lsr.w r1, r2, #31", 0x7fffffff, r1, r2, cv); 5303 TESTINST2("asr.w r1, r2, #0 ", 0x7fffffff, r1, r2, cv); 5304 TESTINST2("asr.w r1, r2, #1 ", 0x7fffffff, r1, r2, cv); 5305 TESTINST2("asr.w r1, r2, #15", 0x7fffffff, r1, r2, cv); 5306 TESTINST2("asr.w r1, r2, #31", 0x7fffffff, r1, r2, cv); 5307 TESTINST2("ror.w r1, r2, #0 ", 0x7fffffff, r1, r2, cv); 5308 TESTINST2("ror.w r1, r2, #1 ", 0x7fffffff, r1, r2, cv); 5309 TESTINST2("ror.w r1, r2, #15", 0x7fffffff, r1, r2, cv); 5310 TESTINST2("ror.w r1, r2, #31", 0x7fffffff, r1, r2, cv); 5311 TESTINST2("mvns.w r1, r2, lsl #0 ", 0x7fffffff, r1, r2, cv); 5312 TESTINST2("mvns.w r1, r2, lsl #1 ", 0x7fffffff, r1, r2, cv); 5313 TESTINST2("mvns.w r1, r2, lsl #15", 0x7fffffff, r1, r2, cv); 5314 TESTINST2("mvns.w r1, r2, lsl #31", 0x7fffffff, r1, r2, cv); 5315 TESTINST2("mvns.w r1, r2, lsr #0 ", 0x7fffffff, r1, r2, cv); 5316 TESTINST2("mvns.w r1, r2, lsr #1 ", 0x7fffffff, r1, r2, cv); 5317 TESTINST2("mvns.w r1, r2, lsr #15", 0x7fffffff, r1, r2, cv); 5318 TESTINST2("mvns.w r1, r2, lsr #31", 0x7fffffff, r1, r2, cv); 5319 TESTINST2("mvns.w r1, r2, asr #0 ", 0x7fffffff, r1, r2, cv); 5320 TESTINST2("mvns.w r1, r2, asr #1 ", 0x7fffffff, r1, r2, cv); 5321 TESTINST2("mvns.w r1, r2, asr #15", 0x7fffffff, r1, r2, cv); 5322 TESTINST2("mvns.w r1, r2, asr #31", 0x7fffffff, r1, r2, cv); 5323 TESTINST2("mvns.w r1, r2, ror #0 ", 0x7fffffff, r1, r2, cv); 5324 TESTINST2("mvns.w r1, r2, ror #1 ", 0x7fffffff, r1, r2, cv); 5325 TESTINST2("mvns.w r1, r2, ror #15", 0x7fffffff, r1, r2, cv); 5326 TESTINST2("mvns.w r1, r2, ror #31", 0x7fffffff, r1, r2, cv); 5327 TESTINST2("mvn.w r1, r2, lsl #0 ", 0x7fffffff, r1, r2, cv); 5328 TESTINST2("mvn.w r1, r2, lsl #1 ", 0x7fffffff, r1, r2, cv); 5329 TESTINST2("mvn.w r1, r2, lsl #15", 0x7fffffff, r1, r2, cv); 5330 TESTINST2("mvn.w r1, r2, lsl #31", 0x7fffffff, r1, r2, cv); 5331 TESTINST2("mvn.w r1, r2, lsr #0 ", 0x7fffffff, r1, r2, cv); 5332 TESTINST2("mvn.w r1, r2, lsr #1 ", 0x7fffffff, r1, r2, cv); 5333 TESTINST2("mvn.w r1, r2, lsr #15", 0x7fffffff, r1, r2, cv); 5334 TESTINST2("mvn.w r1, r2, lsr #31", 0x7fffffff, r1, r2, cv); 5335 TESTINST2("mvn.w r1, r2, asr #0 ", 0x7fffffff, r1, r2, cv); 5336 TESTINST2("mvn.w r1, r2, asr #1 ", 0x7fffffff, r1, r2, cv); 5337 TESTINST2("mvn.w r1, r2, asr #15", 0x7fffffff, r1, r2, cv); 5338 TESTINST2("mvn.w r1, r2, asr #31", 0x7fffffff, r1, r2, cv); 5339 TESTINST2("mvn.w r1, r2, ror #0 ", 0x7fffffff, r1, r2, cv); 5340 TESTINST2("mvn.w r1, r2, ror #1 ", 0x7fffffff, r1, r2, cv); 5341 TESTINST2("mvn.w r1, r2, ror #15", 0x7fffffff, r1, r2, cv); 5342 TESTINST2("mvn.w r1, r2, ror #31", 0x7fffffff, r1, r2, cv); 5343 TESTINST2("lsls.w r1, r2, #0 ", 0x00000000, r1, r2, cv); 5344 TESTINST2("lsls.w r1, r2, #1 ", 0x00000000, r1, r2, cv); 5345 TESTINST2("lsls.w r1, r2, #15", 0x00000000, r1, r2, cv); 5346 TESTINST2("lsls.w r1, r2, #31", 0x00000000, r1, r2, cv); 5347 TESTINST2("lsrs.w r1, r2, #0 ", 0x00000000, r1, r2, cv); 5348 TESTINST2("lsrs.w r1, r2, #1 ", 0x00000000, r1, r2, cv); 5349 TESTINST2("lsrs.w r1, r2, #15", 0x00000000, r1, r2, cv); 5350 TESTINST2("lsrs.w r1, r2, #31", 0x00000000, r1, r2, cv); 5351 TESTINST2("asrs.w r1, r2, #0 ", 0x00000000, r1, r2, cv); 5352 TESTINST2("asrs.w r1, r2, #1 ", 0x00000000, r1, r2, cv); 5353 TESTINST2("asrs.w r1, r2, #15", 0x00000000, r1, r2, cv); 5354 TESTINST2("asrs.w r1, r2, #31", 0x00000000, r1, r2, cv); 5355 TESTINST2("rors.w r1, r2, #0 ", 0x00000000, r1, r2, cv); 5356 TESTINST2("rors.w r1, r2, #1 ", 0x00000000, r1, r2, cv); 5357 TESTINST2("rors.w r1, r2, #15", 0x00000000, r1, r2, cv); 5358 TESTINST2("rors.w r1, r2, #31", 0x00000000, r1, r2, cv); 5359 TESTINST2("lsl.w r1, r2, #0 ", 0x00000000, r1, r2, cv); 5360 TESTINST2("lsl.w r1, r2, #1 ", 0x00000000, r1, r2, cv); 5361 TESTINST2("lsl.w r1, r2, #15", 0x00000000, r1, r2, cv); 5362 TESTINST2("lsl.w r1, r2, #31", 0x00000000, r1, r2, cv); 5363 TESTINST2("lsr.w r1, r2, #0 ", 0x00000000, r1, r2, cv); 5364 TESTINST2("lsr.w r1, r2, #1 ", 0x00000000, r1, r2, cv); 5365 TESTINST2("lsr.w r1, r2, #15", 0x00000000, r1, r2, cv); 5366 TESTINST2("lsr.w r1, r2, #31", 0x00000000, r1, r2, cv); 5367 TESTINST2("asr.w r1, r2, #0 ", 0x00000000, r1, r2, cv); 5368 TESTINST2("asr.w r1, r2, #1 ", 0x00000000, r1, r2, cv); 5369 TESTINST2("asr.w r1, r2, #15", 0x00000000, r1, r2, cv); 5370 TESTINST2("asr.w r1, r2, #31", 0x00000000, r1, r2, cv); 5371 TESTINST2("ror.w r1, r2, #0 ", 0x00000000, r1, r2, cv); 5372 TESTINST2("ror.w r1, r2, #1 ", 0x00000000, r1, r2, cv); 5373 TESTINST2("ror.w r1, r2, #15", 0x00000000, r1, r2, cv); 5374 TESTINST2("ror.w r1, r2, #31", 0x00000000, r1, r2, cv); 5375 TESTINST2("mvns.w r1, r2, lsl #0 ", 0x00000000, r1, r2, cv); 5376 TESTINST2("mvns.w r1, r2, lsl #1 ", 0x00000000, r1, r2, cv); 5377 TESTINST2("mvns.w r1, r2, lsl #15", 0x00000000, r1, r2, cv); 5378 TESTINST2("mvns.w r1, r2, lsl #31", 0x00000000, r1, r2, cv); 5379 TESTINST2("mvns.w r1, r2, lsr #0 ", 0x00000000, r1, r2, cv); 5380 TESTINST2("mvns.w r1, r2, lsr #1 ", 0x00000000, r1, r2, cv); 5381 TESTINST2("mvns.w r1, r2, lsr #15", 0x00000000, r1, r2, cv); 5382 TESTINST2("mvns.w r1, r2, lsr #31", 0x00000000, r1, r2, cv); 5383 TESTINST2("mvns.w r1, r2, asr #0 ", 0x00000000, r1, r2, cv); 5384 TESTINST2("mvns.w r1, r2, asr #1 ", 0x00000000, r1, r2, cv); 5385 TESTINST2("mvns.w r1, r2, asr #15", 0x00000000, r1, r2, cv); 5386 TESTINST2("mvns.w r1, r2, asr #31", 0x00000000, r1, r2, cv); 5387 TESTINST2("mvns.w r1, r2, ror #0 ", 0x00000000, r1, r2, cv); 5388 TESTINST2("mvns.w r1, r2, ror #1 ", 0x00000000, r1, r2, cv); 5389 TESTINST2("mvns.w r1, r2, ror #15", 0x00000000, r1, r2, cv); 5390 TESTINST2("mvns.w r1, r2, ror #31", 0x00000000, r1, r2, cv); 5391 TESTINST2("mvn.w r1, r2, lsl #0 ", 0x00000000, r1, r2, cv); 5392 TESTINST2("mvn.w r1, r2, lsl #1 ", 0x00000000, r1, r2, cv); 5393 TESTINST2("mvn.w r1, r2, lsl #15", 0x00000000, r1, r2, cv); 5394 TESTINST2("mvn.w r1, r2, lsl #31", 0x00000000, r1, r2, cv); 5395 TESTINST2("mvn.w r1, r2, lsr #0 ", 0x00000000, r1, r2, cv); 5396 TESTINST2("mvn.w r1, r2, lsr #1 ", 0x00000000, r1, r2, cv); 5397 TESTINST2("mvn.w r1, r2, lsr #15", 0x00000000, r1, r2, cv); 5398 TESTINST2("mvn.w r1, r2, lsr #31", 0x00000000, r1, r2, cv); 5399 TESTINST2("mvn.w r1, r2, asr #0 ", 0x00000000, r1, r2, cv); 5400 TESTINST2("mvn.w r1, r2, asr #1 ", 0x00000000, r1, r2, cv); 5401 TESTINST2("mvn.w r1, r2, asr #15", 0x00000000, r1, r2, cv); 5402 TESTINST2("mvn.w r1, r2, asr #31", 0x00000000, r1, r2, cv); 5403 TESTINST2("mvn.w r1, r2, ror #0 ", 0x00000000, r1, r2, cv); 5404 TESTINST2("mvn.w r1, r2, ror #1 ", 0x00000000, r1, r2, cv); 5405 TESTINST2("mvn.w r1, r2, ror #15", 0x00000000, r1, r2, cv); 5406 TESTINST2("mvn.w r1, r2, ror #31", 0x00000000, r1, r2, cv); 5407 TESTINST2("lsls.w r1, r2, #0 ", 0x00000001, r1, r2, cv); 5408 TESTINST2("lsls.w r1, r2, #1 ", 0x00000001, r1, r2, cv); 5409 TESTINST2("lsls.w r1, r2, #15", 0x00000001, r1, r2, cv); 5410 TESTINST2("lsls.w r1, r2, #31", 0x00000001, r1, r2, cv); 5411 TESTINST2("lsrs.w r1, r2, #0 ", 0x00000001, r1, r2, cv); 5412 TESTINST2("lsrs.w r1, r2, #1 ", 0x00000001, r1, r2, cv); 5413 TESTINST2("lsrs.w r1, r2, #15", 0x00000001, r1, r2, cv); 5414 TESTINST2("lsrs.w r1, r2, #31", 0x00000001, r1, r2, cv); 5415 TESTINST2("asrs.w r1, r2, #0 ", 0x00000001, r1, r2, cv); 5416 TESTINST2("asrs.w r1, r2, #1 ", 0x00000001, r1, r2, cv); 5417 TESTINST2("asrs.w r1, r2, #15", 0x00000001, r1, r2, cv); 5418 TESTINST2("asrs.w r1, r2, #31", 0x00000001, r1, r2, cv); 5419 TESTINST2("rors.w r1, r2, #0 ", 0x00000001, r1, r2, cv); 5420 TESTINST2("rors.w r1, r2, #1 ", 0x00000001, r1, r2, cv); 5421 TESTINST2("rors.w r1, r2, #15", 0x00000001, r1, r2, cv); 5422 TESTINST2("rors.w r1, r2, #31", 0x00000001, r1, r2, cv); 5423 TESTINST2("lsl.w r1, r2, #0 ", 0x00000001, r1, r2, cv); 5424 TESTINST2("lsl.w r1, r2, #1 ", 0x00000001, r1, r2, cv); 5425 TESTINST2("lsl.w r1, r2, #15", 0x00000001, r1, r2, cv); 5426 TESTINST2("lsl.w r1, r2, #31", 0x00000001, r1, r2, cv); 5427 TESTINST2("lsr.w r1, r2, #0 ", 0x00000001, r1, r2, cv); 5428 TESTINST2("lsr.w r1, r2, #1 ", 0x00000001, r1, r2, cv); 5429 TESTINST2("lsr.w r1, r2, #15", 0x00000001, r1, r2, cv); 5430 TESTINST2("lsr.w r1, r2, #31", 0x00000001, r1, r2, cv); 5431 TESTINST2("asr.w r1, r2, #0 ", 0x00000001, r1, r2, cv); 5432 TESTINST2("asr.w r1, r2, #1 ", 0x00000001, r1, r2, cv); 5433 TESTINST2("asr.w r1, r2, #15", 0x00000001, r1, r2, cv); 5434 TESTINST2("asr.w r1, r2, #31", 0x00000001, r1, r2, cv); 5435 TESTINST2("ror.w r1, r2, #0 ", 0x00000001, r1, r2, cv); 5436 TESTINST2("ror.w r1, r2, #1 ", 0x00000001, r1, r2, cv); 5437 TESTINST2("ror.w r1, r2, #15", 0x00000001, r1, r2, cv); 5438 TESTINST2("ror.w r1, r2, #31", 0x00000001, r1, r2, cv); 5439 TESTINST2("mvns.w r1, r2, lsl #0 ", 0x00000001, r1, r2, cv); 5440 TESTINST2("mvns.w r1, r2, lsl #1 ", 0x00000001, r1, r2, cv); 5441 TESTINST2("mvns.w r1, r2, lsl #15", 0x00000001, r1, r2, cv); 5442 TESTINST2("mvns.w r1, r2, lsl #31", 0x00000001, r1, r2, cv); 5443 TESTINST2("mvns.w r1, r2, lsr #0 ", 0x00000001, r1, r2, cv); 5444 TESTINST2("mvns.w r1, r2, lsr #1 ", 0x00000001, r1, r2, cv); 5445 TESTINST2("mvns.w r1, r2, lsr #15", 0x00000001, r1, r2, cv); 5446 TESTINST2("mvns.w r1, r2, lsr #31", 0x00000001, r1, r2, cv); 5447 TESTINST2("mvns.w r1, r2, asr #0 ", 0x00000001, r1, r2, cv); 5448 TESTINST2("mvns.w r1, r2, asr #1 ", 0x00000001, r1, r2, cv); 5449 TESTINST2("mvns.w r1, r2, asr #15", 0x00000001, r1, r2, cv); 5450 TESTINST2("mvns.w r1, r2, asr #31", 0x00000001, r1, r2, cv); 5451 TESTINST2("mvns.w r1, r2, ror #0 ", 0x00000001, r1, r2, cv); 5452 TESTINST2("mvns.w r1, r2, ror #1 ", 0x00000001, r1, r2, cv); 5453 TESTINST2("mvns.w r1, r2, ror #15", 0x00000001, r1, r2, cv); 5454 TESTINST2("mvns.w r1, r2, ror #31", 0x00000001, r1, r2, cv); 5455 TESTINST2("mvn.w r1, r2, lsl #0 ", 0x00000001, r1, r2, cv); 5456 TESTINST2("mvn.w r1, r2, lsl #1 ", 0x00000001, r1, r2, cv); 5457 TESTINST2("mvn.w r1, r2, lsl #15", 0x00000001, r1, r2, cv); 5458 TESTINST2("mvn.w r1, r2, lsl #31", 0x00000001, r1, r2, cv); 5459 TESTINST2("mvn.w r1, r2, lsr #0 ", 0x00000001, r1, r2, cv); 5460 TESTINST2("mvn.w r1, r2, lsr #1 ", 0x00000001, r1, r2, cv); 5461 TESTINST2("mvn.w r1, r2, lsr #15", 0x00000001, r1, r2, cv); 5462 TESTINST2("mvn.w r1, r2, lsr #31", 0x00000001, r1, r2, cv); 5463 TESTINST2("mvn.w r1, r2, asr #0 ", 0x00000001, r1, r2, cv); 5464 TESTINST2("mvn.w r1, r2, asr #1 ", 0x00000001, r1, r2, cv); 5465 TESTINST2("mvn.w r1, r2, asr #15", 0x00000001, r1, r2, cv); 5466 TESTINST2("mvn.w r1, r2, asr #31", 0x00000001, r1, r2, cv); 5467 TESTINST2("mvn.w r1, r2, ror #0 ", 0x00000001, r1, r2, cv); 5468 TESTINST2("mvn.w r1, r2, ror #1 ", 0x00000001, r1, r2, cv); 5469 TESTINST2("mvn.w r1, r2, ror #15", 0x00000001, r1, r2, cv); 5470 TESTINST2("mvn.w r1, r2, ror #31", 0x00000001, r1, r2, cv); 5471 TESTINST2("lsls.w r1, r2, #0 ", 0x9218abcd, r1, r2, cv); 5472 TESTINST2("lsls.w r1, r2, #1 ", 0x9218abcd, r1, r2, cv); 5473 TESTINST2("lsls.w r1, r2, #15", 0x9218abcd, r1, r2, cv); 5474 TESTINST2("lsls.w r1, r2, #31", 0x9218abcd, r1, r2, cv); 5475 TESTINST2("lsrs.w r1, r2, #0 ", 0x9218abcd, r1, r2, cv); 5476 TESTINST2("lsrs.w r1, r2, #1 ", 0x9218abcd, r1, r2, cv); 5477 TESTINST2("lsrs.w r1, r2, #15", 0x9218abcd, r1, r2, cv); 5478 TESTINST2("lsrs.w r1, r2, #31", 0x9218abcd, r1, r2, cv); 5479 TESTINST2("asrs.w r1, r2, #0 ", 0x9218abcd, r1, r2, cv); 5480 TESTINST2("asrs.w r1, r2, #1 ", 0x9218abcd, r1, r2, cv); 5481 TESTINST2("asrs.w r1, r2, #15", 0x9218abcd, r1, r2, cv); 5482 TESTINST2("asrs.w r1, r2, #31", 0x9218abcd, r1, r2, cv); 5483 TESTINST2("rors.w r1, r2, #0 ", 0x9218abcd, r1, r2, cv); 5484 TESTINST2("rors.w r1, r2, #1 ", 0x9218abcd, r1, r2, cv); 5485 TESTINST2("rors.w r1, r2, #15", 0x9218abcd, r1, r2, cv); 5486 TESTINST2("rors.w r1, r2, #31", 0x9218abcd, r1, r2, cv); 5487 TESTINST2("lsl.w r1, r2, #0 ", 0x9218abcd, r1, r2, cv); 5488 TESTINST2("lsl.w r1, r2, #1 ", 0x9218abcd, r1, r2, cv); 5489 TESTINST2("lsl.w r1, r2, #15", 0x9218abcd, r1, r2, cv); 5490 TESTINST2("lsl.w r1, r2, #31", 0x9218abcd, r1, r2, cv); 5491 TESTINST2("lsr.w r1, r2, #0 ", 0x9218abcd, r1, r2, cv); 5492 TESTINST2("lsr.w r1, r2, #1 ", 0x9218abcd, r1, r2, cv); 5493 TESTINST2("lsr.w r1, r2, #15", 0x9218abcd, r1, r2, cv); 5494 TESTINST2("lsr.w r1, r2, #31", 0x9218abcd, r1, r2, cv); 5495 TESTINST2("asr.w r1, r2, #0 ", 0x9218abcd, r1, r2, cv); 5496 TESTINST2("asr.w r1, r2, #1 ", 0x9218abcd, r1, r2, cv); 5497 TESTINST2("asr.w r1, r2, #15", 0x9218abcd, r1, r2, cv); 5498 TESTINST2("asr.w r1, r2, #31", 0x9218abcd, r1, r2, cv); 5499 TESTINST2("ror.w r1, r2, #0 ", 0x9218abcd, r1, r2, cv); 5500 TESTINST2("ror.w r1, r2, #1 ", 0x9218abcd, r1, r2, cv); 5501 TESTINST2("ror.w r1, r2, #15", 0x9218abcd, r1, r2, cv); 5502 TESTINST2("ror.w r1, r2, #31", 0x9218abcd, r1, r2, cv); 5503 TESTINST2("mvns.w r1, r2, lsl #0 ", 0x9218abcd, r1, r2, cv); 5504 TESTINST2("mvns.w r1, r2, lsl #1 ", 0x9218abcd, r1, r2, cv); 5505 TESTINST2("mvns.w r1, r2, lsl #15", 0x9218abcd, r1, r2, cv); 5506 TESTINST2("mvns.w r1, r2, lsl #31", 0x9218abcd, r1, r2, cv); 5507 TESTINST2("mvns.w r1, r2, lsr #0 ", 0x9218abcd, r1, r2, cv); 5508 TESTINST2("mvns.w r1, r2, lsr #1 ", 0x9218abcd, r1, r2, cv); 5509 TESTINST2("mvns.w r1, r2, lsr #15", 0x9218abcd, r1, r2, cv); 5510 TESTINST2("mvns.w r1, r2, lsr #31", 0x9218abcd, r1, r2, cv); 5511 TESTINST2("mvns.w r1, r2, asr #0 ", 0x9218abcd, r1, r2, cv); 5512 TESTINST2("mvns.w r1, r2, asr #1 ", 0x9218abcd, r1, r2, cv); 5513 TESTINST2("mvns.w r1, r2, asr #15", 0x9218abcd, r1, r2, cv); 5514 TESTINST2("mvns.w r1, r2, asr #31", 0x9218abcd, r1, r2, cv); 5515 TESTINST2("mvns.w r1, r2, ror #0 ", 0x9218abcd, r1, r2, cv); 5516 TESTINST2("mvns.w r1, r2, ror #1 ", 0x9218abcd, r1, r2, cv); 5517 TESTINST2("mvns.w r1, r2, ror #15", 0x9218abcd, r1, r2, cv); 5518 TESTINST2("mvns.w r1, r2, ror #31", 0x9218abcd, r1, r2, cv); 5519 TESTINST2("mvn.w r1, r2, lsl #0 ", 0x9218abcd, r1, r2, cv); 5520 TESTINST2("mvn.w r1, r2, lsl #1 ", 0x9218abcd, r1, r2, cv); 5521 TESTINST2("mvn.w r1, r2, lsl #15", 0x9218abcd, r1, r2, cv); 5522 TESTINST2("mvn.w r1, r2, lsl #31", 0x9218abcd, r1, r2, cv); 5523 TESTINST2("mvn.w r1, r2, lsr #0 ", 0x9218abcd, r1, r2, cv); 5524 TESTINST2("mvn.w r1, r2, lsr #1 ", 0x9218abcd, r1, r2, cv); 5525 TESTINST2("mvn.w r1, r2, lsr #15", 0x9218abcd, r1, r2, cv); 5526 TESTINST2("mvn.w r1, r2, lsr #31", 0x9218abcd, r1, r2, cv); 5527 TESTINST2("mvn.w r1, r2, asr #0 ", 0x9218abcd, r1, r2, cv); 5528 TESTINST2("mvn.w r1, r2, asr #1 ", 0x9218abcd, r1, r2, cv); 5529 TESTINST2("mvn.w r1, r2, asr #15", 0x9218abcd, r1, r2, cv); 5530 TESTINST2("mvn.w r1, r2, asr #31", 0x9218abcd, r1, r2, cv); 5531 TESTINST2("mvn.w r1, r2, ror #0 ", 0x9218abcd, r1, r2, cv); 5532 TESTINST2("mvn.w r1, r2, ror #1 ", 0x9218abcd, r1, r2, cv); 5533 TESTINST2("mvn.w r1, r2, ror #15", 0x9218abcd, r1, r2, cv); 5534 TESTINST2("mvn.w r1, r2, ror #31", 0x9218abcd, r1, r2, cv); 5535 TESTINST2("lsls.w r1, r2, #0 ", 0xffffffff, r1, r2, cv); 5536 TESTINST2("lsls.w r1, r2, #1 ", 0xffffffff, r1, r2, cv); 5537 TESTINST2("lsls.w r1, r2, #15", 0xffffffff, r1, r2, cv); 5538 TESTINST2("lsls.w r1, r2, #31", 0xffffffff, r1, r2, cv); 5539 TESTINST2("lsrs.w r1, r2, #0 ", 0xffffffff, r1, r2, cv); 5540 TESTINST2("lsrs.w r1, r2, #1 ", 0xffffffff, r1, r2, cv); 5541 TESTINST2("lsrs.w r1, r2, #15", 0xffffffff, r1, r2, cv); 5542 TESTINST2("lsrs.w r1, r2, #31", 0xffffffff, r1, r2, cv); 5543 TESTINST2("asrs.w r1, r2, #0 ", 0xffffffff, r1, r2, cv); 5544 TESTINST2("asrs.w r1, r2, #1 ", 0xffffffff, r1, r2, cv); 5545 TESTINST2("asrs.w r1, r2, #15", 0xffffffff, r1, r2, cv); 5546 TESTINST2("asrs.w r1, r2, #31", 0xffffffff, r1, r2, cv); 5547 TESTINST2("rors.w r1, r2, #0 ", 0xffffffff, r1, r2, cv); 5548 TESTINST2("rors.w r1, r2, #1 ", 0xffffffff, r1, r2, cv); 5549 TESTINST2("rors.w r1, r2, #15", 0xffffffff, r1, r2, cv); 5550 TESTINST2("rors.w r1, r2, #31", 0xffffffff, r1, r2, cv); 5551 TESTINST2("lsl.w r1, r2, #0 ", 0xffffffff, r1, r2, cv); 5552 TESTINST2("lsl.w r1, r2, #1 ", 0xffffffff, r1, r2, cv); 5553 TESTINST2("lsl.w r1, r2, #15", 0xffffffff, r1, r2, cv); 5554 TESTINST2("lsl.w r1, r2, #31", 0xffffffff, r1, r2, cv); 5555 TESTINST2("lsr.w r1, r2, #0 ", 0xffffffff, r1, r2, cv); 5556 TESTINST2("lsr.w r1, r2, #1 ", 0xffffffff, r1, r2, cv); 5557 TESTINST2("lsr.w r1, r2, #15", 0xffffffff, r1, r2, cv); 5558 TESTINST2("lsr.w r1, r2, #31", 0xffffffff, r1, r2, cv); 5559 TESTINST2("asr.w r1, r2, #0 ", 0xffffffff, r1, r2, cv); 5560 TESTINST2("asr.w r1, r2, #1 ", 0xffffffff, r1, r2, cv); 5561 TESTINST2("asr.w r1, r2, #15", 0xffffffff, r1, r2, cv); 5562 TESTINST2("asr.w r1, r2, #31", 0xffffffff, r1, r2, cv); 5563 TESTINST2("ror.w r1, r2, #0 ", 0xffffffff, r1, r2, cv); 5564 TESTINST2("ror.w r1, r2, #1 ", 0xffffffff, r1, r2, cv); 5565 TESTINST2("ror.w r1, r2, #15", 0xffffffff, r1, r2, cv); 5566 TESTINST2("ror.w r1, r2, #31", 0xffffffff, r1, r2, cv); 5567 TESTINST2("mvns.w r1, r2, lsl #0 ", 0xffffffff, r1, r2, cv); 5568 TESTINST2("mvns.w r1, r2, lsl #1 ", 0xffffffff, r1, r2, cv); 5569 TESTINST2("mvns.w r1, r2, lsl #15", 0xffffffff, r1, r2, cv); 5570 TESTINST2("mvns.w r1, r2, lsl #31", 0xffffffff, r1, r2, cv); 5571 TESTINST2("mvns.w r1, r2, lsr #0 ", 0xffffffff, r1, r2, cv); 5572 TESTINST2("mvns.w r1, r2, lsr #1 ", 0xffffffff, r1, r2, cv); 5573 TESTINST2("mvns.w r1, r2, lsr #15", 0xffffffff, r1, r2, cv); 5574 TESTINST2("mvns.w r1, r2, lsr #31", 0xffffffff, r1, r2, cv); 5575 TESTINST2("mvns.w r1, r2, asr #0 ", 0xffffffff, r1, r2, cv); 5576 TESTINST2("mvns.w r1, r2, asr #1 ", 0xffffffff, r1, r2, cv); 5577 TESTINST2("mvns.w r1, r2, asr #15", 0xffffffff, r1, r2, cv); 5578 TESTINST2("mvns.w r1, r2, asr #31", 0xffffffff, r1, r2, cv); 5579 TESTINST2("mvns.w r1, r2, ror #0 ", 0xffffffff, r1, r2, cv); 5580 TESTINST2("mvns.w r1, r2, ror #1 ", 0xffffffff, r1, r2, cv); 5581 TESTINST2("mvns.w r1, r2, ror #15", 0xffffffff, r1, r2, cv); 5582 TESTINST2("mvns.w r1, r2, ror #31", 0xffffffff, r1, r2, cv); 5583 TESTINST2("mvn.w r1, r2, lsl #0 ", 0xffffffff, r1, r2, cv); 5584 TESTINST2("mvn.w r1, r2, lsl #1 ", 0xffffffff, r1, r2, cv); 5585 TESTINST2("mvn.w r1, r2, lsl #15", 0xffffffff, r1, r2, cv); 5586 TESTINST2("mvn.w r1, r2, lsl #31", 0xffffffff, r1, r2, cv); 5587 TESTINST2("mvn.w r1, r2, lsr #0 ", 0xffffffff, r1, r2, cv); 5588 TESTINST2("mvn.w r1, r2, lsr #1 ", 0xffffffff, r1, r2, cv); 5589 TESTINST2("mvn.w r1, r2, lsr #15", 0xffffffff, r1, r2, cv); 5590 TESTINST2("mvn.w r1, r2, lsr #31", 0xffffffff, r1, r2, cv); 5591 TESTINST2("mvn.w r1, r2, asr #0 ", 0xffffffff, r1, r2, cv); 5592 TESTINST2("mvn.w r1, r2, asr #1 ", 0xffffffff, r1, r2, cv); 5593 TESTINST2("mvn.w r1, r2, asr #15", 0xffffffff, r1, r2, cv); 5594 TESTINST2("mvn.w r1, r2, asr #31", 0xffffffff, r1, r2, cv); 5595 TESTINST2("mvn.w r1, r2, ror #0 ", 0xffffffff, r1, r2, cv); 5596 TESTINST2("mvn.w r1, r2, ror #1 ", 0xffffffff, r1, r2, cv); 5597 TESTINST2("mvn.w r1, r2, ror #15", 0xffffffff, r1, r2, cv); 5598 TESTINST2("mvn.w r1, r2, ror #31", 0xffffffff, r1, r2, cv); 5599 TESTCARRYEND 5600 5601 printf("(T?) TST.W Rn, Rm, {shift}\n"); 5602 TESTCARRY 5603 TESTINST2x("tst.w r1, r2, lsl #1", 0x11223344, 0x99887766, r1, r2, cv); 5604 TESTINST2x("tst.w r1, r2, lsr #1", 0x11223344, 0x99887766, r1, r2, cv); 5605 TESTINST2x("tst.w r1, r2, asr #1", 0x11223344, 0x99887766, r1, r2, cv); 5606 TESTINST2x("tst.w r1, r2, ror #1", 0x11223344, 0x99887766, r1, r2, cv); 5607 TESTINST2x("tst.w r1, r2, lsl #1", 0x11223344, 0x00000000, r1, r2, cv); 5608 TESTINST2x("tst.w r1, r2, lsr #1", 0x11223344, 0x00000000, r1, r2, cv); 5609 TESTINST2x("tst.w r1, r2, asr #1", 0x11223344, 0x00000000, r1, r2, cv); 5610 TESTINST2x("tst.w r1, r2, ror #1", 0x11223344, 0x00000000, r1, r2, cv); 5611 TESTINST2x("tst.w r1, r2, lsl #1", 0x91223344, 0x40000000, r1, r2, cv); 5612 TESTINST2x("tst.w r1, r2, lsr #1", 0x91223344, 0x40000000, r1, r2, cv); 5613 TESTINST2x("tst.w r1, r2, asr #1", 0x91223344, 0x80000000, r1, r2, cv); 5614 TESTINST2x("tst.w r1, r2, ror #1", 0x91223344, 0x00000001, r1, r2, cv); 5615 TESTCARRYEND 5616 5617 printf("(T?) TEQ.W Rn, Rm, {shift}\n"); 5618 TESTCARRY 5619 TESTINST2x("teq.w r1, r2, lsl #1", 0x11223344, 0x99887766, r1, r2, cv); 5620 TESTINST2x("teq.w r1, r2, lsr #1", 0x11223344, 0x99887766, r1, r2, cv); 5621 TESTINST2x("teq.w r1, r2, asr #1", 0x11223344, 0x99887766, r1, r2, cv); 5622 TESTINST2x("teq.w r1, r2, ror #1", 0x11223344, 0x99887766, r1, r2, cv); 5623 TESTINST2x("teq.w r1, r2, lsl #1", 0x11223344, 0x00000000, r1, r2, cv); 5624 TESTINST2x("teq.w r1, r2, lsr #1", 0x11223344, 0x00000000, r1, r2, cv); 5625 TESTINST2x("teq.w r1, r2, asr #1", 0x11223344, 0x00000000, r1, r2, cv); 5626 TESTINST2x("teq.w r1, r2, ror #1", 0x11223344, 0x00000000, r1, r2, cv); 5627 TESTINST2x("teq.w r1, r2, lsl #1", 0x91223344, 0x40000000, r1, r2, cv); 5628 TESTINST2x("teq.w r1, r2, lsr #1", 0x91223344, 0x40000000, r1, r2, cv); 5629 TESTINST2x("teq.w r1, r2, asr #1", 0x91223344, 0x80000000, r1, r2, cv); 5630 TESTINST2x("teq.w r1, r2, ror #1", 0x91223344, 0x00000001, r1, r2, cv); 5631 TESTCARRYEND 5632 5633 printf("(T?) CMP.W Rn, Rm, {shift}\n"); 5634 TESTCARRY 5635 TESTINST2x("cmp.w r1, r2, lsl #1", 0x11223344, 0x99887766, r1, r2, cv); 5636 TESTINST2x("cmp.w r1, r2, lsr #1", 0x11223344, 0x99887766, r1, r2, cv); 5637 TESTINST2x("cmp.w r1, r2, asr #1", 0x11223344, 0x99887766, r1, r2, cv); 5638 TESTINST2x("cmp.w r1, r2, ror #1", 0x11223344, 0x99887766, r1, r2, cv); 5639 TESTINST2x("cmp.w r1, r2, lsl #1", 0x11223344, 0x00000000, r1, r2, cv); 5640 TESTINST2x("cmp.w r1, r2, lsr #1", 0x11223344, 0x00000000, r1, r2, cv); 5641 TESTINST2x("cmp.w r1, r2, asr #1", 0x11223344, 0x00000000, r1, r2, cv); 5642 TESTINST2x("cmp.w r1, r2, ror #1", 0x11223344, 0x00000000, r1, r2, cv); 5643 TESTINST2x("cmp.w r1, r2, lsl #1", 0x91223344, 0x40000000, r1, r2, cv); 5644 TESTINST2x("cmp.w r1, r2, lsr #1", 0x91223344, 0x40000000, r1, r2, cv); 5645 TESTINST2x("cmp.w r1, r2, asr #1", 0x91223344, 0x80000000, r1, r2, cv); 5646 TESTINST2x("cmp.w r1, r2, ror #1", 0x91223344, 0x00000001, r1, r2, cv); 5647 TESTINST2x("cmp.w r1, r2, lsr #2", 0x15555555, 0x55555555, r1, r2, cv); 5648 TESTINST2x("cmp.w r1, r2, ror #1", 0x55555555, 0xaaaaaaaa, r1, r2, cv); 5649 TESTCARRYEND 5650 5651 printf("(T?) CMN.W Rn, Rm, {shift}\n"); 5652 TESTCARRY 5653 TESTINST2x("cmn.w r1, r2, lsl #1", 0x11223344, 0x99887766, r1, r2, cv); 5654 TESTINST2x("cmn.w r1, r2, lsr #1", 0x11223344, 0x99887766, r1, r2, cv); 5655 TESTINST2x("cmn.w r1, r2, asr #1", 0x11223344, 0x99887766, r1, r2, cv); 5656 TESTINST2x("cmn.w r1, r2, ror #1", 0x11223344, 0x99887766, r1, r2, cv); 5657 TESTINST2x("cmn.w r1, r2, lsl #1", 0x11223344, 0x00000000, r1, r2, cv); 5658 TESTINST2x("cmn.w r1, r2, lsr #1", 0x11223344, 0x00000000, r1, r2, cv); 5659 TESTINST2x("cmn.w r1, r2, asr #1", 0x11223344, 0x00000000, r1, r2, cv); 5660 TESTINST2x("cmn.w r1, r2, ror #1", 0x11223344, 0x00000000, r1, r2, cv); 5661 TESTINST2x("cmn.w r1, r2, lsl #1", 0x91223344, 0x40000000, r1, r2, cv); 5662 TESTINST2x("cmn.w r1, r2, lsr #1", 0x91223344, 0x40000000, r1, r2, cv); 5663 TESTINST2x("cmn.w r1, r2, asr #1", 0x91223344, 0x80000000, r1, r2, cv); 5664 TESTINST2x("cmn.w r1, r2, ror #1", 0x91223344, 0x00000001, r1, r2, cv); 5665 TESTINST2x("cmn.w r1, r2, lsr #2", 0x15555555, 0x55555555, r1, r2, cv); 5666 TESTINST2x("cmn.w r1, r2, ror #1", 0x55555555, 0xaaaaaaaa, r1, r2, cv); 5667 TESTCARRYEND 5668 5669 printf("(T2) MOV{S}.W Rd, #constT\n"); 5670 TESTCARRY 5671 TESTINST1("movs.w r9, 0x00000000", r9, cv); 5672 TESTINST1("movs.w r9, 0x000000FF", r9, cv); 5673 TESTINST1("movs.w r9, 0x0000007F", r9, cv); 5674 TESTINST1("movs.w r9, 0x00FF00FF", r9, cv); 5675 TESTINST1("movs.w r9, 0x007F007F", r9, cv); 5676 TESTINST1("movs.w r9, 0x43434343", r9, cv); 5677 TESTINST1("movs.w r9, 0x93939393", r9, cv); 5678 TESTINST1("movs.w r9, 0x93000000", r9, cv); 5679 TESTINST1("movs.w r9, 0x43000000", r9, cv); 5680 TESTINST1("movs.w r9, 0x09300000", r9, cv); 5681 TESTINST1("movs.w r9, 0x04300000", r9, cv); 5682 TESTINST1("movs.w r9, 0x00930000", r9, cv); 5683 TESTINST1("movs.w r9, 0x00430000", r9, cv); 5684 TESTINST1("movs.w r9, 0x00000930", r9, cv); 5685 TESTINST1("movs.w r9, 0x00000430", r9, cv); 5686 TESTINST1("movs.w r9, 0x00000093", r9, cv); 5687 TESTINST1("movs.w r9, 0x00000043", r9, cv); 5688 TESTINST1("mov.w r9, 0x00000000", r9, cv); 5689 TESTINST1("mov.w r9, 0x000000FF", r9, cv); 5690 TESTINST1("mov.w r9, 0x0000007F", r9, cv); 5691 TESTINST1("mov.w r9, 0x00FF00FF", r9, cv); 5692 TESTINST1("mov.w r9, 0x007F007F", r9, cv); 5693 TESTINST1("mov.w r9, 0x43434343", r9, cv); 5694 TESTINST1("mov.w r9, 0x93939393", r9, cv); 5695 TESTINST1("mov.w r9, 0x93000000", r9, cv); 5696 TESTINST1("mov.w r9, 0x43000000", r9, cv); 5697 TESTINST1("mov.w r9, 0x09300000", r9, cv); 5698 TESTINST1("mov.w r9, 0x04300000", r9, cv); 5699 TESTINST1("mov.w r9, 0x00930000", r9, cv); 5700 TESTINST1("mov.w r9, 0x00430000", r9, cv); 5701 TESTINST1("mov.w r9, 0x00000930", r9, cv); 5702 TESTINST1("mov.w r9, 0x00000430", r9, cv); 5703 TESTINST1("mov.w r9, 0x00000093", r9, cv); 5704 TESTINST1("mov.w r9, 0x00000043", r9, cv); 5705 TESTCARRYEND 5706 5707 printf("(T2) MVN{S}.W Rd, #constT\n"); 5708 TESTCARRY 5709 TESTINST1("mvns.w r9, 0x00000000", r9, cv); 5710 TESTINST1("mvns.w r9, 0x000000FF", r9, cv); 5711 TESTINST1("mvns.w r9, 0x0000007F", r9, cv); 5712 TESTINST1("mvns.w r9, 0x00FF00FF", r9, cv); 5713 TESTINST1("mvns.w r9, 0x007F007F", r9, cv); 5714 TESTINST1("mvns.w r9, 0x43434343", r9, cv); 5715 TESTINST1("mvns.w r9, 0x93939393", r9, cv); 5716 TESTINST1("mvns.w r9, 0x93000000", r9, cv); 5717 TESTINST1("mvns.w r9, 0x43000000", r9, cv); 5718 TESTINST1("mvns.w r9, 0x09300000", r9, cv); 5719 TESTINST1("mvns.w r9, 0x04300000", r9, cv); 5720 TESTINST1("mvns.w r9, 0x00930000", r9, cv); 5721 TESTINST1("mvns.w r9, 0x00430000", r9, cv); 5722 TESTINST1("mvns.w r9, 0x00000930", r9, cv); 5723 TESTINST1("mvns.w r9, 0x00000430", r9, cv); 5724 TESTINST1("mvns.w r9, 0x00000093", r9, cv); 5725 TESTINST1("mvns.w r9, 0x00000043", r9, cv); 5726 TESTINST1("mvn.w r9, 0x00000000", r9, cv); 5727 TESTINST1("mvn.w r9, 0x000000FF", r9, cv); 5728 TESTINST1("mvn.w r9, 0x0000007F", r9, cv); 5729 TESTINST1("mvn.w r9, 0x00FF00FF", r9, cv); 5730 TESTINST1("mvn.w r9, 0x007F007F", r9, cv); 5731 TESTINST1("mvn.w r9, 0x43434343", r9, cv); 5732 TESTINST1("mvn.w r9, 0x93939393", r9, cv); 5733 TESTINST1("mvn.w r9, 0x93000000", r9, cv); 5734 TESTINST1("mvn.w r9, 0x43000000", r9, cv); 5735 TESTINST1("mvn.w r9, 0x09300000", r9, cv); 5736 TESTINST1("mvn.w r9, 0x04300000", r9, cv); 5737 TESTINST1("mvn.w r9, 0x00930000", r9, cv); 5738 TESTINST1("mvn.w r9, 0x00430000", r9, cv); 5739 TESTINST1("mvn.w r9, 0x00000930", r9, cv); 5740 TESTINST1("mvn.w r9, 0x00000430", r9, cv); 5741 TESTINST1("mvn.w r9, 0x00000093", r9, cv); 5742 TESTINST1("mvn.w r9, 0x00000043", r9, cv); 5743 TESTCARRYEND 5744 5745 printf("(T1) RBIT Rd, Rm\n"); 5746 TESTINST2("rbit r0, r1", 0x00000000, r0, r1, 0); 5747 TESTINST2("rbit r0, r1", 0xFFFFFFFF, r0, r1, 0); 5748 TESTINST2("rbit r0, r1", 0x80000000, r0, r1, 0); 5749 TESTINST2("rbit r0, r1", 0x00000001, r0, r1, 0); 5750 TESTINST2("rbit r0, r1", 0x31415927, r0, r1, 0); 5751 TESTINST2("rbit r0, r1", 0x14141562, r0, r1, 0); 5752 TESTINST2("rbit r0, r1", 0xabe8391f, r0, r1, 0); 5753 TESTINST2("rbit r0, r1", 0x9028aa80, r0, r1, 0); 5754 TESTINST2("rbit r0, r1", 0xead1fc6d, r0, r1, 0); 5755 TESTINST2("rbit r0, r1", 0x35c98c55, r0, r1, 0); 5756 TESTINST2("rbit r0, r1", 0x534af1eb, r0, r1, 0); 5757 TESTINST2("rbit r0, r1", 0x45511b08, r0, r1, 0); 5758 TESTINST2("rbit r0, r1", 0x90077f71, r0, r1, 0); 5759 TESTINST2("rbit r0, r1", 0xde8ca84b, r0, r1, 0); 5760 TESTINST2("rbit r0, r1", 0xe37a0dda, r0, r1, 0); 5761 TESTINST2("rbit r0, r1", 0xe5b83d4b, r0, r1, 0); 5762 TESTINST2("rbit r0, r1", 0xbb6d14ec, r0, r1, 0); 5763 TESTINST2("rbit r0, r1", 0x68983cc9, r0, r1, 0); 5764 5765 printf("(T1) REV Rd, Rm ------------\n"); 5766 TESTINST2("rev r0, r1", 0x00000000, r0, r1, 0); 5767 TESTINST2("rev r0, r1", 0xFFFFFFFF, r0, r1, 0); 5768 TESTINST2("rev r0, r1", 0x80000000, r0, r1, 0); 5769 TESTINST2("rev r0, r1", 0x00000001, r0, r1, 0); 5770 TESTINST2("rev r0, r1", 0x31415927, r0, r1, 0); 5771 TESTINST2("rev r0, r1", 0x14141562, r0, r1, 0); 5772 TESTINST2("rev r0, r1", 0xabe8391f, r0, r1, 0); 5773 TESTINST2("rev r0, r1", 0x9028aa80, r0, r1, 0); 5774 TESTINST2("rev r0, r1", 0xead1fc6d, r0, r1, 0); 5775 TESTINST2("rev r0, r1", 0x35c98c55, r0, r1, 0); 5776 TESTINST2("rev r0, r1", 0x534af1eb, r0, r1, 0); 5777 TESTINST2("rev r0, r1", 0x45511b08, r0, r1, 0); 5778 TESTINST2("rev r0, r1", 0x90077f71, r0, r1, 0); 5779 TESTINST2("rev r0, r1", 0xde8ca84b, r0, r1, 0); 5780 TESTINST2("rev r0, r1", 0xe37a0dda, r0, r1, 0); 5781 TESTINST2("rev r0, r1", 0xe5b83d4b, r0, r1, 0); 5782 TESTINST2("rev r0, r1", 0xbb6d14ec, r0, r1, 0); 5783 TESTINST2("rev r0, r1", 0x68983cc9, r0, r1, 0); 5784 5785 printf("(T2) REV Rd, Rm ------------\n"); 5786 TESTINST2("rev r8, r9", 0x00000000, r8, r9, 0); 5787 TESTINST2("rev r8, r9", 0xFFFFFFFF, r8, r9, 0); 5788 TESTINST2("rev r8, r9", 0x80000000, r8, r9, 0); 5789 TESTINST2("rev r8, r9", 0x00000001, r8, r9, 0); 5790 TESTINST2("rev r8, r9", 0x31415927, r8, r9, 0); 5791 TESTINST2("rev r8, r9", 0x14141562, r8, r9, 0); 5792 TESTINST2("rev r8, r9", 0xabe8391f, r8, r9, 0); 5793 TESTINST2("rev r8, r9", 0x9028aa80, r8, r9, 0); 5794 TESTINST2("rev r8, r9", 0xead1fc6d, r8, r9, 0); 5795 TESTINST2("rev r8, r9", 0x35c98c55, r8, r9, 0); 5796 TESTINST2("rev r8, r9", 0x534af1eb, r8, r9, 0); 5797 TESTINST2("rev r8, r9", 0x45511b08, r8, r9, 0); 5798 TESTINST2("rev r8, r9", 0x90077f71, r8, r9, 0); 5799 TESTINST2("rev r8, r9", 0xde8ca84b, r8, r9, 0); 5800 TESTINST2("rev r8, r9", 0xe37a0dda, r8, r9, 0); 5801 TESTINST2("rev r8, r9", 0xe5b83d4b, r8, r9, 0); 5802 TESTINST2("rev r8, r9", 0xbb6d14ec, r8, r9, 0); 5803 TESTINST2("rev r8, r9", 0x68983cc9, r8, r9, 0); 5804 5805 printf("(T1) REV16 Rd, Rm ------------\n"); 5806 TESTINST2("rev16 r0, r1", 0x00000000, r0, r1, 0); 5807 TESTINST2("rev16 r0, r1", 0xFFFFFFFF, r0, r1, 0); 5808 TESTINST2("rev16 r0, r1", 0x80000000, r0, r1, 0); 5809 TESTINST2("rev16 r0, r1", 0x00000001, r0, r1, 0); 5810 TESTINST2("rev16 r0, r1", 0x31415927, r0, r1, 0); 5811 TESTINST2("rev16 r0, r1", 0x14141562, r0, r1, 0); 5812 TESTINST2("rev16 r0, r1", 0xabe8391f, r0, r1, 0); 5813 TESTINST2("rev16 r0, r1", 0x9028aa80, r0, r1, 0); 5814 TESTINST2("rev16 r0, r1", 0xead1fc6d, r0, r1, 0); 5815 TESTINST2("rev16 r0, r1", 0x35c98c55, r0, r1, 0); 5816 TESTINST2("rev16 r0, r1", 0x534af1eb, r0, r1, 0); 5817 TESTINST2("rev16 r0, r1", 0x45511b08, r0, r1, 0); 5818 TESTINST2("rev16 r0, r1", 0x90077f71, r0, r1, 0); 5819 TESTINST2("rev16 r0, r1", 0xde8ca84b, r0, r1, 0); 5820 TESTINST2("rev16 r0, r1", 0xe37a0dda, r0, r1, 0); 5821 TESTINST2("rev16 r0, r1", 0xe5b83d4b, r0, r1, 0); 5822 TESTINST2("rev16 r0, r1", 0xbb6d14ec, r0, r1, 0); 5823 TESTINST2("rev16 r0, r1", 0x68983cc9, r0, r1, 0); 5824 5825 printf("(T2) REV16 Rd, Rm ------------\n"); 5826 TESTINST2("rev16 r8, r9", 0x00000000, r8, r9, 0); 5827 TESTINST2("rev16 r8, r9", 0xFFFFFFFF, r8, r9, 0); 5828 TESTINST2("rev16 r8, r9", 0x80000000, r8, r9, 0); 5829 TESTINST2("rev16 r8, r9", 0x00000001, r8, r9, 0); 5830 TESTINST2("rev16 r8, r9", 0x31415927, r8, r9, 0); 5831 TESTINST2("rev16 r8, r9", 0x14141562, r8, r9, 0); 5832 TESTINST2("rev16 r8, r9", 0xabe8391f, r8, r9, 0); 5833 TESTINST2("rev16 r8, r9", 0x9028aa80, r8, r9, 0); 5834 TESTINST2("rev16 r8, r9", 0xead1fc6d, r8, r9, 0); 5835 TESTINST2("rev16 r8, r9", 0x35c98c55, r8, r9, 0); 5836 TESTINST2("rev16 r8, r9", 0x534af1eb, r8, r9, 0); 5837 TESTINST2("rev16 r8, r9", 0x45511b08, r8, r9, 0); 5838 TESTINST2("rev16 r8, r9", 0x90077f71, r8, r9, 0); 5839 TESTINST2("rev16 r8, r9", 0xde8ca84b, r8, r9, 0); 5840 TESTINST2("rev16 r8, r9", 0xe37a0dda, r8, r9, 0); 5841 TESTINST2("rev16 r8, r9", 0xe5b83d4b, r8, r9, 0); 5842 TESTINST2("rev16 r8, r9", 0xbb6d14ec, r8, r9, 0); 5843 TESTINST2("rev16 r8, r9", 0x68983cc9, r8, r9, 0); 5844 5845 printf("------------ NOP (begin) ------------\n"); 5846 printf("nop\n"); 5847 __asm__ __volatile__("nop" ::: "memory","cc"); 5848 printf("nop.w\n"); 5849 __asm__ __volatile__("nop.w" ::: "memory","cc"); 5850 printf("------------ NOP (end) ------------\n"); 5851 5852 // plus whatever stuff we can throw in from the old ARM test program 5853 old_main(); 5854 5855 return 0; 5856 } 5857