1 2 /* How to compile: 3 gcc -g -Wall -mcpu=cortex-a8 -o v6mediaA -marm none/tests/arm/v6media.c 4 or 5 gcc -g -Wall -mcpu=cortex-a8 -o v6mediaT -mthumb none/tests/arm/v6media.c 6 */ 7 8 #include <stdio.h> 9 10 static int gen_cin(cin) 11 { 12 int r = ((cin & 1) ? (1<<29) : 0); 13 //r |= (1 << 31) | (1 << 30); 14 return r; 15 } 16 17 /* test macros to generate and output the result of a single instruction */ 18 #define TESTINST2(instruction, RMval, RD, RM, carryin) \ 19 { \ 20 unsigned int out; \ 21 unsigned int cpsr; \ 22 \ 23 __asm__ volatile( \ 24 "msr cpsr_fs, %3;" \ 25 "mov " #RM ",%2;" \ 26 /* set #RD to 0x55555555 so we can see which parts get overwritten */ \ 27 "mov " #RD ", #0x55" "\n\t" \ 28 "orr " #RD "," #RD "," #RD ", LSL #8" "\n\t" \ 29 "orr " #RD "," #RD "," #RD ", LSL #16" "\n\t" \ 30 instruction ";" \ 31 "mov %0," #RD ";" \ 32 "mrs %1,cpsr;" \ 33 : "=&r" (out), "=&r" (cpsr) \ 34 : "r" (RMval), "r" (gen_cin(carryin)) \ 35 : #RD, #RM, "cc", "memory" \ 36 ); \ 37 printf("%s :: rd 0x%08x rm 0x%08x, carryin %d, cpsr 0x%08x %c%c%c%c%c ge[3:0]=%d%d%d%d\n", \ 38 instruction, out, RMval, \ 39 carryin ? 1 : 0, \ 40 cpsr & 0xffff0000, \ 41 ((1<<31) & cpsr) ? 'N' : ' ', \ 42 ((1<<30) & cpsr) ? 'Z' : ' ', \ 43 ((1<<29) & cpsr) ? 'C' : ' ', \ 44 ((1<<28) & cpsr) ? 'V' : ' ', \ 45 ((1<<27) & cpsr) ? 'Q' : ' ', \ 46 (cpsr >> 19) & 1, (cpsr >> 18) & 1, (cpsr >> 17) & 1, (cpsr >> 16) & 1 \ 47 ); \ 48 } 49 50 #define TESTINST3(instruction, RMval, RNval, RD, RM, RN, carryin) \ 51 { \ 52 unsigned int out; \ 53 unsigned int cpsr; \ 54 \ 55 __asm__ volatile( \ 56 "msr cpsr_fs, %4;" \ 57 "mov " #RM ",%2;" \ 58 "mov " #RN ",%3;" \ 59 instruction ";" \ 60 "mov %0," #RD ";" \ 61 "mrs %1,cpsr;" \ 62 : "=&r" (out), "=&r" (cpsr) \ 63 : "r" (RMval), "r" (RNval), "r" (gen_cin(carryin)) \ 64 : #RD, #RM, #RN, "cc", "memory" \ 65 ); \ 66 printf("%s :: rd 0x%08x rm 0x%08x, rn 0x%08x, carryin %d, cpsr 0x%08x %c%c%c%c%c ge[3:0]=%d%d%d%d\n", \ 67 instruction, out, RMval, RNval, \ 68 carryin ? 1 : 0, \ 69 cpsr & 0xffff0000, \ 70 ((1<<31) & cpsr) ? 'N' : ' ', \ 71 ((1<<30) & cpsr) ? 'Z' : ' ', \ 72 ((1<<29) & cpsr) ? 'C' : ' ', \ 73 ((1<<28) & cpsr) ? 'V' : ' ', \ 74 ((1<<27) & cpsr) ? 'Q' : ' ', \ 75 (cpsr >> 19) & 1, (cpsr >> 18) & 1, (cpsr >> 17) & 1, (cpsr >> 16) & 1 \ 76 ); \ 77 } 78 79 #define TESTINST4(instruction, RMval, RNval, RSval, RD, RM, RN, RS, carryin) \ 80 { \ 81 unsigned int out; \ 82 unsigned int cpsr; \ 83 \ 84 __asm__ volatile( \ 85 "msr cpsr_fs, %5;" \ 86 "mov " #RM ",%2;" \ 87 "mov " #RN ",%3;" \ 88 "mov " #RS ",%4;" \ 89 instruction ";" \ 90 "mov %0," #RD ";" \ 91 "mrs %1,cpsr;" \ 92 : "=&r" (out), "=&r" (cpsr) \ 93 : "r" (RMval), "r" (RNval), "r" (RSval), "r" (gen_cin(carryin)) \ 94 : #RD, #RM, #RN, #RS, "cc", "memory" \ 95 ); \ 96 printf("%s :: rd 0x%08x rm 0x%08x, rn 0x%08x rs 0x%08x, carryin %d, cpsr 0x%08x %c%c%c%c%c ge[3:0]=%d%d%d%d\n", \ 97 instruction, out, RMval, RNval, RSval, \ 98 carryin ? 1 : 0, \ 99 cpsr & 0xffff0000, \ 100 ((1<<31) & cpsr) ? 'N' : ' ', \ 101 ((1<<30) & cpsr) ? 'Z' : ' ', \ 102 ((1<<29) & cpsr) ? 'C' : ' ', \ 103 ((1<<28) & cpsr) ? 'V' : ' ', \ 104 ((1<<27) & cpsr) ? 'Q' : ' ', \ 105 (cpsr >> 19) & 1, (cpsr >> 18) & 1, (cpsr >> 17) & 1, (cpsr >> 16) & 1 \ 106 ); \ 107 } 108 109 #define TESTINST4_2OUT(instruction, RDval, RD2val, RMval, RSval, RD, RD2, RM, RS, carryin) \ 110 { \ 111 unsigned int out; \ 112 unsigned int out2; \ 113 unsigned int cpsr; \ 114 \ 115 __asm__ volatile( \ 116 "msr cpsr_fs, %7;" \ 117 "mov " #RD ",%3;" \ 118 "mov " #RD2 ",%4;" \ 119 "mov " #RM ",%5;" \ 120 "mov " #RS ",%6;" \ 121 instruction ";" \ 122 "mov %0," #RD ";" \ 123 "mov %1," #RD2 ";" \ 124 "mrs %2,cpsr;" \ 125 : "=&r" (out), "=&r" (out2), "=&r" (cpsr) \ 126 : "r" (RDval), "r" (RD2val), "r" (RMval), "r" (RSval), "r" (gen_cin(carryin)) \ 127 : #RD, #RD2, #RM, #RS, "cc", "memory" \ 128 ); \ 129 printf("%s :: rd 0x%08x rd2 0x%08x, rm 0x%08x rs 0x%08x, carryin %d, cpsr 0x%08x %c%c%c%c%c ge[3:0]=%d%d%d%d\n", \ 130 instruction, out, out2, RMval, RSval, \ 131 carryin ? 1 : 0, \ 132 cpsr & 0xffff0000, \ 133 ((1<<31) & cpsr) ? 'N' : ' ', \ 134 ((1<<30) & cpsr) ? 'Z' : ' ', \ 135 ((1<<29) & cpsr) ? 'C' : ' ', \ 136 ((1<<28) & cpsr) ? 'V' : ' ', \ 137 ((1<<27) & cpsr) ? 'Q' : ' ', \ 138 (cpsr >> 19) & 1, (cpsr >> 18) & 1, (cpsr >> 17) & 1, (cpsr >> 16) & 1 \ 139 ); \ 140 } 141 142 /* helpers */ 143 #define TESTCARRY { int c = 0; for (c = 0; c < 2; c++) { 144 #define TESTCARRYEND }} 145 146 147 148 149 int main(int argc, char **argv) 150 { 151 printf("MUL\n"); 152 TESTINST3("mul r0, r1, r2", 0, 0, r0, r1, r2, 0); 153 TESTINST3("mul r0, r1, r2", 0xffffffff, 0, r0, r1, r2, 0); 154 TESTINST3("mul r0, r1, r2", 0, 0xffffffff, r0, r1, r2, 0); 155 TESTINST3("mul r0, r1, r2", 0xffffffff, 0xffffffff, r0, r1, r2, 0); 156 TESTINST3("mul r0, r1, r2", 0x7fffffff, 0x7fffffff, r0, r1, r2, 0); 157 TESTINST3("mul r0, r1, r2", 0x0000ffff, 0x0000ffff, r0, r1, r2, 0); 158 159 #if 0 160 printf("MULS\n"); 161 TESTINST3("muls r0, r1, r2", 0, 0, r0, r1, r2, 0); 162 TESTINST3("muls r0, r1, r2", 0xffffffff, 0, r0, r1, r2, 0); 163 TESTINST3("muls r0, r1, r2", 0, 0xffffffff, r0, r1, r2, 0); 164 TESTINST3("muls r0, r1, r2", 0xffffffff, 0xffffffff, r0, r1, r2, 0); 165 TESTINST3("muls r0, r1, r2", 0x7fffffff, 0x7fffffff, r0, r1, r2, 0); 166 TESTINST3("muls r0, r1, r2", 0x0000ffff, 0x0000ffff, r0, r1, r2, 0); 167 #endif 168 169 printf("MLA\n"); 170 TESTINST4("mla r0, r1, r2, r3", 0, 0, 1, r0, r1, r2, r3, 0); 171 TESTINST4("mla r0, r1, r2, r3", 0xffffffff, 0, 1, r0, r1, r2, r3, 0); 172 TESTINST4("mla r0, r1, r2, r3", 0, 0xffffffff, 1, r0, r1, r2, r3, 0); 173 TESTINST4("mla r0, r1, r2, r3", 0xffffffff, 0xffffffff, 1, r0, r1, r2, r3, 0); 174 TESTINST4("mla r0, r1, r2, r3", 0x7fffffff, 0x7fffffff, 1, r0, r1, r2, r3, 0); 175 TESTINST4("mla r0, r1, r2, r3", 0x0000ffff, 0x0000ffff, 1, r0, r1, r2, r3, 0); 176 177 #if 0 178 printf("MLAS\n"); 179 TESTINST4("mlas r0, r1, r2, r3", 0, 0, 1, r0, r1, r2, r3, 0); 180 TESTINST4("mlas r0, r1, r2, r3", 0xffffffff, 0, 1, r0, r1, r2, r3, 0); 181 TESTINST4("mlas r0, r1, r2, r3", 0, 0xffffffff, 1, r0, r1, r2, r3, 0); 182 TESTINST4("mlas r0, r1, r2, r3", 0xffffffff, 0xffffffff, 1, r0, r1, r2, r3, 0); 183 TESTINST4("mlas r0, r1, r2, r3", 0x7fffffff, 0x7fffffff, 1, r0, r1, r2, r3, 0); 184 TESTINST4("mlas r0, r1, r2, r3", 0x0000ffff, 0x0000ffff, 1, r0, r1, r2, r3, 0); 185 #endif 186 187 printf("MLS\n"); 188 TESTINST4("mls r0, r1, r2, r3", 0, 0, 1, r0, r1, r2, r3, 0); 189 TESTINST4("mls r0, r1, r2, r3", 0xffffffff, 0, 1, r0, r1, r2, r3, 0); 190 TESTINST4("mls r0, r1, r2, r3", 0, 0xffffffff, 1, r0, r1, r2, r3, 0); 191 TESTINST4("mls r0, r1, r2, r3", 0xffffffff, 0xffffffff, 1, r0, r1, r2, r3, 0); 192 TESTINST4("mls r0, r1, r2, r3", 0x7fffffff, 0x7fffffff, 1, r0, r1, r2, r3, 0); 193 TESTINST4("mls r0, r1, r2, r3", 0x0000ffff, 0x0000ffff, 1, r0, r1, r2, r3, 0); 194 195 printf("UMULL\n"); 196 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 197 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 198 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 199 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 200 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 201 TESTINST4_2OUT("umull r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 202 #if 0 203 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 204 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 205 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 206 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 207 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 208 TESTINST4_2OUT("umulls r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 209 #endif 210 printf("SMULL\n"); 211 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 212 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 213 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 214 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 215 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 216 TESTINST4_2OUT("smull r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 217 #if 0 218 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 219 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 220 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 221 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 222 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 223 TESTINST4_2OUT("smulls r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 224 #endif 225 226 printf("UMLAL\n"); 227 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 228 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 1, 0, 0, r0, r1, r2, r3, 0); 229 TESTINST4_2OUT("umlal r0, r1, r2, r3", 1, 1, 0, 0, r0, r1, r2, r3, 0); 230 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0xffffffff, 1, 1, r0, r1, r2, r3, 0); 231 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 232 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 233 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 234 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 235 TESTINST4_2OUT("umlal r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 236 #if 0 237 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 238 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 1, 0, 0, r0, r1, r2, r3, 0); 239 TESTINST4_2OUT("umlals r0, r1, r2, r3", 1, 1, 0, 0, r0, r1, r2, r3, 0); 240 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0xffffffff, 1, 1, r0, r1, r2, r3, 0); 241 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 242 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 243 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 244 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 245 TESTINST4_2OUT("umlals r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 246 #endif 247 248 printf("SMLAL\n"); 249 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 250 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 1, 0, 0, r0, r1, r2, r3, 0); 251 TESTINST4_2OUT("smlal r0, r1, r2, r3", 1, 1, 0, 0, r0, r1, r2, r3, 0); 252 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0xffffffff, 1, 1, r0, r1, r2, r3, 0); 253 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 254 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 255 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 256 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 257 TESTINST4_2OUT("smlal r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 258 #if 0 259 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 0, 0, r0, r1, r2, r3, 0); 260 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 1, 0, 0, r0, r1, r2, r3, 0); 261 TESTINST4_2OUT("smlals r0, r1, r2, r3", 1, 1, 0, 0, r0, r1, r2, r3, 0); 262 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0xffffffff, 1, 1, r0, r1, r2, r3, 0); 263 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 0, 1, r0, r1, r2, r3, 0); 264 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 1, 0, r0, r1, r2, r3, 0); 265 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 1, 1, r0, r1, r2, r3, 0); 266 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 0xffff, 0xffff, r0, r1, r2, r3, 0); 267 TESTINST4_2OUT("smlals r0, r1, r2, r3", 0, 0, 0xffffffff, 0xffffffff, r0, r1, r2, r3, 0); 268 #endif 269 270 printf("CLZ\n"); 271 TESTCARRY 272 TESTINST2("clz r0, r1", 0, r0, r1, c); 273 TESTINST2("clz r0, r1", 1, r0, r1, c); 274 TESTINST2("clz r0, r1", 0x10, r0, r1, c); 275 TESTINST2("clz r0, r1", 0xffffffff, r0, r1, c); 276 TESTCARRYEND 277 278 printf("extend instructions\n"); 279 TESTINST2("uxtb r0, r1", 0, r0, r1, 0); 280 TESTINST2("uxtb r0, r1", 1, r0, r1, 0); 281 TESTINST2("uxtb r0, r1", 0xff, r0, r1, 0); 282 TESTINST2("uxtb r0, r1", 0xffffffff, r0, r1, 0); 283 TESTINST2("sxtb r0, r1", 0, r0, r1, 0); 284 TESTINST2("sxtb r0, r1", 1, r0, r1, 0); 285 TESTINST2("sxtb r0, r1", 0xff, r0, r1, 0); 286 TESTINST2("sxtb r0, r1", 0xffffffff, r0, r1, 0); 287 288 TESTINST2("uxth r0, r1", 0, r0, r1, 0); 289 TESTINST2("uxth r0, r1", 1, r0, r1, 0); 290 TESTINST2("uxth r0, r1", 0xffff, r0, r1, 0); 291 TESTINST2("uxth r0, r1", 0xffffffff, r0, r1, 0); 292 TESTINST2("sxth r0, r1", 0, r0, r1, 0); 293 TESTINST2("sxth r0, r1", 1, r0, r1, 0); 294 TESTINST2("sxth r0, r1", 0x7fff, r0, r1, 0); 295 TESTINST2("sxth r0, r1", 0xffff, r0, r1, 0); 296 TESTINST2("sxth r0, r1", 0x10ffff, r0, r1, 0); 297 TESTINST2("sxth r0, r1", 0x107fff, r0, r1, 0); 298 TESTINST2("sxth r0, r1", 0xffffffff, r0, r1, 0); 299 300 TESTINST2("uxtb r0, r1, ror #0", 0x000000ff, r0, r1, 0); 301 TESTINST2("uxtb r0, r1, ror #8", 0x000000ff, r0, r1, 0); 302 TESTINST2("uxtb r0, r1, ror #8", 0x0000ff00, r0, r1, 0); 303 TESTINST2("uxtb r0, r1, ror #16", 0x00ff0000, r0, r1, 0); 304 TESTINST2("uxtb r0, r1, ror #24", 0xff000000, r0, r1, 0); 305 306 TESTINST2("uxtb16 r0, r1", 0xffffffff, r0, r1, 0); 307 TESTINST2("uxtb16 r0, r1, ror #16", 0x0000ffff, r0, r1, 0); 308 TESTINST2("sxtb16 r0, r1", 0xffffffff, r0, r1, 0); 309 TESTINST2("sxtb16 r0, r1", 0x00ff00ff, r0, r1, 0); 310 TESTINST2("sxtb16 r0, r1", 0x007f007f, r0, r1, 0); 311 312 printf("------------ BFI ------------\n"); 313 /* bfi rDst, rSrc, #lsb-in-dst, #number-of-bits-to-copy */ 314 TESTINST2("bfi r0, r1, #0, #11", 0xAAAAAAAA, r0, r1, 0); 315 TESTINST2("bfi r0, r1, #1, #11", 0xAAAAAAAA, r0, r1, 0); 316 TESTINST2("bfi r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0); 317 318 TESTINST2("bfi r0, r1, #19, #11", 0xFFFFFFFF, r0, r1, 0); 319 TESTINST2("bfi r0, r1, #20, #11", 0xFFFFFFFF, r0, r1, 0); 320 TESTINST2("bfi r0, r1, #21, #11", 0xFFFFFFFF, r0, r1, 0); 321 322 TESTINST2("bfi r0, r1, #0, #32", 0xFFFFFFFF, r0, r1, 0); 323 TESTINST2("bfi r0, r1, #1, #31", 0xFFFFFFFF, r0, r1, 0); 324 325 TESTINST2("bfi r0, r1, #29, #3", 0xFFFFFFFF, r0, r1, 0); 326 TESTINST2("bfi r0, r1, #30, #2", 0xFFFFFFFF, r0, r1, 0); 327 TESTINST2("bfi r0, r1, #31, #1", 0xFFFFFFFF, r0, r1, 0); 328 329 printf("------------ BFC ------------\n"); 330 /* bfi rDst, #lsb-in-dst, #number-of-bits-to-copy */ 331 TESTINST2("bfc r0, #0, #11", 0xAAAAAAAA, r0, r1, 0); 332 TESTINST2("bfc r0, #1, #11", 0xAAAAAAAA, r0, r1, 0); 333 TESTINST2("bfc r0, #2, #11", 0xAAAAAAAA, r0, r1, 0); 334 335 TESTINST2("bfc r0, #19, #11", 0xFFFFFFFF, r0, r1, 0); 336 TESTINST2("bfc r0, #20, #11", 0xFFFFFFFF, r0, r1, 0); 337 TESTINST2("bfc r0, #21, #11", 0xFFFFFFFF, r0, r1, 0); 338 339 TESTINST2("bfc r0, #0, #32", 0xFFFFFFFF, r0, r1, 0); 340 TESTINST2("bfc r0, #1, #31", 0xFFFFFFFF, r0, r1, 0); 341 342 TESTINST2("bfc r0, #29, #3", 0xFFFFFFFF, r0, r1, 0); 343 TESTINST2("bfc r0, #30, #2", 0xFFFFFFFF, r0, r1, 0); 344 TESTINST2("bfc r0, #31, #1", 0xFFFFFFFF, r0, r1, 0); 345 346 printf("------------ SBFX ------------\n"); 347 /* sbfx rDst, rSrc, #lsb, #width */ 348 TESTINST2("sbfx r0, r1, #0, #1", 0x00000000, r0, r1, 0); 349 TESTINST2("sbfx r0, r1, #0, #1", 0x00000001, r0, r1, 0); 350 TESTINST2("sbfx r0, r1, #1, #1", 0x00000000, r0, r1, 0); 351 TESTINST2("sbfx r0, r1, #1, #1", 0x00000001, r0, r1, 0); 352 TESTINST2("sbfx r0, r1, #1, #1", 0x00000002, r0, r1, 0); 353 TESTINST2("sbfx r0, r1, #1, #1", 0x00000003, r0, r1, 0); 354 355 TESTINST2("sbfx r0, r1, #0, #2", 0x00000000, r0, r1, 0); 356 TESTINST2("sbfx r0, r1, #0, #2", 0x00000001, r0, r1, 0); 357 TESTINST2("sbfx r0, r1, #1, #2", 0x00000000, r0, r1, 0); 358 TESTINST2("sbfx r0, r1, #1, #2", 0x00000001, r0, r1, 0); 359 TESTINST2("sbfx r0, r1, #1, #2", 0x00000002, r0, r1, 0); 360 TESTINST2("sbfx r0, r1, #1, #2", 0x00000003, r0, r1, 0); 361 362 TESTINST2("sbfx r0, r1, #0, #11", 0xAAAAAAAA, r0, r1, 0); 363 TESTINST2("sbfx r0, r1, #1, #11", 0xAAAAAAAA, r0, r1, 0); 364 TESTINST2("sbfx r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0); 365 TESTINST2("sbfx r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0); 366 TESTINST2("sbfx r0, r1, #31, #1", 0xAAAAAAAA, r0, r1, 0); 367 TESTINST2("sbfx r0, r1, #30, #2", 0xAAAAAAAA, r0, r1, 0); 368 369 printf("------------ UBFX ------------\n"); 370 /* ubfx rDst, rSrc, #lsb, #width */ 371 TESTINST2("ubfx r0, r1, #0, #1", 0x00000000, r0, r1, 0); 372 TESTINST2("ubfx r0, r1, #0, #1", 0x00000001, r0, r1, 0); 373 TESTINST2("ubfx r0, r1, #1, #1", 0x00000000, r0, r1, 0); 374 TESTINST2("ubfx r0, r1, #1, #1", 0x00000001, r0, r1, 0); 375 TESTINST2("ubfx r0, r1, #1, #1", 0x00000002, r0, r1, 0); 376 TESTINST2("ubfx r0, r1, #1, #1", 0x00000003, r0, r1, 0); 377 378 TESTINST2("ubfx r0, r1, #0, #2", 0x00000000, r0, r1, 0); 379 TESTINST2("ubfx r0, r1, #0, #2", 0x00000001, r0, r1, 0); 380 TESTINST2("ubfx r0, r1, #1, #2", 0x00000000, r0, r1, 0); 381 TESTINST2("ubfx r0, r1, #1, #2", 0x00000001, r0, r1, 0); 382 TESTINST2("ubfx r0, r1, #1, #2", 0x00000002, r0, r1, 0); 383 TESTINST2("ubfx r0, r1, #1, #2", 0x00000003, r0, r1, 0); 384 385 TESTINST2("ubfx r0, r1, #0, #11", 0xAAAAAAAA, r0, r1, 0); 386 TESTINST2("ubfx r0, r1, #1, #11", 0xAAAAAAAA, r0, r1, 0); 387 TESTINST2("ubfx r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0); 388 TESTINST2("ubfx r0, r1, #2, #11", 0xAAAAAAAA, r0, r1, 0); 389 TESTINST2("ubfx r0, r1, #31, #1", 0xAAAAAAAA, r0, r1, 0); 390 TESTINST2("ubfx r0, r1, #30, #2", 0xAAAAAAAA, r0, r1, 0); 391 392 printf("------------ SMUL{B,T}{B,T} ------------\n"); 393 /* SMULbb rD, rN, rM */ 394 TESTINST3("smulbb r0, r1, r2", 0x00030000, 0x00040000, r0, r1, r2, 0); 395 TESTINST3("smulbb r0, r1, r2", 0x00030001, 0x00040002, r0, r1, r2, 0); 396 TESTINST3("smulbb r0, r1, r2", 0x00038001, 0x00047fff, r0, r1, r2, 0); 397 TESTINST3("smulbb r0, r1, r2", 0x00037fff, 0x00047fff, r0, r1, r2, 0); 398 TESTINST3("smulbb r0, r1, r2", 0x0003ffff, 0x0004ffff, r0, r1, r2, 0); 399 TESTINST3("smulbb r0, r1, r2", 0x2575feb2, 0xd2c4287c, r0, r1, r2, 0); 400 TESTINST3("smulbb r0, r1, r2", 0xfb412431, 0x4b90362d, r0, r1, r2, 0); 401 TESTINST3("smulbb r0, r1, r2", 0x004dfbe5, 0xe87927cc, r0, r1, r2, 0); 402 TESTINST3("smulbb r0, r1, r2", 0xf6a3fa3c, 0x083b3571, r0, r1, r2, 0); 403 TESTINST3("smulbb r0, r1, r2", 0xbf17fb9a, 0xb9743941, r0, r1, r2, 0); 404 TESTINST3("smulbb r0, r1, r2", 0x2c0bd024, 0xbce5f924, r0, r1, r2, 0); 405 TESTINST3("smulbb r0, r1, r2", 0x3e976e2e, 0xcc3c201c, r0, r1, r2, 0); 406 TESTINST3("smulbb r0, r1, r2", 0xb4bfb365, 0x1ebaf88e, r0, r1, r2, 0); 407 TESTINST3("smulbb r0, r1, r2", 0x288593c0, 0x722d5e20, r0, r1, r2, 0); 408 TESTINST3("smulbb r0, r1, r2", 0x4d7ff5b4, 0xa1d6f791, r0, r1, r2, 0); 409 TESTINST3("smulbb r0, r1, r2", 0x4557be13, 0x7b11bee7, r0, r1, r2, 0); 410 TESTINST3("smulbb r0, r1, r2", 0xadcf5772, 0xa5631488, r0, r1, r2, 0); 411 TESTINST3("smulbb r0, r1, r2", 0x989a7235, 0xb10bcc65, r0, r1, r2, 0); 412 TESTINST3("smulbb r0, r1, r2", 0x4d6f393a, 0x73f39fca, r0, r1, r2, 0); 413 TESTINST3("smulbb r0, r1, r2", 0x24a3291e, 0x5648e540, r0, r1, r2, 0); 414 TESTINST3("smulbb r0, r1, r2", 0xdd91eebf, 0xc54f79e6, r0, r1, r2, 0); 415 TESTINST3("smulbb r0, r1, r2", 0xf7ce2ec6, 0x5fc92974, r0, r1, r2, 0); 416 TESTINST3("smulbb r0, r1, r2", 0xbc1083e8, 0x7e08184e, r0, r1, r2, 0); 417 TESTINST3("smulbb r0, r1, r2", 0xa617cc31, 0x71c8315f, r0, r1, r2, 0); 418 TESTINST3("smulbb r0, r1, r2", 0xdfe1e8f0, 0x9493110e, r0, r1, r2, 0); 419 TESTINST3("smulbb r0, r1, r2", 0x6ef49020, 0xba8a7e0d, r0, r1, r2, 0); 420 TESTINST3("smulbb r0, r1, r2", 0x3dc4e36b, 0x21568e39, r0, r1, r2, 0); 421 TESTINST3("smulbb r0, r1, r2", 0x52db4a9d, 0x55fcc8cf, r0, r1, r2, 0); 422 TESTINST3("smulbb r0, r1, r2", 0x3564c76c, 0x14434a2a, r0, r1, r2, 0); 423 TESTINST3("smulbb r0, r1, r2", 0x27836b0c, 0x3c855ca8, r0, r1, r2, 0); 424 TESTINST3("smulbb r0, r1, r2", 0x62ff7c30, 0x30ece28e, r0, r1, r2, 0); 425 TESTINST3("smulbb r0, r1, r2", 0x40955fdf, 0x057b562c, r0, r1, r2, 0); 426 TESTINST3("smulbb r0, r1, r2", 0x3b34c270, 0x27e1475b, r0, r1, r2, 0); 427 TESTINST3("smulbb r0, r1, r2", 0x7fdcda96, 0xd05893a7, r0, r1, r2, 0); 428 TESTINST3("smulbb r0, r1, r2", 0xb6ab141d, 0x2dc43624, r0, r1, r2, 0); 429 TESTINST3("smulbb r0, r1, r2", 0x403d53cb, 0x5328d58c, r0, r1, r2, 0); 430 TESTINST3("smulbb r0, r1, r2", 0x21ef1aef, 0x87488a4a, r0, r1, r2, 0); 431 TESTINST3("smulbb r0, r1, r2", 0x31458a23, 0xbb246228, r0, r1, r2, 0); 432 TESTINST3("smulbb r0, r1, r2", 0x848af791, 0x339d8d88, r0, r1, r2, 0); 433 TESTINST3("smulbb r0, r1, r2", 0xda3bacdc, 0x70974249, r0, r1, r2, 0); 434 TESTINST3("smulbb r0, r1, r2", 0x649d5cbd, 0x8a8d4e7d, r0, r1, r2, 0); 435 TESTINST3("smulbb r0, r1, r2", 0xc0c8c881, 0xeb1b4335, r0, r1, r2, 0); 436 TESTINST3("smulbb r0, r1, r2", 0x7dd81a20, 0x0cd6b508, r0, r1, r2, 0); 437 TESTINST3("smulbb r0, r1, r2", 0x6892886c, 0x6731e282, r0, r1, r2, 0); 438 TESTINST3("smulbb r0, r1, r2", 0x112dcffc, 0xb6edf28f, r0, r1, r2, 0); 439 TESTINST3("smulbb r0, r1, r2", 0xabfabbe6, 0x4b4ec9ca, r0, r1, r2, 0); 440 TESTINST3("smulbb r0, r1, r2", 0xe52aabf8, 0xc1037fa4, r0, r1, r2, 0); 441 TESTINST3("smulbb r0, r1, r2", 0xf2f4df1f, 0xcb4ab48f, r0, r1, r2, 0); 442 TESTINST3("smulbb r0, r1, r2", 0x435f909a, 0xaf8f7e18, r0, r1, r2, 0); 443 TESTINST3("smulbb r0, r1, r2", 0x2106ba5f, 0x87df4510, r0, r1, r2, 0); 444 TESTINST3("smulbb r0, r1, r2", 0x246a6376, 0xabf4e8e1, r0, r1, r2, 0); 445 TESTINST3("smulbb r0, r1, r2", 0x1046a1a3, 0xf4c0eeac, r0, r1, r2, 0); 446 TESTINST3("smulbb r0, r1, r2", 0x638ca515, 0x006a54f2, r0, r1, r2, 0); 447 TESTINST3("smulbb r0, r1, r2", 0xf63e7a9d, 0x79f74493, r0, r1, r2, 0); 448 TESTINST3("smulbb r0, r1, r2", 0xbd6845cd, 0x9c09e313, r0, r1, r2, 0); 449 /* SMULtt rD, rN, rM */ 450 TESTINST3("smultt r0, r1, r2", 0x00000003, 0x00000004, r0, r1, r2, 0); 451 TESTINST3("smultt r0, r1, r2", 0x00010003, 0x00020004, r0, r1, r2, 0); 452 TESTINST3("smultt r0, r1, r2", 0x80010003, 0x7fff0004, r0, r1, r2, 0); 453 TESTINST3("smultt r0, r1, r2", 0x7fff0003, 0x7fff0004, r0, r1, r2, 0); 454 TESTINST3("smultt r0, r1, r2", 0xffff0003, 0xffff0004, r0, r1, r2, 0); 455 TESTINST3("smultt r0, r1, r2", 0x2575feb2, 0xd2c4287c, r0, r1, r2, 0); 456 TESTINST3("smultt r0, r1, r2", 0xfb412431, 0x4b90362d, r0, r1, r2, 0); 457 TESTINST3("smultt r0, r1, r2", 0x004dfbe5, 0xe87927cc, r0, r1, r2, 0); 458 TESTINST3("smultt r0, r1, r2", 0xf6a3fa3c, 0x083b3571, r0, r1, r2, 0); 459 TESTINST3("smultt r0, r1, r2", 0xbf17fb9a, 0xb9743941, r0, r1, r2, 0); 460 TESTINST3("smultt r0, r1, r2", 0x2c0bd024, 0xbce5f924, r0, r1, r2, 0); 461 TESTINST3("smultt r0, r1, r2", 0x3e976e2e, 0xcc3c201c, r0, r1, r2, 0); 462 TESTINST3("smultt r0, r1, r2", 0xb4bfb365, 0x1ebaf88e, r0, r1, r2, 0); 463 TESTINST3("smultt r0, r1, r2", 0x288593c0, 0x722d5e20, r0, r1, r2, 0); 464 TESTINST3("smultt r0, r1, r2", 0x4d7ff5b4, 0xa1d6f791, r0, r1, r2, 0); 465 TESTINST3("smultt r0, r1, r2", 0x4557be13, 0x7b11bee7, r0, r1, r2, 0); 466 TESTINST3("smultt r0, r1, r2", 0xadcf5772, 0xa5631488, r0, r1, r2, 0); 467 TESTINST3("smultt r0, r1, r2", 0x989a7235, 0xb10bcc65, r0, r1, r2, 0); 468 TESTINST3("smultt r0, r1, r2", 0x4d6f393a, 0x73f39fca, r0, r1, r2, 0); 469 TESTINST3("smultt r0, r1, r2", 0x24a3291e, 0x5648e540, r0, r1, r2, 0); 470 TESTINST3("smultt r0, r1, r2", 0xdd91eebf, 0xc54f79e6, r0, r1, r2, 0); 471 TESTINST3("smultt r0, r1, r2", 0xf7ce2ec6, 0x5fc92974, r0, r1, r2, 0); 472 TESTINST3("smultt r0, r1, r2", 0xbc1083e8, 0x7e08184e, r0, r1, r2, 0); 473 TESTINST3("smultt r0, r1, r2", 0xa617cc31, 0x71c8315f, r0, r1, r2, 0); 474 TESTINST3("smultt r0, r1, r2", 0xdfe1e8f0, 0x9493110e, r0, r1, r2, 0); 475 TESTINST3("smultt r0, r1, r2", 0x6ef49020, 0xba8a7e0d, r0, r1, r2, 0); 476 TESTINST3("smultt r0, r1, r2", 0x3dc4e36b, 0x21568e39, r0, r1, r2, 0); 477 TESTINST3("smultt r0, r1, r2", 0x52db4a9d, 0x55fcc8cf, r0, r1, r2, 0); 478 TESTINST3("smultt r0, r1, r2", 0x3564c76c, 0x14434a2a, r0, r1, r2, 0); 479 TESTINST3("smultt r0, r1, r2", 0x27836b0c, 0x3c855ca8, r0, r1, r2, 0); 480 TESTINST3("smultt r0, r1, r2", 0x62ff7c30, 0x30ece28e, r0, r1, r2, 0); 481 TESTINST3("smultt r0, r1, r2", 0x40955fdf, 0x057b562c, r0, r1, r2, 0); 482 TESTINST3("smultt r0, r1, r2", 0x3b34c270, 0x27e1475b, r0, r1, r2, 0); 483 TESTINST3("smultt r0, r1, r2", 0x7fdcda96, 0xd05893a7, r0, r1, r2, 0); 484 TESTINST3("smultt r0, r1, r2", 0xb6ab141d, 0x2dc43624, r0, r1, r2, 0); 485 TESTINST3("smultt r0, r1, r2", 0x403d53cb, 0x5328d58c, r0, r1, r2, 0); 486 TESTINST3("smultt r0, r1, r2", 0x21ef1aef, 0x87488a4a, r0, r1, r2, 0); 487 TESTINST3("smultt r0, r1, r2", 0x31458a23, 0xbb246228, r0, r1, r2, 0); 488 TESTINST3("smultt r0, r1, r2", 0x848af791, 0x339d8d88, r0, r1, r2, 0); 489 TESTINST3("smultt r0, r1, r2", 0xda3bacdc, 0x70974249, r0, r1, r2, 0); 490 TESTINST3("smultt r0, r1, r2", 0x649d5cbd, 0x8a8d4e7d, r0, r1, r2, 0); 491 TESTINST3("smultt r0, r1, r2", 0xc0c8c881, 0xeb1b4335, r0, r1, r2, 0); 492 TESTINST3("smultt r0, r1, r2", 0x7dd81a20, 0x0cd6b508, r0, r1, r2, 0); 493 TESTINST3("smultt r0, r1, r2", 0x6892886c, 0x6731e282, r0, r1, r2, 0); 494 TESTINST3("smultt r0, r1, r2", 0x112dcffc, 0xb6edf28f, r0, r1, r2, 0); 495 TESTINST3("smultt r0, r1, r2", 0xabfabbe6, 0x4b4ec9ca, r0, r1, r2, 0); 496 TESTINST3("smultt r0, r1, r2", 0xe52aabf8, 0xc1037fa4, r0, r1, r2, 0); 497 TESTINST3("smultt r0, r1, r2", 0xf2f4df1f, 0xcb4ab48f, r0, r1, r2, 0); 498 TESTINST3("smultt r0, r1, r2", 0x435f909a, 0xaf8f7e18, r0, r1, r2, 0); 499 TESTINST3("smultt r0, r1, r2", 0x2106ba5f, 0x87df4510, r0, r1, r2, 0); 500 TESTINST3("smultt r0, r1, r2", 0x246a6376, 0xabf4e8e1, r0, r1, r2, 0); 501 TESTINST3("smultt r0, r1, r2", 0x1046a1a3, 0xf4c0eeac, r0, r1, r2, 0); 502 TESTINST3("smultt r0, r1, r2", 0x638ca515, 0x006a54f2, r0, r1, r2, 0); 503 TESTINST3("smultt r0, r1, r2", 0xf63e7a9d, 0x79f74493, r0, r1, r2, 0); 504 TESTINST3("smultt r0, r1, r2", 0xbd6845cd, 0x9c09e313, r0, r1, r2, 0); 505 /* SMULtb rD, rN, rM */ 506 TESTINST3("smultb r0, r1, r2", 0x00000003, 0x00040000, r0, r1, r2, 0); 507 TESTINST3("smultb r0, r1, r2", 0x00010003, 0x00040002, r0, r1, r2, 0); 508 TESTINST3("smultb r0, r1, r2", 0x80010003, 0x00047fff, r0, r1, r2, 0); 509 TESTINST3("smultb r0, r1, r2", 0x7fff0003, 0x00047fff, r0, r1, r2, 0); 510 TESTINST3("smultb r0, r1, r2", 0xffff0003, 0x0004ffff, r0, r1, r2, 0); 511 TESTINST3("smultb r0, r1, r2", 0x2575feb2, 0xd2c4287c, r0, r1, r2, 0); 512 TESTINST3("smultb r0, r1, r2", 0xfb412431, 0x4b90362d, r0, r1, r2, 0); 513 TESTINST3("smultb r0, r1, r2", 0x004dfbe5, 0xe87927cc, r0, r1, r2, 0); 514 TESTINST3("smultb r0, r1, r2", 0xf6a3fa3c, 0x083b3571, r0, r1, r2, 0); 515 TESTINST3("smultb r0, r1, r2", 0xbf17fb9a, 0xb9743941, r0, r1, r2, 0); 516 TESTINST3("smultb r0, r1, r2", 0x2c0bd024, 0xbce5f924, r0, r1, r2, 0); 517 TESTINST3("smultb r0, r1, r2", 0x3e976e2e, 0xcc3c201c, r0, r1, r2, 0); 518 TESTINST3("smultb r0, r1, r2", 0xb4bfb365, 0x1ebaf88e, r0, r1, r2, 0); 519 TESTINST3("smultb r0, r1, r2", 0x288593c0, 0x722d5e20, r0, r1, r2, 0); 520 TESTINST3("smultb r0, r1, r2", 0x4d7ff5b4, 0xa1d6f791, r0, r1, r2, 0); 521 TESTINST3("smultb r0, r1, r2", 0x4557be13, 0x7b11bee7, r0, r1, r2, 0); 522 TESTINST3("smultb r0, r1, r2", 0xadcf5772, 0xa5631488, r0, r1, r2, 0); 523 TESTINST3("smultb r0, r1, r2", 0x989a7235, 0xb10bcc65, r0, r1, r2, 0); 524 TESTINST3("smultb r0, r1, r2", 0x4d6f393a, 0x73f39fca, r0, r1, r2, 0); 525 TESTINST3("smultb r0, r1, r2", 0x24a3291e, 0x5648e540, r0, r1, r2, 0); 526 TESTINST3("smultb r0, r1, r2", 0xdd91eebf, 0xc54f79e6, r0, r1, r2, 0); 527 TESTINST3("smultb r0, r1, r2", 0xf7ce2ec6, 0x5fc92974, r0, r1, r2, 0); 528 TESTINST3("smultb r0, r1, r2", 0xbc1083e8, 0x7e08184e, r0, r1, r2, 0); 529 TESTINST3("smultb r0, r1, r2", 0xa617cc31, 0x71c8315f, r0, r1, r2, 0); 530 TESTINST3("smultb r0, r1, r2", 0xdfe1e8f0, 0x9493110e, r0, r1, r2, 0); 531 TESTINST3("smultb r0, r1, r2", 0x6ef49020, 0xba8a7e0d, r0, r1, r2, 0); 532 TESTINST3("smultb r0, r1, r2", 0x3dc4e36b, 0x21568e39, r0, r1, r2, 0); 533 TESTINST3("smultb r0, r1, r2", 0x52db4a9d, 0x55fcc8cf, r0, r1, r2, 0); 534 TESTINST3("smultb r0, r1, r2", 0x3564c76c, 0x14434a2a, r0, r1, r2, 0); 535 TESTINST3("smultb r0, r1, r2", 0x27836b0c, 0x3c855ca8, r0, r1, r2, 0); 536 TESTINST3("smultb r0, r1, r2", 0x62ff7c30, 0x30ece28e, r0, r1, r2, 0); 537 TESTINST3("smultb r0, r1, r2", 0x40955fdf, 0x057b562c, r0, r1, r2, 0); 538 TESTINST3("smultb r0, r1, r2", 0x3b34c270, 0x27e1475b, r0, r1, r2, 0); 539 TESTINST3("smultb r0, r1, r2", 0x7fdcda96, 0xd05893a7, r0, r1, r2, 0); 540 TESTINST3("smultb r0, r1, r2", 0xb6ab141d, 0x2dc43624, r0, r1, r2, 0); 541 TESTINST3("smultb r0, r1, r2", 0x403d53cb, 0x5328d58c, r0, r1, r2, 0); 542 TESTINST3("smultb r0, r1, r2", 0x21ef1aef, 0x87488a4a, r0, r1, r2, 0); 543 TESTINST3("smultb r0, r1, r2", 0x31458a23, 0xbb246228, r0, r1, r2, 0); 544 TESTINST3("smultb r0, r1, r2", 0x848af791, 0x339d8d88, r0, r1, r2, 0); 545 TESTINST3("smultb r0, r1, r2", 0xda3bacdc, 0x70974249, r0, r1, r2, 0); 546 TESTINST3("smultb r0, r1, r2", 0x649d5cbd, 0x8a8d4e7d, r0, r1, r2, 0); 547 TESTINST3("smultb r0, r1, r2", 0xc0c8c881, 0xeb1b4335, r0, r1, r2, 0); 548 TESTINST3("smultb r0, r1, r2", 0x7dd81a20, 0x0cd6b508, r0, r1, r2, 0); 549 TESTINST3("smultb r0, r1, r2", 0x6892886c, 0x6731e282, r0, r1, r2, 0); 550 TESTINST3("smultb r0, r1, r2", 0x112dcffc, 0xb6edf28f, r0, r1, r2, 0); 551 TESTINST3("smultb r0, r1, r2", 0xabfabbe6, 0x4b4ec9ca, r0, r1, r2, 0); 552 TESTINST3("smultb r0, r1, r2", 0xe52aabf8, 0xc1037fa4, r0, r1, r2, 0); 553 TESTINST3("smultb r0, r1, r2", 0xf2f4df1f, 0xcb4ab48f, r0, r1, r2, 0); 554 TESTINST3("smultb r0, r1, r2", 0x435f909a, 0xaf8f7e18, r0, r1, r2, 0); 555 TESTINST3("smultb r0, r1, r2", 0x2106ba5f, 0x87df4510, r0, r1, r2, 0); 556 TESTINST3("smultb r0, r1, r2", 0x246a6376, 0xabf4e8e1, r0, r1, r2, 0); 557 TESTINST3("smultb r0, r1, r2", 0x1046a1a3, 0xf4c0eeac, r0, r1, r2, 0); 558 TESTINST3("smultb r0, r1, r2", 0x638ca515, 0x006a54f2, r0, r1, r2, 0); 559 TESTINST3("smultb r0, r1, r2", 0xf63e7a9d, 0x79f74493, r0, r1, r2, 0); 560 TESTINST3("smultb r0, r1, r2", 0xbd6845cd, 0x9c09e313, r0, r1, r2, 0); 561 /* SMULbt rD, rN, rM */ 562 TESTINST3("smulbt r0, r1, r2", 0x00030000, 0x00000004, r0, r1, r2, 0); 563 TESTINST3("smulbt r0, r1, r2", 0x00030001, 0x00020004, r0, r1, r2, 0); 564 TESTINST3("smulbt r0, r1, r2", 0x00038001, 0x7fff0004, r0, r1, r2, 0); 565 TESTINST3("smulbt r0, r1, r2", 0x00037fff, 0x7fff0004, r0, r1, r2, 0); 566 TESTINST3("smulbt r0, r1, r2", 0x0003ffff, 0xffff0004, r0, r1, r2, 0); 567 TESTINST3("smulbt r0, r1, r2", 0x2575feb2, 0xd2c4287c, r0, r1, r2, 0); 568 TESTINST3("smulbt r0, r1, r2", 0xfb412431, 0x4b90362d, r0, r1, r2, 0); 569 TESTINST3("smulbt r0, r1, r2", 0x004dfbe5, 0xe87927cc, r0, r1, r2, 0); 570 TESTINST3("smulbt r0, r1, r2", 0xf6a3fa3c, 0x083b3571, r0, r1, r2, 0); 571 TESTINST3("smulbt r0, r1, r2", 0xbf17fb9a, 0xb9743941, r0, r1, r2, 0); 572 TESTINST3("smulbt r0, r1, r2", 0x2c0bd024, 0xbce5f924, r0, r1, r2, 0); 573 TESTINST3("smulbt r0, r1, r2", 0x3e976e2e, 0xcc3c201c, r0, r1, r2, 0); 574 TESTINST3("smulbt r0, r1, r2", 0xb4bfb365, 0x1ebaf88e, r0, r1, r2, 0); 575 TESTINST3("smulbt r0, r1, r2", 0x288593c0, 0x722d5e20, r0, r1, r2, 0); 576 TESTINST3("smulbt r0, r1, r2", 0x4d7ff5b4, 0xa1d6f791, r0, r1, r2, 0); 577 TESTINST3("smulbt r0, r1, r2", 0x4557be13, 0x7b11bee7, r0, r1, r2, 0); 578 TESTINST3("smulbt r0, r1, r2", 0xadcf5772, 0xa5631488, r0, r1, r2, 0); 579 TESTINST3("smulbt r0, r1, r2", 0x989a7235, 0xb10bcc65, r0, r1, r2, 0); 580 TESTINST3("smulbt r0, r1, r2", 0x4d6f393a, 0x73f39fca, r0, r1, r2, 0); 581 TESTINST3("smulbt r0, r1, r2", 0x24a3291e, 0x5648e540, r0, r1, r2, 0); 582 TESTINST3("smulbt r0, r1, r2", 0xdd91eebf, 0xc54f79e6, r0, r1, r2, 0); 583 TESTINST3("smulbt r0, r1, r2", 0xf7ce2ec6, 0x5fc92974, r0, r1, r2, 0); 584 TESTINST3("smulbt r0, r1, r2", 0xbc1083e8, 0x7e08184e, r0, r1, r2, 0); 585 TESTINST3("smulbt r0, r1, r2", 0xa617cc31, 0x71c8315f, r0, r1, r2, 0); 586 TESTINST3("smulbt r0, r1, r2", 0xdfe1e8f0, 0x9493110e, r0, r1, r2, 0); 587 TESTINST3("smulbt r0, r1, r2", 0x6ef49020, 0xba8a7e0d, r0, r1, r2, 0); 588 TESTINST3("smulbt r0, r1, r2", 0x3dc4e36b, 0x21568e39, r0, r1, r2, 0); 589 TESTINST3("smulbt r0, r1, r2", 0x52db4a9d, 0x55fcc8cf, r0, r1, r2, 0); 590 TESTINST3("smulbt r0, r1, r2", 0x3564c76c, 0x14434a2a, r0, r1, r2, 0); 591 TESTINST3("smulbt r0, r1, r2", 0x27836b0c, 0x3c855ca8, r0, r1, r2, 0); 592 TESTINST3("smulbt r0, r1, r2", 0x62ff7c30, 0x30ece28e, r0, r1, r2, 0); 593 TESTINST3("smulbt r0, r1, r2", 0x40955fdf, 0x057b562c, r0, r1, r2, 0); 594 TESTINST3("smulbt r0, r1, r2", 0x3b34c270, 0x27e1475b, r0, r1, r2, 0); 595 TESTINST3("smulbt r0, r1, r2", 0x7fdcda96, 0xd05893a7, r0, r1, r2, 0); 596 TESTINST3("smulbt r0, r1, r2", 0xb6ab141d, 0x2dc43624, r0, r1, r2, 0); 597 TESTINST3("smulbt r0, r1, r2", 0x403d53cb, 0x5328d58c, r0, r1, r2, 0); 598 TESTINST3("smulbt r0, r1, r2", 0x21ef1aef, 0x87488a4a, r0, r1, r2, 0); 599 TESTINST3("smulbt r0, r1, r2", 0x31458a23, 0xbb246228, r0, r1, r2, 0); 600 TESTINST3("smulbt r0, r1, r2", 0x848af791, 0x339d8d88, r0, r1, r2, 0); 601 TESTINST3("smulbt r0, r1, r2", 0xda3bacdc, 0x70974249, r0, r1, r2, 0); 602 TESTINST3("smulbt r0, r1, r2", 0x649d5cbd, 0x8a8d4e7d, r0, r1, r2, 0); 603 TESTINST3("smulbt r0, r1, r2", 0xc0c8c881, 0xeb1b4335, r0, r1, r2, 0); 604 TESTINST3("smulbt r0, r1, r2", 0x7dd81a20, 0x0cd6b508, r0, r1, r2, 0); 605 TESTINST3("smulbt r0, r1, r2", 0x6892886c, 0x6731e282, r0, r1, r2, 0); 606 TESTINST3("smulbt r0, r1, r2", 0x112dcffc, 0xb6edf28f, r0, r1, r2, 0); 607 TESTINST3("smulbt r0, r1, r2", 0xabfabbe6, 0x4b4ec9ca, r0, r1, r2, 0); 608 TESTINST3("smulbt r0, r1, r2", 0xe52aabf8, 0xc1037fa4, r0, r1, r2, 0); 609 TESTINST3("smulbt r0, r1, r2", 0xf2f4df1f, 0xcb4ab48f, r0, r1, r2, 0); 610 TESTINST3("smulbt r0, r1, r2", 0x435f909a, 0xaf8f7e18, r0, r1, r2, 0); 611 TESTINST3("smulbt r0, r1, r2", 0x2106ba5f, 0x87df4510, r0, r1, r2, 0); 612 TESTINST3("smulbt r0, r1, r2", 0x246a6376, 0xabf4e8e1, r0, r1, r2, 0); 613 TESTINST3("smulbt r0, r1, r2", 0x1046a1a3, 0xf4c0eeac, r0, r1, r2, 0); 614 TESTINST3("smulbt r0, r1, r2", 0x638ca515, 0x006a54f2, r0, r1, r2, 0); 615 TESTINST3("smulbt r0, r1, r2", 0xf63e7a9d, 0x79f74493, r0, r1, r2, 0); 616 TESTINST3("smulbt r0, r1, r2", 0xbd6845cd, 0x9c09e313, r0, r1, r2, 0); 617 618 printf("-------------- SMULW{B,T} --------------\n"); 619 /* SMULWB rD, rN, rM : Rn x Rm[31..16] */ 620 TESTINST3("smulwb r0, r1, r2", 0x00000003, 0x00020004, r0, r1, r2, 0); 621 TESTINST3("smulwb r0, r1, r2", 0x00010003, 0x47ff0004, r0, r1, r2, 0); 622 TESTINST3("smulwb r0, r1, r2", 0x80010003, 0x7fff0004, r0, r1, r2, 0); 623 TESTINST3("smulwb r0, r1, r2", 0x7fff0003, 0x7fff0004, r0, r1, r2, 0); 624 TESTINST3("smulwb r0, r1, r2", 0xffff0003, 0xffff0004, r0, r1, r2, 0); 625 TESTINST3("smulwb r0, r1, r2", 0x2575feb2, 0xd2c4287c, r0, r1, r2, 0); 626 TESTINST3("smulwb r0, r1, r2", 0xfb412431, 0x4b90362d, r0, r1, r2, 0); 627 TESTINST3("smulwb r0, r1, r2", 0x004dfbe5, 0xe87927cc, r0, r1, r2, 0); 628 TESTINST3("smulwb r0, r1, r2", 0xf6a3fa3c, 0x083b3571, r0, r1, r2, 0); 629 TESTINST3("smulwb r0, r1, r2", 0xbf17fb9a, 0xb9743941, r0, r1, r2, 0); 630 TESTINST3("smulwb r0, r1, r2", 0x2c0bd024, 0xbce5f924, r0, r1, r2, 0); 631 TESTINST3("smulwb r0, r1, r2", 0x3e976e2e, 0xcc3c201c, r0, r1, r2, 0); 632 TESTINST3("smulwb r0, r1, r2", 0xb4bfb365, 0x1ebaf88e, r0, r1, r2, 0); 633 TESTINST3("smulwb r0, r1, r2", 0x288593c0, 0x722d5e20, r0, r1, r2, 0); 634 TESTINST3("smulwb r0, r1, r2", 0x4d7ff5b4, 0xa1d6f791, r0, r1, r2, 0); 635 TESTINST3("smulwb r0, r1, r2", 0x4557be13, 0x7b11bee7, r0, r1, r2, 0); 636 TESTINST3("smulwb r0, r1, r2", 0xadcf5772, 0xa5631488, r0, r1, r2, 0); 637 TESTINST3("smulwb r0, r1, r2", 0x989a7235, 0xb10bcc65, r0, r1, r2, 0); 638 TESTINST3("smulwb r0, r1, r2", 0x4d6f393a, 0x73f39fca, r0, r1, r2, 0); 639 TESTINST3("smulwb r0, r1, r2", 0x24a3291e, 0x5648e540, r0, r1, r2, 0); 640 TESTINST3("smulwb r0, r1, r2", 0xdd91eebf, 0xc54f79e6, r0, r1, r2, 0); 641 TESTINST3("smulwb r0, r1, r2", 0xf7ce2ec6, 0x5fc92974, r0, r1, r2, 0); 642 TESTINST3("smulwb r0, r1, r2", 0xbc1083e8, 0x7e08184e, r0, r1, r2, 0); 643 TESTINST3("smulwb r0, r1, r2", 0xa617cc31, 0x71c8315f, r0, r1, r2, 0); 644 TESTINST3("smulwb r0, r1, r2", 0xdfe1e8f0, 0x9493110e, r0, r1, r2, 0); 645 TESTINST3("smulwb r0, r1, r2", 0x6ef49020, 0xba8a7e0d, r0, r1, r2, 0); 646 TESTINST3("smulwb r0, r1, r2", 0x3dc4e36b, 0x21568e39, r0, r1, r2, 0); 647 TESTINST3("smulwb r0, r1, r2", 0x52db4a9d, 0x55fcc8cf, r0, r1, r2, 0); 648 TESTINST3("smulwb r0, r1, r2", 0x3564c76c, 0x14434a2a, r0, r1, r2, 0); 649 TESTINST3("smulwb r0, r1, r2", 0x27836b0c, 0x3c855ca8, r0, r1, r2, 0); 650 TESTINST3("smulwb r0, r1, r2", 0x62ff7c30, 0x30ece28e, r0, r1, r2, 0); 651 TESTINST3("smulwb r0, r1, r2", 0x40955fdf, 0x057b562c, r0, r1, r2, 0); 652 TESTINST3("smulwb r0, r1, r2", 0x3b34c270, 0x27e1475b, r0, r1, r2, 0); 653 TESTINST3("smulwb r0, r1, r2", 0x7fdcda96, 0xd05893a7, r0, r1, r2, 0); 654 TESTINST3("smulwb r0, r1, r2", 0xb6ab141d, 0x2dc43624, r0, r1, r2, 0); 655 TESTINST3("smulwb r0, r1, r2", 0x403d53cb, 0x5328d58c, r0, r1, r2, 0); 656 TESTINST3("smulwb r0, r1, r2", 0x21ef1aef, 0x87488a4a, r0, r1, r2, 0); 657 TESTINST3("smulwb r0, r1, r2", 0x31458a23, 0xbb246228, r0, r1, r2, 0); 658 TESTINST3("smulwb r0, r1, r2", 0x848af791, 0x339d8d88, r0, r1, r2, 0); 659 TESTINST3("smulwb r0, r1, r2", 0xda3bacdc, 0x70974249, r0, r1, r2, 0); 660 TESTINST3("smulwb r0, r1, r2", 0x649d5cbd, 0x8a8d4e7d, r0, r1, r2, 0); 661 TESTINST3("smulwb r0, r1, r2", 0xc0c8c881, 0xeb1b4335, r0, r1, r2, 0); 662 TESTINST3("smulwb r0, r1, r2", 0x7dd81a20, 0x0cd6b508, r0, r1, r2, 0); 663 TESTINST3("smulwb r0, r1, r2", 0x6892886c, 0x6731e282, r0, r1, r2, 0); 664 TESTINST3("smulwb r0, r1, r2", 0x112dcffc, 0xb6edf28f, r0, r1, r2, 0); 665 TESTINST3("smulwb r0, r1, r2", 0xabfabbe6, 0x4b4ec9ca, r0, r1, r2, 0); 666 TESTINST3("smulwb r0, r1, r2", 0xe52aabf8, 0xc1037fa4, r0, r1, r2, 0); 667 TESTINST3("smulwb r0, r1, r2", 0xf2f4df1f, 0xcb4ab48f, r0, r1, r2, 0); 668 TESTINST3("smulwb r0, r1, r2", 0x435f909a, 0xaf8f7e18, r0, r1, r2, 0); 669 TESTINST3("smulwb r0, r1, r2", 0x2106ba5f, 0x87df4510, r0, r1, r2, 0); 670 TESTINST3("smulwb r0, r1, r2", 0x246a6376, 0xabf4e8e1, r0, r1, r2, 0); 671 TESTINST3("smulwb r0, r1, r2", 0x1046a1a3, 0xf4c0eeac, r0, r1, r2, 0); 672 TESTINST3("smulwb r0, r1, r2", 0x638ca515, 0x006a54f2, r0, r1, r2, 0); 673 TESTINST3("smulwb r0, r1, r2", 0xf63e7a9d, 0x79f74493, r0, r1, r2, 0); 674 TESTINST3("smulwb r0, r1, r2", 0xbd6845cd, 0x9c09e313, r0, r1, r2, 0); 675 /* SMULWT rD, rN, rM - Rn x Rm[15.. 0] */ 676 TESTINST3("smulwt r0, r1, r2", 0x00000003, 0x00040000, r0, r1, r2, 0); 677 TESTINST3("smulwt r0, r1, r2", 0x00010003, 0x00040002, r0, r1, r2, 0); 678 TESTINST3("smulwt r0, r1, r2", 0x80010003, 0x00047fff, r0, r1, r2, 0); 679 TESTINST3("smulwt r0, r1, r2", 0x7fff0003, 0x00047fff, r0, r1, r2, 0); 680 TESTINST3("smulwt r0, r1, r2", 0xffff0003, 0x0004ffff, r0, r1, r2, 0); 681 TESTINST3("smulwt r0, r1, r2", 0x2575feb2, 0xd2c4287c, r0, r1, r2, 0); 682 TESTINST3("smulwt r0, r1, r2", 0xfb412431, 0x4b90362d, r0, r1, r2, 0); 683 TESTINST3("smulwt r0, r1, r2", 0x004dfbe5, 0xe87927cc, r0, r1, r2, 0); 684 TESTINST3("smulwt r0, r1, r2", 0xf6a3fa3c, 0x083b3571, r0, r1, r2, 0); 685 TESTINST3("smulwt r0, r1, r2", 0xbf17fb9a, 0xb9743941, r0, r1, r2, 0); 686 TESTINST3("smulwt r0, r1, r2", 0x2c0bd024, 0xbce5f924, r0, r1, r2, 0); 687 TESTINST3("smulwt r0, r1, r2", 0x3e976e2e, 0xcc3c201c, r0, r1, r2, 0); 688 TESTINST3("smulwt r0, r1, r2", 0xb4bfb365, 0x1ebaf88e, r0, r1, r2, 0); 689 TESTINST3("smulwt r0, r1, r2", 0x288593c0, 0x722d5e20, r0, r1, r2, 0); 690 TESTINST3("smulwt r0, r1, r2", 0x4d7ff5b4, 0xa1d6f791, r0, r1, r2, 0); 691 TESTINST3("smulwt r0, r1, r2", 0x4557be13, 0x7b11bee7, r0, r1, r2, 0); 692 TESTINST3("smulwt r0, r1, r2", 0xadcf5772, 0xa5631488, r0, r1, r2, 0); 693 TESTINST3("smulwt r0, r1, r2", 0x989a7235, 0xb10bcc65, r0, r1, r2, 0); 694 TESTINST3("smulwt r0, r1, r2", 0x4d6f393a, 0x73f39fca, r0, r1, r2, 0); 695 TESTINST3("smulwt r0, r1, r2", 0x24a3291e, 0x5648e540, r0, r1, r2, 0); 696 TESTINST3("smulwt r0, r1, r2", 0xdd91eebf, 0xc54f79e6, r0, r1, r2, 0); 697 TESTINST3("smulwt r0, r1, r2", 0xf7ce2ec6, 0x5fc92974, r0, r1, r2, 0); 698 TESTINST3("smulwt r0, r1, r2", 0xbc1083e8, 0x7e08184e, r0, r1, r2, 0); 699 TESTINST3("smulwt r0, r1, r2", 0xa617cc31, 0x71c8315f, r0, r1, r2, 0); 700 TESTINST3("smulwt r0, r1, r2", 0xdfe1e8f0, 0x9493110e, r0, r1, r2, 0); 701 TESTINST3("smulwt r0, r1, r2", 0x6ef49020, 0xba8a7e0d, r0, r1, r2, 0); 702 TESTINST3("smulwt r0, r1, r2", 0x3dc4e36b, 0x21568e39, r0, r1, r2, 0); 703 TESTINST3("smulwt r0, r1, r2", 0x52db4a9d, 0x55fcc8cf, r0, r1, r2, 0); 704 TESTINST3("smulwt r0, r1, r2", 0x3564c76c, 0x14434a2a, r0, r1, r2, 0); 705 TESTINST3("smulwt r0, r1, r2", 0x27836b0c, 0x3c855ca8, r0, r1, r2, 0); 706 TESTINST3("smulwt r0, r1, r2", 0x62ff7c30, 0x30ece28e, r0, r1, r2, 0); 707 TESTINST3("smulwt r0, r1, r2", 0x40955fdf, 0x057b562c, r0, r1, r2, 0); 708 TESTINST3("smulwt r0, r1, r2", 0x3b34c270, 0x27e1475b, r0, r1, r2, 0); 709 TESTINST3("smulwt r0, r1, r2", 0x7fdcda96, 0xd05893a7, r0, r1, r2, 0); 710 TESTINST3("smulwt r0, r1, r2", 0xb6ab141d, 0x2dc43624, r0, r1, r2, 0); 711 TESTINST3("smulwt r0, r1, r2", 0x403d53cb, 0x5328d58c, r0, r1, r2, 0); 712 TESTINST3("smulwt r0, r1, r2", 0x21ef1aef, 0x87488a4a, r0, r1, r2, 0); 713 TESTINST3("smulwt r0, r1, r2", 0x31458a23, 0xbb246228, r0, r1, r2, 0); 714 TESTINST3("smulwt r0, r1, r2", 0x848af791, 0x339d8d88, r0, r1, r2, 0); 715 TESTINST3("smulwt r0, r1, r2", 0xda3bacdc, 0x70974249, r0, r1, r2, 0); 716 TESTINST3("smulwt r0, r1, r2", 0x649d5cbd, 0x8a8d4e7d, r0, r1, r2, 0); 717 TESTINST3("smulwt r0, r1, r2", 0xc0c8c881, 0xeb1b4335, r0, r1, r2, 0); 718 TESTINST3("smulwt r0, r1, r2", 0x7dd81a20, 0x0cd6b508, r0, r1, r2, 0); 719 TESTINST3("smulwt r0, r1, r2", 0x6892886c, 0x6731e282, r0, r1, r2, 0); 720 TESTINST3("smulwt r0, r1, r2", 0x112dcffc, 0xb6edf28f, r0, r1, r2, 0); 721 TESTINST3("smulwt r0, r1, r2", 0xabfabbe6, 0x4b4ec9ca, r0, r1, r2, 0); 722 TESTINST3("smulwt r0, r1, r2", 0xe52aabf8, 0xc1037fa4, r0, r1, r2, 0); 723 TESTINST3("smulwt r0, r1, r2", 0xf2f4df1f, 0xcb4ab48f, r0, r1, r2, 0); 724 TESTINST3("smulwt r0, r1, r2", 0x435f909a, 0xaf8f7e18, r0, r1, r2, 0); 725 TESTINST3("smulwt r0, r1, r2", 0x2106ba5f, 0x87df4510, r0, r1, r2, 0); 726 TESTINST3("smulwt r0, r1, r2", 0x246a6376, 0xabf4e8e1, r0, r1, r2, 0); 727 TESTINST3("smulwt r0, r1, r2", 0x1046a1a3, 0xf4c0eeac, r0, r1, r2, 0); 728 TESTINST3("smulwt r0, r1, r2", 0x638ca515, 0x006a54f2, r0, r1, r2, 0); 729 TESTINST3("smulwt r0, r1, r2", 0xf63e7a9d, 0x79f74493, r0, r1, r2, 0); 730 TESTINST3("smulwt r0, r1, r2", 0xbd6845cd, 0x9c09e313, r0, r1, r2, 0); 731 732 printf("------------ PKHBT / PKHTB ------------\n"); 733 /* PKHBT */ 734 TESTINST3("pkhbt r0, r1, r2, lsl #0", 0x11223344, 0x55667788, r0,r1,r2, 0); 735 TESTINST3("pkhbt r0, r1, r2, lsl #1", 0x11223344, 0x55667788, r0,r1,r2, 0); 736 TESTINST3("pkhbt r0, r1, r2, lsl #2", 0x11223344, 0x55667788, r0,r1,r2, 0); 737 TESTINST3("pkhbt r0, r1, r2, lsl #3", 0x11223344, 0x55667788, r0,r1,r2, 0); 738 TESTINST3("pkhbt r0, r1, r2, lsl #4", 0x11223344, 0x55667788, r0,r1,r2, 0); 739 TESTINST3("pkhbt r0, r1, r2, lsl #16", 0x11223344, 0x55667788, r0,r1,r2, 0); 740 TESTINST3("pkhbt r0, r1, r2, lsl #22", 0x11223344, 0x55667788, r0,r1,r2, 0); 741 TESTINST3("pkhbt r0, r1, r2, lsl #31", 0x11223344, 0x55667788, r0,r1,r2, 0); 742 TESTINST3("pkhbt r0, r1, r2", 0x50c28082, 0xc1553709, r0,r1,r2, 0); 743 TESTINST3("pkhbt r0, r1, r2", 0x17962e8f, 0x69ec0212, r0,r1,r2, 0); 744 TESTINST3("pkhbt r0, r1, r2", 0xc57243b7, 0x03fa9bb5, r0,r1,r2, 0); 745 TESTINST3("pkhbt r0, r1, r2", 0x7eb226ac, 0xf52e9fbf, r0,r1,r2, 0); 746 TESTINST3("pkhbt r0, r1, r2", 0xbce0f026, 0x7fcbe5a9, r0,r1,r2, 0); 747 TESTINST3("pkhbt r0, r1, r2", 0xa5757252, 0x2dd01366, r0,r1,r2, 0); 748 TESTINST3("pkhbt r0, r1, r2", 0xf4a477c1, 0x5e4b1cbf, r0,r1,r2, 0); 749 TESTINST3("pkhbt r0, r1, r2", 0x76723a21, 0x464a21cc, r0,r1,r2, 0); 750 TESTINST3("pkhbt r0, r1, r2", 0x74d01105, 0xe8108f1b, r0,r1,r2, 0); 751 TESTINST3("pkhbt r0, r1, r2", 0xc1273e2c, 0xcd90d604, r0,r1,r2, 0); 752 TESTINST3("pkhbt r0, r1, r2, lsl #0", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 753 TESTINST3("pkhbt r0, r1, r2, lsl #1", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 754 TESTINST3("pkhbt r0, r1, r2, lsl #2", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 755 TESTINST3("pkhbt r0, r1, r2, lsl #3", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 756 TESTINST3("pkhbt r0, r1, r2, lsl #4", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 757 TESTINST3("pkhbt r0, r1, r2, lsl #8", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 758 TESTINST3("pkhbt r0, r1, r2, lsl #12", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 759 TESTINST3("pkhbt r0, r1, r2, lsl #16", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 760 TESTINST3("pkhbt r0, r1, r2, lsl #24", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 761 TESTINST3("pkhbt r0, r1, r2, lsl #31", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 762 TESTINST3("pkhbt r0, r1, r2, lsl #0", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 763 TESTINST3("pkhbt r0, r1, r2, lsl #1", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 764 TESTINST3("pkhbt r0, r1, r2, lsl #2", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 765 TESTINST3("pkhbt r0, r1, r2, lsl #3", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 766 TESTINST3("pkhbt r0, r1, r2, lsl #4", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 767 TESTINST3("pkhbt r0, r1, r2, lsl #8", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 768 TESTINST3("pkhbt r0, r1, r2, lsl #12", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 769 TESTINST3("pkhbt r0, r1, r2, lsl #16", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 770 TESTINST3("pkhbt r0, r1, r2, lsl #24", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 771 TESTINST3("pkhbt r0, r1, r2, lsl #31", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 772 TESTINST3("pkhbt r0, r1, r2, lsl #0", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 773 TESTINST3("pkhbt r0, r1, r2, lsl #1", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 774 TESTINST3("pkhbt r0, r1, r2, lsl #2", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 775 TESTINST3("pkhbt r0, r1, r2, lsl #3", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 776 TESTINST3("pkhbt r0, r1, r2, lsl #4", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 777 TESTINST3("pkhbt r0, r1, r2, lsl #8", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 778 TESTINST3("pkhbt r0, r1, r2, lsl #12", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 779 TESTINST3("pkhbt r0, r1, r2, lsl #16", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 780 TESTINST3("pkhbt r0, r1, r2, lsl #24", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 781 TESTINST3("pkhbt r0, r1, r2, lsl #31", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 782 TESTINST3("pkhbt r0, r1, r2, lsl #0", 0xd5dc5407, 0xf87b961e, r0,r1,r2, 0); 783 TESTINST3("pkhbt r0, r1, r2, lsl #1", 0xd65db979, 0xc61b323b, r0,r1,r2, 0); 784 TESTINST3("pkhbt r0, r1, r2, lsl #2", 0xa3268abe, 0xed2cbf78, r0,r1,r2, 0); 785 TESTINST3("pkhbt r0, r1, r2, lsl #3", 0xbf73f0a5, 0x2fb714c9, r0,r1,r2, 0); 786 TESTINST3("pkhbt r0, r1, r2, lsl #4", 0x281703ed, 0x925ef472, r0,r1,r2, 0); 787 TESTINST3("pkhbt r0, r1, r2, lsl #8", 0xeaa652c7, 0x137741f4, r0,r1,r2, 0); 788 TESTINST3("pkhbt r0, r1, r2, lsl #12", 0x71fbde8b, 0xdba5bd25, r0,r1,r2, 0); 789 TESTINST3("pkhbt r0, r1, r2, lsl #16", 0x884c0ad8, 0xc00b821a, r0,r1,r2, 0); 790 TESTINST3("pkhbt r0, r1, r2, lsl #24", 0xe1bb8606, 0x58293969, r0,r1,r2, 0); 791 TESTINST3("pkhbt r0, r1, r2, lsl #31", 0xa3cfd624, 0x6077fb1f, r0,r1,r2, 0); 792 TESTINST3("pkhbt r0, r1, r2, lsl #0", 0x40b094e2, 0x17913309, r0,r1,r2, 0); 793 TESTINST3("pkhbt r0, r1, r2, lsl #1", 0x5388b5cd, 0x86582032, r0,r1,r2, 0); 794 TESTINST3("pkhbt r0, r1, r2, lsl #2", 0x5de41558, 0xccfa1c7e, r0,r1,r2, 0); 795 TESTINST3("pkhbt r0, r1, r2, lsl #3", 0x23ba1b46, 0x4437983c, r0,r1,r2, 0); 796 TESTINST3("pkhbt r0, r1, r2, lsl #4", 0x48d06549, 0xa9085781, r0,r1,r2, 0); 797 TESTINST3("pkhbt r0, r1, r2, lsl #8", 0xc6b4ac58, 0xb2aead21, r0,r1,r2, 0); 798 TESTINST3("pkhbt r0, r1, r2, lsl #12", 0xc2bdf597, 0xdde1e6a4, r0,r1,r2, 0); 799 TESTINST3("pkhbt r0, r1, r2, lsl #16", 0x852e3a72, 0x157b0dea, r0,r1,r2, 0); 800 TESTINST3("pkhbt r0, r1, r2, lsl #24", 0xe7aa57b4, 0x1584bd74, r0,r1,r2, 0); 801 TESTINST3("pkhbt r0, r1, r2, lsl #31", 0xd4b64d54, 0xc53aaba9, r0,r1,r2, 0); 802 /* PKHTB */ 803 TESTINST3("pkhtb r0, r1, r2, asr #0", 0x11223344, 0x55667788, r0,r1,r2, 0); 804 TESTINST3("pkhtb r0, r1, r2, asr #1", 0x11223344, 0x55667788, r0,r1,r2, 0); 805 TESTINST3("pkhtb r0, r1, r2, asr #2", 0x11223344, 0x55667788, r0,r1,r2, 0); 806 TESTINST3("pkhtb r0, r1, r2, asr #3", 0x11223344, 0x55667788, r0,r1,r2, 0); 807 TESTINST3("pkhtb r0, r1, r2, asr #4", 0x11223344, 0x55667788, r0,r1,r2, 0); 808 TESTINST3("pkhtb r0, r1, r2, asr #16", 0x11223344, 0x55667788, r0,r1,r2, 0); 809 TESTINST3("pkhtb r0, r1, r2, asr #22", 0x11223344, 0x55667788, r0,r1,r2, 0); 810 TESTINST3("pkhtb r0, r1, r2, asr #31", 0x11223344, 0x55667788, r0,r1,r2, 0); 811 TESTINST3("pkhtb r0, r1, r2", 0x50c28082, 0xc1553709, r0,r1,r2, 0); 812 TESTINST3("pkhtb r0, r1, r2", 0x17962e8f, 0x69ec0212, r0,r1,r2, 0); 813 TESTINST3("pkhtb r0, r1, r2", 0xc57243b7, 0x03fa9bb5, r0,r1,r2, 0); 814 TESTINST3("pkhtb r0, r1, r2", 0x7eb226ac, 0xf52e9fbf, r0,r1,r2, 0); 815 TESTINST3("pkhtb r0, r1, r2", 0xbce0f026, 0x7fcbe5a9, r0,r1,r2, 0); 816 TESTINST3("pkhtb r0, r1, r2", 0xa5757252, 0x2dd01366, r0,r1,r2, 0); 817 TESTINST3("pkhtb r0, r1, r2", 0xf4a477c1, 0x5e4b1cbf, r0,r1,r2, 0); 818 TESTINST3("pkhtb r0, r1, r2", 0x76723a21, 0x464a21cc, r0,r1,r2, 0); 819 TESTINST3("pkhtb r0, r1, r2", 0x74d01105, 0xe8108f1b, r0,r1,r2, 0); 820 TESTINST3("pkhtb r0, r1, r2", 0xc1273e2c, 0xcd90d604, r0,r1,r2, 0); 821 TESTINST3("pkhtb r0, r1, r2, asr #0", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 822 TESTINST3("pkhtb r0, r1, r2, asr #1", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 823 TESTINST3("pkhtb r0, r1, r2, asr #2", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 824 TESTINST3("pkhtb r0, r1, r2, asr #3", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 825 TESTINST3("pkhtb r0, r1, r2, asr #4", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 826 TESTINST3("pkhtb r0, r1, r2, asr #8", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 827 TESTINST3("pkhtb r0, r1, r2, asr #12", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 828 TESTINST3("pkhtb r0, r1, r2, asr #16", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 829 TESTINST3("pkhtb r0, r1, r2, asr #24", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 830 TESTINST3("pkhtb r0, r1, r2, asr #31", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 831 TESTINST3("pkhtb r0, r1, r2, asr #32", 0x5f986e68, 0x35232047, r0,r1,r2, 0); 832 TESTINST3("pkhtb r0, r1, r2, asr #0", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 833 TESTINST3("pkhtb r0, r1, r2, asr #1", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 834 TESTINST3("pkhtb r0, r1, r2, asr #2", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 835 TESTINST3("pkhtb r0, r1, r2, asr #3", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 836 TESTINST3("pkhtb r0, r1, r2, asr #4", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 837 TESTINST3("pkhtb r0, r1, r2, asr #8", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 838 TESTINST3("pkhtb r0, r1, r2, asr #12", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 839 TESTINST3("pkhtb r0, r1, r2, asr #16", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 840 TESTINST3("pkhtb r0, r1, r2, asr #24", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 841 TESTINST3("pkhtb r0, r1, r2, asr #31", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 842 TESTINST3("pkhtb r0, r1, r2, asr #32", 0x36f26261, 0x89d2ef86, r0,r1,r2, 0); 843 TESTINST3("pkhtb r0, r1, r2, asr #0", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 844 TESTINST3("pkhtb r0, r1, r2, asr #1", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 845 TESTINST3("pkhtb r0, r1, r2, asr #2", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 846 TESTINST3("pkhtb r0, r1, r2, asr #3", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 847 TESTINST3("pkhtb r0, r1, r2, asr #4", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 848 TESTINST3("pkhtb r0, r1, r2, asr #8", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 849 TESTINST3("pkhtb r0, r1, r2, asr #12", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 850 TESTINST3("pkhtb r0, r1, r2, asr #16", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 851 TESTINST3("pkhtb r0, r1, r2, asr #24", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 852 TESTINST3("pkhtb r0, r1, r2, asr #31", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 853 TESTINST3("pkhtb r0, r1, r2, asr #32", 0x216158cb, 0x57a50a01, r0,r1,r2, 0); 854 TESTINST3("pkhtb r0, r1, r2, asr #0", 0xd5dc5407, 0xf87b961e, r0,r1,r2, 0); 855 TESTINST3("pkhtb r0, r1, r2, asr #1", 0xd65db979, 0xc61b323b, r0,r1,r2, 0); 856 TESTINST3("pkhtb r0, r1, r2, asr #2", 0xa3268abe, 0xed2cbf78, r0,r1,r2, 0); 857 TESTINST3("pkhtb r0, r1, r2, asr #3", 0xbf73f0a5, 0x2fb714c9, r0,r1,r2, 0); 858 TESTINST3("pkhtb r0, r1, r2, asr #4", 0x281703ed, 0x925ef472, r0,r1,r2, 0); 859 TESTINST3("pkhtb r0, r1, r2, asr #8", 0xeaa652c7, 0x137741f4, r0,r1,r2, 0); 860 TESTINST3("pkhtb r0, r1, r2, asr #12", 0x71fbde8b, 0xdba5bd25, r0,r1,r2, 0); 861 TESTINST3("pkhtb r0, r1, r2, asr #16", 0x884c0ad8, 0xc00b821a, r0,r1,r2, 0); 862 TESTINST3("pkhtb r0, r1, r2, asr #24", 0xe1bb8606, 0x58293969, r0,r1,r2, 0); 863 TESTINST3("pkhtb r0, r1, r2, asr #31", 0xa3cfd624, 0x6077fb1f, r0,r1,r2, 0); 864 TESTINST3("pkhtb r0, r1, r2, asr #32", 0xa3cfd624, 0x6077fb1f, r0,r1,r2, 0); 865 TESTINST3("pkhtb r0, r1, r2, asr #0", 0x40b094e2, 0x17913309, r0,r1,r2, 0); 866 TESTINST3("pkhtb r0, r1, r2, asr #1", 0x5388b5cd, 0x86582032, r0,r1,r2, 0); 867 TESTINST3("pkhtb r0, r1, r2, asr #2", 0x5de41558, 0xccfa1c7e, r0,r1,r2, 0); 868 TESTINST3("pkhtb r0, r1, r2, asr #3", 0x23ba1b46, 0x4437983c, r0,r1,r2, 0); 869 TESTINST3("pkhtb r0, r1, r2, asr #4", 0x48d06549, 0xa9085781, r0,r1,r2, 0); 870 TESTINST3("pkhtb r0, r1, r2, asr #8", 0xc6b4ac58, 0xb2aead21, r0,r1,r2, 0); 871 TESTINST3("pkhtb r0, r1, r2, asr #12", 0xc2bdf597, 0xdde1e6a4, r0,r1,r2, 0); 872 TESTINST3("pkhtb r0, r1, r2, asr #16", 0x852e3a72, 0x157b0dea, r0,r1,r2, 0); 873 TESTINST3("pkhtb r0, r1, r2, asr #24", 0xe7aa57b4, 0x1584bd74, r0,r1,r2, 0); 874 TESTINST3("pkhtb r0, r1, r2, asr #31", 0xd4b64d54, 0xc53aaba9, r0,r1,r2, 0); 875 TESTINST3("pkhtb r0, r1, r2, asr #32", 0xd4b64d54, 0xc53aaba9, r0,r1,r2, 0); 876 877 printf("----------------- USAT ----------------- \n"); 878 TESTINST2("usat r0, #0, r1", 0x0123abcd, r0, r1, 0); 879 TESTINST2("usat r0, #1, r1", 0x0123abcd, r0, r1, 0); 880 TESTINST2("usat r0, #5, r1", 0x0123abcd, r0, r1, 0); 881 TESTINST2("usat r0, #8, r1", 0x0123abcd, r0, r1, 0); 882 TESTINST2("usat r0, #11, r1", 0x11110000, r0, r1, 0); 883 TESTINST2("usat r0, #13, r1", 0x11110000, r0, r1, 0); 884 TESTINST2("usat r0, #15, r1", 0x11110000, r0, r1, 0); 885 TESTINST2("usat r0, #0, r1", 0xebbff82b, r0, r1, 0); 886 TESTINST2("usat r0, #31, r1, lsl #0", 0x5f986e68, r0, r1, 0); 887 TESTINST2("usat r0, #31, r1, lsl #0", 0xe7aa57b4, r0, r1, 0); 888 TESTINST2("usat r0, #31, r1, lsl #0", 0x89d2ef86, r0, r1, 0); 889 TESTINST2("usat r0, #31, r1, lsl #8", 0xc53aaba9, r0, r1, 0); 890 TESTINST2("usat r0, #31, r1, lsl #8", 0x216158cb, r0, r1, 0); 891 TESTINST2("usat r0, #31, r1, lsl #8", 0x3cd6cd94, r0, r1, 0); 892 TESTINST2("usat r0, #0, r1, lsl #0", 0xf87b961e, r0, r1, 0); 893 TESTINST2("usat r0, #0, r1, lsl #0", 0xc61b323b, r0, r1, 0); 894 TESTINST2("usat r0, #0, r1, lsl #0", 0xa3268abe, r0, r1, 0); 895 TESTINST2("usat r0, #0, r1, lsl #8", 0xbf73f0a5, r0, r1, 0); 896 TESTINST2("usat r0, #0, r1, lsl #8", 0x925ef472, r0, r1, 0); 897 TESTINST2("usat r0, #0, r1, lsl #8", 0x137741f4, r0, r1, 0); 898 TESTINST2("usat r0, #24, r1, lsl #2", 0x50c28082, r0, r1, 0); 899 TESTINST2("usat r0, #16, r1, lsl #3", 0x17962e8f, r0, r1, 0); 900 TESTINST2("usat r0, #12, r1, lsl #4", 0xc57243b7, r0, r1, 0); 901 TESTINST2("usat r0, #8, r1, lsl #8", 0xf20fb90f, r0, r1, 0); 902 TESTINST2("usat r0, #4, r1, lsl #12", 0xbb151055, r0, r1, 0); 903 TESTINST2("usat r0, #3, r1, lsl #16", 0x957440d2, r0, r1, 0); 904 TESTINST2("usat r0, #2, r1, lsl #24", 0x728b7771, r0, r1, 0); 905 TESTINST2("usat r0, #1, r1, lsl #31", 0xf13c20f3, r0, r1, 0); 906 TESTINST2("usat r0, #0, r1", 0xebbff82b, r0, r1, 0); 907 TESTINST2("usat r0, #31, r1, asr #0", 0x5f986e68, r0, r1, 0); 908 TESTINST2("usat r0, #31, r1, asr #0", 0xe7aa57b4, r0, r1, 0); 909 TESTINST2("usat r0, #31, r1, asr #0", 0x89d2ef86, r0, r1, 0); 910 TESTINST2("usat r0, #31, r1, asr #8", 0xc53aaba9, r0, r1, 0); 911 TESTINST2("usat r0, #31, r1, asr #8", 0x216158cb, r0, r1, 0); 912 TESTINST2("usat r0, #31, r1, asr #8", 0x3cd6cd94, r0, r1, 0); 913 TESTINST2("usat r0, #0, r1, asr #0", 0xf87b961e, r0, r1, 0); 914 TESTINST2("usat r0, #0, r1, asr #0", 0xc61b323b, r0, r1, 0); 915 TESTINST2("usat r0, #0, r1, asr #0", 0xa3268abe, r0, r1, 0); 916 TESTINST2("usat r0, #0, r1, asr #8", 0xbf73f0a5, r0, r1, 0); 917 TESTINST2("usat r0, #0, r1, asr #8", 0x925ef472, r0, r1, 0); 918 TESTINST2("usat r0, #0, r1, asr #8", 0x137741f4, r0, r1, 0); 919 TESTINST2("usat r0, #24, r1, asr #2", 0x50c28082, r0, r1, 0); 920 TESTINST2("usat r0, #16, r1, asr #3", 0x17962e8f, r0, r1, 0); 921 TESTINST2("usat r0, #12, r1, asr #4", 0xc57243b7, r0, r1, 0); 922 TESTINST2("usat r0, #8, r1, asr #8", 0xf20fb90f, r0, r1, 0); 923 TESTINST2("usat r0, #4, r1, asr #12", 0xbb151055, r0, r1, 0); 924 TESTINST2("usat r0, #3, r1, asr #16", 0x957440d2, r0, r1, 0); 925 TESTINST2("usat r0, #2, r1, asr #24", 0x728b7771, r0, r1, 0); 926 TESTINST2("usat r0, #1, r1, asr #31", 0xf13c20f3, r0, r1, 0); 927 TESTINST2("usat r0, #0, r1", 0xebbff82b, r0, r1, 0); 928 TESTINST2("usat r0, #31, r1, asr #0", 0x5f986e68, r0, r1, 0); 929 TESTINST2("usat r0, #31, r1, asr #0", 0xe7aa57b4, r0, r1, 0); 930 TESTINST2("usat r0, #31, r1, asr #0", 0x89d2ef86, r0, r1, 0); 931 TESTINST2("usat r0, #31, r1, asr #8", 0xc53aaba9, r0, r1, 0); 932 TESTINST2("usat r0, #31, r1, asr #8", 0x216158cb, r0, r1, 0); 933 TESTINST2("usat r0, #31, r1, asr #8", 0x3cd6cd94, r0, r1, 0); 934 TESTINST2("usat r0, #0, r1, asr #0", 0xf87b961e, r0, r1, 0); 935 TESTINST2("usat r0, #0, r1, asr #0", 0xc61b323b, r0, r1, 0); 936 TESTINST2("usat r0, #0, r1, asr #0", 0xa3268abe, r0, r1, 0); 937 TESTINST2("usat r0, #0, r1, asr #8", 0xbf73f0a5, r0, r1, 0); 938 TESTINST2("usat r0, #0, r1, asr #8", 0x925ef472, r0, r1, 0); 939 TESTINST2("usat r0, #0, r1, asr #8", 0x137741f4, r0, r1, 0); 940 TESTINST2("usat r0, #24, r1, asr #2", 0x50c28082, r0, r1, 0); 941 TESTINST2("usat r0, #16, r1, asr #3", 0x17962e8f, r0, r1, 0); 942 TESTINST2("usat r0, #12, r1, asr #4", 0xc57243b7, r0, r1, 0); 943 TESTINST2("usat r0, #8, r1, asr #8", 0xf20fb90f, r0, r1, 0); 944 TESTINST2("usat r0, #4, r1, asr #12", 0xbb151055, r0, r1, 0); 945 TESTINST2("usat r0, #3, r1, asr #16", 0x957440d2, r0, r1, 0); 946 TESTINST2("usat r0, #2, r1, asr #24", 0x728b7771, r0, r1, 0); 947 TESTINST2("usat r0, #1, r1, asr #31", 0xf13c20f3, r0, r1, 0); 948 #ifndef __thumb__ 949 TESTINST2("usat r0, #0, r1, asr #32", 0xa9085781, r0, r1, 0); 950 TESTINST2("usat r0, #31, r1, asr #32", 0x40b094e2, r0, r1, 0); 951 TESTINST2("usat r0, #31, r1, asr #32", 0x17913309, r0, r1, 0); 952 TESTINST2("usat r0, #31, r1, asr #32", 0x5388b5cd, r0, r1, 0); 953 TESTINST2("usat r0, #24, r1, asr #32", 0x86582032, r0, r1, 0); 954 TESTINST2("usat r0, #16, r1, asr #32", 0x5de41558, r0, r1, 0); 955 TESTINST2("usat r0, #12, r1, asr #32", 0xccfa1c7e, r0, r1, 0); 956 TESTINST2("usat r0, #8, r1, asr #32", 0x23ba1b46, r0, r1, 0); 957 TESTINST2("usat r0, #4, r1, asr #32", 0x4437983c, r0, r1, 0); 958 TESTINST2("usat r0, #3, r1, asr #32", 0x48d06549, r0, r1, 0); 959 TESTINST2("usat r0, #2, r1, asr #32", 0xa9085781, r0, r1, 0); 960 TESTINST2("usat r0, #1, r1, asr #32", 0xc6b4ac58, r0, r1, 0); 961 #endif 962 963 printf("------------ USAT16 sat_imm ------------ \n"); 964 TESTINST2("usat16 r0, #0, r1", 0x0123abcd, r0, r1, 0); 965 TESTINST2("usat16 r0, #1, r1", 0xffcdabcd, r0, r1, 0); 966 TESTINST2("usat16 r0, #5, r1", 0x0123feff, r0, r1, 0); 967 TESTINST2("usat16 r0, #8, r1", 0x0123abcd, r0, r1, 0); 968 TESTINST2("usat16 r0, #11, r1", 0x11110000, r0, r1, 0); 969 TESTINST2("usat16 r0, #13, r1", 0x1111f111, r0, r1, 0); 970 TESTINST2("usat16 r0, #15, r1", 0x00001111, r0, r1, 0); 971 TESTINST2("usat16 r0, #0, r1", 0xebbff82b, r0, r1, 0); 972 TESTINST2("usat16 r0, #1, r1", 0xebbff82b, r0, r1, 0); 973 TESTINST2("usat16 r0, #3, r1", 0x50c28082, r0, r1, 0); 974 TESTINST2("usat16 r0, #5, r1", 0x17962e8f, r0, r1, 0); 975 TESTINST2("usat16 r0, #8, r1", 0xc57243b7, r0, r1, 0); 976 TESTINST2("usat16 r0, #10, r1", 0xf20fb90f, r0, r1, 0); 977 TESTINST2("usat16 r0, #11, r1", 0xbb151055, r0, r1, 0); 978 TESTINST2("usat16 r0, #13, r1", 0x957440d2, r0, r1, 0); 979 TESTINST2("usat16 r0, #14, r1", 0x728b7771, r0, r1, 0); 980 TESTINST2("usat16 r0, #15, r1", 0xf13c20f3, r0, r1, 0); 981 TESTINST2("usat16 r0, #0, r1", 0x86398371, r0, r1, 0); 982 TESTINST2("usat16 r0, #1, r1", 0x03d0fb78, r0, r1, 0); 983 TESTINST2("usat16 r0, #3, r1", 0xd0d49b7c, r0, r1, 0); 984 TESTINST2("usat16 r0, #5, r1", 0x76354a58, r0, r1, 0); 985 TESTINST2("usat16 r0, #8, r1", 0x9fa45fb7, r0, r1, 0); 986 TESTINST2("usat16 r0, #10, r1", 0x7572bdec, r0, r1, 0); 987 TESTINST2("usat16 r0, #11, r1", 0xfea59eb6, r0, r1, 0); 988 TESTINST2("usat16 r0, #13, r1", 0xf2669090, r0, r1, 0); 989 TESTINST2("usat16 r0, #14, r1", 0xbc1ff573, r0, r1, 0); 990 TESTINST2("usat16 r0, #15, r1", 0x7eb226ac, r0, r1, 0); 991 TESTINST2("usat16 r0, #0, r1", 0x22b65db1, r0, r1, 0); 992 TESTINST2("usat16 r0, #1, r1", 0x776c41c7, r0, r1, 0); 993 TESTINST2("usat16 r0, #3, r1", 0xe50dd77c, r0, r1, 0); 994 TESTINST2("usat16 r0, #5, r1", 0xd6f9a698, r0, r1, 0); 995 TESTINST2("usat16 r0, #8, r1", 0xeda5110c, r0, r1, 0); 996 TESTINST2("usat16 r0, #10, r1", 0x0be36f70, r0, r1, 0); 997 TESTINST2("usat16 r0, #11, r1", 0xd759eb72, r0, r1, 0); 998 TESTINST2("usat16 r0, #13, r1", 0xd9c4b1f4, r0, r1, 0); 999 TESTINST2("usat16 r0, #14, r1", 0xa29eb320, r0, r1, 0); 1000 TESTINST2("usat16 r0, #15, r1", 0xcf1e4487, r0, r1, 0); 1001 TESTINST2("usat16 r0, #0, r1", 0x2eb68500, r0, r1, 0); 1002 TESTINST2("usat16 r0, #1, r1", 0xcdb7ed11, r0, r1, 0); 1003 TESTINST2("usat16 r0, #3, r1", 0x2eaea305, r0, r1, 0); 1004 TESTINST2("usat16 r0, #5, r1", 0x6ebd04d9, r0, r1, 0); 1005 TESTINST2("usat16 r0, #8, r1", 0xa5ec1aa8, r0, r1, 0); 1006 TESTINST2("usat16 r0, #10, r1", 0x72f33509, r0, r1, 0); 1007 TESTINST2("usat16 r0, #11, r1", 0xa3e6f759, r0, r1, 0); 1008 TESTINST2("usat16 r0, #13, r1", 0xfaceab39, r0, r1, 0); 1009 TESTINST2("usat16 r0, #14, r1", 0x2738f0ff, r0, r1, 0); 1010 TESTINST2("usat16 r0, #15, r1", 0xe79fd570, r0, r1, 0); 1011 TESTINST2("usat16 r0, #0, r1", 0x55ea3e4e, r0, r1, 0); 1012 TESTINST2("usat16 r0, #1, r1", 0x2b62ba5a, r0, r1, 0); 1013 TESTINST2("usat16 r0, #3, r1", 0x9b41bfb1, r0, r1, 0); 1014 TESTINST2("usat16 r0, #5, r1", 0x557c7ba2, r0, r1, 0); 1015 TESTINST2("usat16 r0, #8, r1", 0x2973c051, r0, r1, 0); 1016 TESTINST2("usat16 r0, #10, r1", 0x6a228b19, r0, r1, 0); 1017 TESTINST2("usat16 r0, #11, r1", 0x0cdafabe, r0, r1, 0); 1018 TESTINST2("usat16 r0, #13, r1", 0x50865114, r0, r1, 0); 1019 TESTINST2("usat16 r0, #14, r1", 0xd83b849b, r0, r1, 0); 1020 TESTINST2("usat16 r0, #15, r1", 0xca5e5605, r0, r1, 0); 1021 1022 printf("---------------- UADD16 ---------------- \n"); 1023 TESTINST3("uadd16 r0, r1, r2", 0x0009ffff, 0x00180003, r0, r1, r2, 0); 1024 TESTINST3("uadd16 r0, r1, r2", 0x00180003, 0x0009ffff, r0, r1, r2, 0); 1025 TESTINST3("uadd16 r0, r1, r2", 0x00030018, 0xffff0009, r0, r1, r2, 0); 1026 TESTINST3("uadd16 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 1027 1028 TESTINST3("uadd16 r0, r1, r2", 0x00000000, 0x00000000, r0, r1, r2, 0); 1029 TESTINST3("uadd16 r0, r1, r2", 0x00000001, 0x00000000, r0, r1, r2, 0); 1030 TESTINST3("uadd16 r0, r1, r2", 0x00000000, 0x00000001, r0, r1, r2, 0); 1031 TESTINST3("uadd16 r0, r1, r2", 0x00000001, 0x00000001, r0, r1, r2, 0); 1032 TESTINST3("uadd16 r0, r1, r2", 0x00000000, 0x0000ffff, r0, r1, r2, 0); 1033 TESTINST3("uadd16 r0, r1, r2", 0x0000ffff, 0x00000000, r0, r1, r2, 0); 1034 TESTINST3("uadd16 r0, r1, r2", 0x0000ffff, 0x0000ffff, r0, r1, r2, 0); 1035 1036 TESTINST3("uadd16 r0, r1, r2", 0x00000000, 0x00000000, r0, r1, r2, 0); 1037 TESTINST3("uadd16 r0, r1, r2", 0x00010000, 0x00000000, r0, r1, r2, 0); 1038 TESTINST3("uadd16 r0, r1, r2", 0x00000000, 0x00010000, r0, r1, r2, 0); 1039 TESTINST3("uadd16 r0, r1, r2", 0x00010000, 0x00010000, r0, r1, r2, 0); 1040 TESTINST3("uadd16 r0, r1, r2", 0x00000000, 0xffff0000, r0, r1, r2, 0); 1041 TESTINST3("uadd16 r0, r1, r2", 0xffff0000, 0x00000000, r0, r1, r2, 0); 1042 TESTINST3("uadd16 r0, r1, r2", 0xffff0000, 0xffff0000, r0, r1, r2, 0); 1043 1044 TESTINST3("uadd16 r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 1045 TESTINST3("uadd16 r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 1046 TESTINST3("uadd16 r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 1047 TESTINST3("uadd16 r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 1048 TESTINST3("uadd16 r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 1049 TESTINST3("uadd16 r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 1050 TESTINST3("uadd16 r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 1051 TESTINST3("uadd16 r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 1052 TESTINST3("uadd16 r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 1053 TESTINST3("uadd16 r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 1054 TESTINST3("uadd16 r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 1055 TESTINST3("uadd16 r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 1056 TESTINST3("uadd16 r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 1057 TESTINST3("uadd16 r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 1058 TESTINST3("uadd16 r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 1059 TESTINST3("uadd16 r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 1060 TESTINST3("uadd16 r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 1061 TESTINST3("uadd16 r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 1062 TESTINST3("uadd16 r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 1063 TESTINST3("uadd16 r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 1064 TESTINST3("uadd16 r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 1065 TESTINST3("uadd16 r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 1066 TESTINST3("uadd16 r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 1067 TESTINST3("uadd16 r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 1068 TESTINST3("uadd16 r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 1069 TESTINST3("uadd16 r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 1070 TESTINST3("uadd16 r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 1071 TESTINST3("uadd16 r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 1072 TESTINST3("uadd16 r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 1073 TESTINST3("uadd16 r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 1074 TESTINST3("uadd16 r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 1075 TESTINST3("uadd16 r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 1076 TESTINST3("uadd16 r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 1077 TESTINST3("uadd16 r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 1078 TESTINST3("uadd16 r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 1079 TESTINST3("uadd16 r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 1080 TESTINST3("uadd16 r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 1081 TESTINST3("uadd16 r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 1082 TESTINST3("uadd16 r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 1083 TESTINST3("uadd16 r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 1084 TESTINST3("uadd16 r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 1085 TESTINST3("uadd16 r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 1086 TESTINST3("uadd16 r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 1087 TESTINST3("uadd16 r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 1088 TESTINST3("uadd16 r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 1089 TESTINST3("uadd16 r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 1090 TESTINST3("uadd16 r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 1091 TESTINST3("uadd16 r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 1092 TESTINST3("uadd16 r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 1093 TESTINST3("uadd16 r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 1094 1095 printf("---------------- SADD16 ---------------- \n"); 1096 TESTINST3("sadd16 r0, r1, r2", 0x0009ffff, 0x00180003, r0, r1, r2, 0); 1097 TESTINST3("sadd16 r0, r1, r2", 0x00180003, 0x0009ffff, r0, r1, r2, 0); 1098 TESTINST3("sadd16 r0, r1, r2", 0x00030018, 0xffff0009, r0, r1, r2, 0); 1099 TESTINST3("sadd16 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 1100 1101 TESTINST3("sadd16 r0, r1, r2", 0x00000000, 0x00000000, r0, r1, r2, 0); 1102 TESTINST3("sadd16 r0, r1, r2", 0x00000001, 0x00000000, r0, r1, r2, 0); 1103 TESTINST3("sadd16 r0, r1, r2", 0x00000000, 0x00000001, r0, r1, r2, 0); 1104 TESTINST3("sadd16 r0, r1, r2", 0x00000001, 0x00000001, r0, r1, r2, 0); 1105 TESTINST3("sadd16 r0, r1, r2", 0x00000000, 0x0000ffff, r0, r1, r2, 0); 1106 TESTINST3("sadd16 r0, r1, r2", 0x0000ffff, 0x00000000, r0, r1, r2, 0); 1107 TESTINST3("sadd16 r0, r1, r2", 0x0000ffff, 0x0000ffff, r0, r1, r2, 0); 1108 1109 TESTINST3("sadd16 r0, r1, r2", 0x00000000, 0x00000000, r0, r1, r2, 0); 1110 TESTINST3("sadd16 r0, r1, r2", 0x00010000, 0x00000000, r0, r1, r2, 0); 1111 TESTINST3("sadd16 r0, r1, r2", 0x00000000, 0x00010000, r0, r1, r2, 0); 1112 TESTINST3("sadd16 r0, r1, r2", 0x00010000, 0x00010000, r0, r1, r2, 0); 1113 TESTINST3("sadd16 r0, r1, r2", 0x00000000, 0xffff0000, r0, r1, r2, 0); 1114 TESTINST3("sadd16 r0, r1, r2", 0xffff0000, 0x00000000, r0, r1, r2, 0); 1115 TESTINST3("sadd16 r0, r1, r2", 0xffff0000, 0xffff0000, r0, r1, r2, 0); 1116 1117 TESTINST3("sadd16 r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 1118 TESTINST3("sadd16 r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 1119 TESTINST3("sadd16 r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 1120 TESTINST3("sadd16 r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 1121 TESTINST3("sadd16 r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 1122 TESTINST3("sadd16 r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 1123 TESTINST3("sadd16 r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 1124 TESTINST3("sadd16 r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 1125 TESTINST3("sadd16 r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 1126 TESTINST3("sadd16 r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 1127 TESTINST3("sadd16 r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 1128 TESTINST3("sadd16 r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 1129 TESTINST3("sadd16 r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 1130 TESTINST3("sadd16 r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 1131 TESTINST3("sadd16 r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 1132 TESTINST3("sadd16 r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 1133 TESTINST3("sadd16 r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 1134 TESTINST3("sadd16 r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 1135 TESTINST3("sadd16 r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 1136 TESTINST3("sadd16 r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 1137 TESTINST3("sadd16 r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 1138 TESTINST3("sadd16 r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 1139 TESTINST3("sadd16 r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 1140 TESTINST3("sadd16 r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 1141 TESTINST3("sadd16 r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 1142 TESTINST3("sadd16 r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 1143 TESTINST3("sadd16 r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 1144 TESTINST3("sadd16 r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 1145 TESTINST3("sadd16 r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 1146 TESTINST3("sadd16 r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 1147 TESTINST3("sadd16 r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 1148 TESTINST3("sadd16 r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 1149 TESTINST3("sadd16 r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 1150 TESTINST3("sadd16 r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 1151 TESTINST3("sadd16 r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 1152 TESTINST3("sadd16 r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 1153 TESTINST3("sadd16 r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 1154 TESTINST3("sadd16 r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 1155 TESTINST3("sadd16 r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 1156 TESTINST3("sadd16 r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 1157 TESTINST3("sadd16 r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 1158 TESTINST3("sadd16 r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 1159 TESTINST3("sadd16 r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 1160 TESTINST3("sadd16 r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 1161 TESTINST3("sadd16 r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 1162 TESTINST3("sadd16 r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 1163 TESTINST3("sadd16 r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 1164 TESTINST3("sadd16 r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 1165 TESTINST3("sadd16 r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 1166 TESTINST3("sadd16 r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 1167 1168 printf("---------------- USUB16 ---------------- \n"); 1169 TESTINST3("usub16 r0, r1, r2", 0x04000022, 0x03000011, r0, r1, r2, 0); 1170 TESTINST3("usub16 r0, r1, r2", 0x0009ffff, 0x00180003, r0, r1, r2, 0); 1171 TESTINST3("usub16 r0, r1, r2", 0x00180003, 0x0009ffff, r0, r1, r2, 0); 1172 TESTINST3("usub16 r0, r1, r2", 0x00030018, 0xffff0009, r0, r1, r2, 0); 1173 TESTINST3("usub16 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 1174 1175 TESTINST3("usub16 r0, r1, r2", 0x00000000, 0x00000000, r0, r1, r2, 0); 1176 TESTINST3("usub16 r0, r1, r2", 0x00000001, 0x00000000, r0, r1, r2, 0); 1177 TESTINST3("usub16 r0, r1, r2", 0x00000000, 0x00000001, r0, r1, r2, 0); 1178 TESTINST3("usub16 r0, r1, r2", 0x00000001, 0x00000001, r0, r1, r2, 0); 1179 TESTINST3("usub16 r0, r1, r2", 0x00000000, 0x0000ffff, r0, r1, r2, 0); 1180 TESTINST3("usub16 r0, r1, r2", 0x0000ffff, 0x00000000, r0, r1, r2, 0); 1181 TESTINST3("usub16 r0, r1, r2", 0x0000ffff, 0x0000ffff, r0, r1, r2, 0); 1182 1183 TESTINST3("usub16 r0, r1, r2", 0x00000000, 0x00000000, r0, r1, r2, 0); 1184 TESTINST3("usub16 r0, r1, r2", 0x00010000, 0x00000000, r0, r1, r2, 0); 1185 TESTINST3("usub16 r0, r1, r2", 0x00000000, 0x00010000, r0, r1, r2, 0); 1186 TESTINST3("usub16 r0, r1, r2", 0x00010000, 0x00010000, r0, r1, r2, 0); 1187 TESTINST3("usub16 r0, r1, r2", 0x00000000, 0xffff0000, r0, r1, r2, 0); 1188 TESTINST3("usub16 r0, r1, r2", 0xffff0000, 0x00000000, r0, r1, r2, 0); 1189 TESTINST3("usub16 r0, r1, r2", 0xffff0000, 0xffff0000, r0, r1, r2, 0); 1190 1191 TESTINST3("usub16 r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 1192 TESTINST3("usub16 r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 1193 TESTINST3("usub16 r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 1194 TESTINST3("usub16 r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 1195 TESTINST3("usub16 r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 1196 TESTINST3("usub16 r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 1197 TESTINST3("usub16 r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 1198 TESTINST3("usub16 r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 1199 TESTINST3("usub16 r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 1200 TESTINST3("usub16 r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 1201 TESTINST3("usub16 r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 1202 TESTINST3("usub16 r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 1203 TESTINST3("usub16 r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 1204 TESTINST3("usub16 r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 1205 TESTINST3("usub16 r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 1206 TESTINST3("usub16 r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 1207 TESTINST3("usub16 r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 1208 TESTINST3("usub16 r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 1209 TESTINST3("usub16 r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 1210 TESTINST3("usub16 r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 1211 TESTINST3("usub16 r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 1212 TESTINST3("usub16 r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 1213 TESTINST3("usub16 r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 1214 TESTINST3("usub16 r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 1215 TESTINST3("usub16 r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 1216 TESTINST3("usub16 r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 1217 TESTINST3("usub16 r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 1218 TESTINST3("usub16 r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 1219 TESTINST3("usub16 r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 1220 TESTINST3("usub16 r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 1221 TESTINST3("usub16 r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 1222 TESTINST3("usub16 r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 1223 TESTINST3("usub16 r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 1224 TESTINST3("usub16 r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 1225 TESTINST3("usub16 r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 1226 TESTINST3("usub16 r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 1227 TESTINST3("usub16 r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 1228 TESTINST3("usub16 r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 1229 TESTINST3("usub16 r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 1230 TESTINST3("usub16 r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 1231 TESTINST3("usub16 r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 1232 TESTINST3("usub16 r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 1233 TESTINST3("usub16 r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 1234 TESTINST3("usub16 r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 1235 TESTINST3("usub16 r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 1236 TESTINST3("usub16 r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 1237 TESTINST3("usub16 r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 1238 TESTINST3("usub16 r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 1239 TESTINST3("usub16 r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 1240 TESTINST3("usub16 r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 1241 1242 printf("---------------- SSUB16 ---------------- \n"); 1243 TESTINST3("ssub16 r0, r1, r2", 0x04000022, 0x03000011, r0, r1, r2, 0); 1244 TESTINST3("ssub16 r0, r1, r2", 0x0009ffff, 0x00180003, r0, r1, r2, 0); 1245 TESTINST3("ssub16 r0, r1, r2", 0x00180003, 0x0009ffff, r0, r1, r2, 0); 1246 TESTINST3("ssub16 r0, r1, r2", 0x00030018, 0xffff0009, r0, r1, r2, 0); 1247 TESTINST3("ssub16 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 1248 1249 TESTINST3("ssub16 r0, r1, r2", 0x00000000, 0x00000000, r0, r1, r2, 0); 1250 TESTINST3("ssub16 r0, r1, r2", 0x00000001, 0x00000000, r0, r1, r2, 0); 1251 TESTINST3("ssub16 r0, r1, r2", 0x00000000, 0x00000001, r0, r1, r2, 0); 1252 TESTINST3("ssub16 r0, r1, r2", 0x00000001, 0x00000001, r0, r1, r2, 0); 1253 TESTINST3("ssub16 r0, r1, r2", 0x00000000, 0x0000ffff, r0, r1, r2, 0); 1254 TESTINST3("ssub16 r0, r1, r2", 0x0000ffff, 0x00000000, r0, r1, r2, 0); 1255 TESTINST3("ssub16 r0, r1, r2", 0x0000ffff, 0x0000ffff, r0, r1, r2, 0); 1256 1257 TESTINST3("ssub16 r0, r1, r2", 0x00000000, 0x00000000, r0, r1, r2, 0); 1258 TESTINST3("ssub16 r0, r1, r2", 0x00010000, 0x00000000, r0, r1, r2, 0); 1259 TESTINST3("ssub16 r0, r1, r2", 0x00000000, 0x00010000, r0, r1, r2, 0); 1260 TESTINST3("ssub16 r0, r1, r2", 0x00010000, 0x00010000, r0, r1, r2, 0); 1261 TESTINST3("ssub16 r0, r1, r2", 0x00000000, 0xffff0000, r0, r1, r2, 0); 1262 TESTINST3("ssub16 r0, r1, r2", 0xffff0000, 0x00000000, r0, r1, r2, 0); 1263 TESTINST3("ssub16 r0, r1, r2", 0xffff0000, 0xffff0000, r0, r1, r2, 0); 1264 1265 TESTINST3("ssub16 r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 1266 TESTINST3("ssub16 r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 1267 TESTINST3("ssub16 r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 1268 TESTINST3("ssub16 r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 1269 TESTINST3("ssub16 r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 1270 TESTINST3("ssub16 r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 1271 TESTINST3("ssub16 r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 1272 TESTINST3("ssub16 r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 1273 TESTINST3("ssub16 r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 1274 TESTINST3("ssub16 r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 1275 TESTINST3("ssub16 r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 1276 TESTINST3("ssub16 r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 1277 TESTINST3("ssub16 r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 1278 TESTINST3("ssub16 r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 1279 TESTINST3("ssub16 r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 1280 TESTINST3("ssub16 r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 1281 TESTINST3("ssub16 r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 1282 TESTINST3("ssub16 r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 1283 TESTINST3("ssub16 r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 1284 TESTINST3("ssub16 r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 1285 TESTINST3("ssub16 r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 1286 TESTINST3("ssub16 r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 1287 TESTINST3("ssub16 r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 1288 TESTINST3("ssub16 r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 1289 TESTINST3("ssub16 r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 1290 TESTINST3("ssub16 r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 1291 TESTINST3("ssub16 r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 1292 TESTINST3("ssub16 r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 1293 TESTINST3("ssub16 r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 1294 TESTINST3("ssub16 r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 1295 TESTINST3("ssub16 r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 1296 TESTINST3("ssub16 r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 1297 TESTINST3("ssub16 r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 1298 TESTINST3("ssub16 r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 1299 TESTINST3("ssub16 r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 1300 TESTINST3("ssub16 r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 1301 TESTINST3("ssub16 r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 1302 TESTINST3("ssub16 r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 1303 TESTINST3("ssub16 r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 1304 TESTINST3("ssub16 r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 1305 TESTINST3("ssub16 r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 1306 TESTINST3("ssub16 r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 1307 TESTINST3("ssub16 r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 1308 TESTINST3("ssub16 r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 1309 TESTINST3("ssub16 r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 1310 TESTINST3("ssub16 r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 1311 TESTINST3("ssub16 r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 1312 TESTINST3("ssub16 r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 1313 TESTINST3("ssub16 r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 1314 TESTINST3("ssub16 r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 1315 1316 printf("---------------- UADD8 ----------------- \n"); 1317 TESTINST3("uadd8 r0, r1, r2", 0x0009ffff, 0x00180003, r0, r1, r2, 0); 1318 TESTINST3("uadd8 r0, r1, r2", 0x00180003, 0x0009ffff, r0, r1, r2, 0); 1319 TESTINST3("uadd8 r0, r1, r2", 0x00030018, 0xffff0009, r0, r1, r2, 0); 1320 TESTINST3("uadd8 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 1321 TESTINST3("uadd8 r0, r1, r2", 0x00000318, 0xff00ff09, r0, r1, r2, 0); 1322 TESTINST3("uadd8 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 1323 TESTINST3("uadd8 r0, r1, r2", 0x00020318, 0xff07ff09, r0, r1, r2, 0); 1324 TESTINST3("uadd8 r0, r1, r2", 0xff07ff09, 0x00020318, r0, r1, r2, 0); 1325 TESTINST3("uadd8 r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 1326 TESTINST3("uadd8 r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 1327 TESTINST3("uadd8 r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 1328 TESTINST3("uadd8 r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 1329 TESTINST3("uadd8 r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 1330 TESTINST3("uadd8 r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 1331 TESTINST3("uadd8 r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 1332 TESTINST3("uadd8 r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 1333 TESTINST3("uadd8 r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 1334 TESTINST3("uadd8 r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 1335 TESTINST3("uadd8 r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 1336 TESTINST3("uadd8 r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 1337 TESTINST3("uadd8 r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 1338 TESTINST3("uadd8 r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 1339 TESTINST3("uadd8 r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 1340 TESTINST3("uadd8 r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 1341 TESTINST3("uadd8 r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 1342 TESTINST3("uadd8 r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 1343 TESTINST3("uadd8 r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 1344 TESTINST3("uadd8 r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 1345 TESTINST3("uadd8 r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 1346 TESTINST3("uadd8 r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 1347 TESTINST3("uadd8 r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 1348 TESTINST3("uadd8 r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 1349 TESTINST3("uadd8 r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 1350 TESTINST3("uadd8 r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 1351 TESTINST3("uadd8 r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 1352 TESTINST3("uadd8 r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 1353 TESTINST3("uadd8 r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 1354 TESTINST3("uadd8 r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 1355 TESTINST3("uadd8 r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 1356 TESTINST3("uadd8 r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 1357 TESTINST3("uadd8 r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 1358 TESTINST3("uadd8 r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 1359 TESTINST3("uadd8 r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 1360 TESTINST3("uadd8 r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 1361 TESTINST3("uadd8 r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 1362 TESTINST3("uadd8 r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 1363 TESTINST3("uadd8 r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 1364 TESTINST3("uadd8 r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 1365 TESTINST3("uadd8 r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 1366 TESTINST3("uadd8 r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 1367 TESTINST3("uadd8 r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 1368 TESTINST3("uadd8 r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 1369 TESTINST3("uadd8 r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 1370 TESTINST3("uadd8 r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 1371 TESTINST3("uadd8 r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 1372 TESTINST3("uadd8 r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 1373 TESTINST3("uadd8 r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 1374 TESTINST3("uadd8 r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 1375 1376 printf("---------------- USUB8 ----------------- \n"); 1377 TESTINST3("usub8 r0, r1, r2", 0x0009ffff, 0x00180003, r0, r1, r2, 0); 1378 TESTINST3("usub8 r0, r1, r2", 0x00180003, 0x0009ffff, r0, r1, r2, 0); 1379 TESTINST3("usub8 r0, r1, r2", 0x00030018, 0xffff0009, r0, r1, r2, 0); 1380 TESTINST3("usub8 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 1381 TESTINST3("usub8 r0, r1, r2", 0x00000318, 0xff00ff09, r0, r1, r2, 0); 1382 TESTINST3("usub8 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 1383 TESTINST3("usub8 r0, r1, r2", 0x00020318, 0xff07ff09, r0, r1, r2, 0); 1384 TESTINST3("usub8 r0, r1, r2", 0xff07ff09, 0x00020318, r0, r1, r2, 0); 1385 TESTINST3("usub8 r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 1386 TESTINST3("usub8 r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 1387 TESTINST3("usub8 r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 1388 TESTINST3("usub8 r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 1389 TESTINST3("usub8 r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 1390 TESTINST3("usub8 r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 1391 TESTINST3("usub8 r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 1392 TESTINST3("usub8 r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 1393 TESTINST3("usub8 r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 1394 TESTINST3("usub8 r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 1395 TESTINST3("usub8 r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 1396 TESTINST3("usub8 r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 1397 TESTINST3("usub8 r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 1398 TESTINST3("usub8 r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 1399 TESTINST3("usub8 r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 1400 TESTINST3("usub8 r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 1401 TESTINST3("usub8 r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 1402 TESTINST3("usub8 r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 1403 TESTINST3("usub8 r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 1404 TESTINST3("usub8 r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 1405 TESTINST3("usub8 r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 1406 TESTINST3("usub8 r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 1407 TESTINST3("usub8 r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 1408 TESTINST3("usub8 r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 1409 TESTINST3("usub8 r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 1410 TESTINST3("usub8 r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 1411 TESTINST3("usub8 r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 1412 TESTINST3("usub8 r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 1413 TESTINST3("usub8 r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 1414 TESTINST3("usub8 r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 1415 TESTINST3("usub8 r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 1416 TESTINST3("usub8 r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 1417 TESTINST3("usub8 r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 1418 TESTINST3("usub8 r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 1419 TESTINST3("usub8 r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 1420 TESTINST3("usub8 r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 1421 TESTINST3("usub8 r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 1422 TESTINST3("usub8 r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 1423 TESTINST3("usub8 r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 1424 TESTINST3("usub8 r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 1425 TESTINST3("usub8 r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 1426 TESTINST3("usub8 r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 1427 TESTINST3("usub8 r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 1428 TESTINST3("usub8 r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 1429 TESTINST3("usub8 r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 1430 TESTINST3("usub8 r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 1431 TESTINST3("usub8 r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 1432 TESTINST3("usub8 r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 1433 TESTINST3("usub8 r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 1434 TESTINST3("usub8 r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 1435 1436 printf("---------------- QADD16 ---------------- \n"); 1437 TESTINST3("qadd16 r0, r1, r2", 0x0009ffff, 0x00180003, r0, r1, r2, 0); 1438 TESTINST3("qadd16 r0, r1, r2", 0x00180003, 0x0009ffff, r0, r1, r2, 0); 1439 TESTINST3("qadd16 r0, r1, r2", 0x00030018, 0xffff0009, r0, r1, r2, 0); 1440 TESTINST3("qadd16 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 1441 TESTINST3("qadd16 r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 1442 TESTINST3("qadd16 r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 1443 TESTINST3("qadd16 r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 1444 TESTINST3("qadd16 r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 1445 TESTINST3("qadd16 r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 1446 TESTINST3("qadd16 r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 1447 TESTINST3("qadd16 r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 1448 TESTINST3("qadd16 r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 1449 TESTINST3("qadd16 r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 1450 TESTINST3("qadd16 r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 1451 TESTINST3("qadd16 r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 1452 TESTINST3("qadd16 r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 1453 TESTINST3("qadd16 r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 1454 TESTINST3("qadd16 r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 1455 TESTINST3("qadd16 r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 1456 TESTINST3("qadd16 r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 1457 TESTINST3("qadd16 r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 1458 TESTINST3("qadd16 r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 1459 TESTINST3("qadd16 r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 1460 TESTINST3("qadd16 r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 1461 TESTINST3("qadd16 r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 1462 TESTINST3("qadd16 r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 1463 TESTINST3("qadd16 r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 1464 TESTINST3("qadd16 r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 1465 TESTINST3("qadd16 r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 1466 TESTINST3("qadd16 r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 1467 TESTINST3("qadd16 r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 1468 TESTINST3("qadd16 r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 1469 TESTINST3("qadd16 r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 1470 TESTINST3("qadd16 r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 1471 TESTINST3("qadd16 r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 1472 TESTINST3("qadd16 r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 1473 TESTINST3("qadd16 r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 1474 TESTINST3("qadd16 r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 1475 TESTINST3("qadd16 r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 1476 TESTINST3("qadd16 r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 1477 TESTINST3("qadd16 r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 1478 TESTINST3("qadd16 r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 1479 TESTINST3("qadd16 r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 1480 TESTINST3("qadd16 r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 1481 TESTINST3("qadd16 r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 1482 TESTINST3("qadd16 r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 1483 TESTINST3("qadd16 r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 1484 TESTINST3("qadd16 r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 1485 TESTINST3("qadd16 r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 1486 TESTINST3("qadd16 r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 1487 TESTINST3("qadd16 r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 1488 TESTINST3("qadd16 r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 1489 TESTINST3("qadd16 r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 1490 TESTINST3("qadd16 r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 1491 1492 printf("---------------- QSUB16 ---------------- \n"); 1493 TESTINST3("qsub16 r0, r1, r2", 0x0009ffff, 0x00180003, r0, r1, r2, 0); 1494 TESTINST3("qsub16 r0, r1, r2", 0x00180003, 0x0009ffff, r0, r1, r2, 0); 1495 TESTINST3("qsub16 r0, r1, r2", 0x00030018, 0xffff0009, r0, r1, r2, 0); 1496 TESTINST3("qsub16 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 1497 TESTINST3("qsub16 r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 1498 TESTINST3("qsub16 r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 1499 TESTINST3("qsub16 r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 1500 TESTINST3("qsub16 r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 1501 TESTINST3("qsub16 r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 1502 TESTINST3("qsub16 r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 1503 TESTINST3("qsub16 r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 1504 TESTINST3("qsub16 r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 1505 TESTINST3("qsub16 r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 1506 TESTINST3("qsub16 r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 1507 TESTINST3("qsub16 r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 1508 TESTINST3("qsub16 r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 1509 TESTINST3("qsub16 r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 1510 TESTINST3("qsub16 r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 1511 TESTINST3("qsub16 r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 1512 TESTINST3("qsub16 r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 1513 TESTINST3("qsub16 r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 1514 TESTINST3("qsub16 r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 1515 TESTINST3("qsub16 r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 1516 TESTINST3("qsub16 r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 1517 TESTINST3("qsub16 r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 1518 TESTINST3("qsub16 r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 1519 TESTINST3("qsub16 r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 1520 TESTINST3("qsub16 r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 1521 TESTINST3("qsub16 r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 1522 TESTINST3("qsub16 r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 1523 TESTINST3("qsub16 r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 1524 TESTINST3("qsub16 r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 1525 TESTINST3("qsub16 r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 1526 TESTINST3("qsub16 r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 1527 TESTINST3("qsub16 r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 1528 TESTINST3("qsub16 r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 1529 TESTINST3("qsub16 r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 1530 TESTINST3("qsub16 r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 1531 TESTINST3("qsub16 r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 1532 TESTINST3("qsub16 r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 1533 TESTINST3("qsub16 r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 1534 TESTINST3("qsub16 r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 1535 TESTINST3("qsub16 r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 1536 TESTINST3("qsub16 r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 1537 TESTINST3("qsub16 r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 1538 TESTINST3("qsub16 r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 1539 TESTINST3("qsub16 r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 1540 TESTINST3("qsub16 r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 1541 TESTINST3("qsub16 r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 1542 TESTINST3("qsub16 r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 1543 TESTINST3("qsub16 r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 1544 TESTINST3("qsub16 r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 1545 TESTINST3("qsub16 r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 1546 TESTINST3("qsub16 r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 1547 1548 printf("----------------- QSAX ----------------- \n"); 1549 TESTINST3("qsax r0, r1, r2", 0x7fff7fff, 0x00000000, r0, r1, r2, 0); 1550 TESTINST3("qsax r0, r1, r2", 0x7fff7fff, 0x00010001, r0, r1, r2, 0); 1551 TESTINST3("qsax r0, r1, r2", 0x80008000, 0x00000000, r0, r1, r2, 0); 1552 TESTINST3("qsax r0, r1, r2", 0x80008000, 0xffffffff, r0, r1, r2, 0); 1553 TESTINST3("qsax r0, r1, r2", 0x00640064, 0x00030003, r0, r1, r2, 0); 1554 TESTINST3("qsax r0, r1, r2", 0x00030003, 0x00640064, r0, r1, r2, 0); 1555 TESTINST3("qsax r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 1556 TESTINST3("qsax r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 1557 TESTINST3("qsax r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 1558 TESTINST3("qsax r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 1559 TESTINST3("qsax r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 1560 TESTINST3("qsax r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 1561 TESTINST3("qsax r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 1562 TESTINST3("qsax r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 1563 TESTINST3("qsax r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 1564 TESTINST3("qsax r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 1565 TESTINST3("qsax r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 1566 TESTINST3("qsax r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 1567 TESTINST3("qsax r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 1568 TESTINST3("qsax r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 1569 TESTINST3("qsax r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 1570 TESTINST3("qsax r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 1571 TESTINST3("qsax r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 1572 TESTINST3("qsax r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 1573 TESTINST3("qsax r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 1574 TESTINST3("qsax r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 1575 TESTINST3("qsax r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 1576 TESTINST3("qsax r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 1577 TESTINST3("qsax r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 1578 TESTINST3("qsax r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 1579 TESTINST3("qsax r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 1580 TESTINST3("qsax r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 1581 TESTINST3("qsax r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 1582 TESTINST3("qsax r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 1583 TESTINST3("qsax r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 1584 TESTINST3("qsax r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 1585 TESTINST3("qsax r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 1586 TESTINST3("qsax r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 1587 TESTINST3("qsax r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 1588 TESTINST3("qsax r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 1589 TESTINST3("qsax r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 1590 TESTINST3("qsax r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 1591 TESTINST3("qsax r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 1592 TESTINST3("qsax r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 1593 TESTINST3("qsax r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 1594 TESTINST3("qsax r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 1595 TESTINST3("qsax r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 1596 TESTINST3("qsax r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 1597 TESTINST3("qsax r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 1598 TESTINST3("qsax r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 1599 TESTINST3("qsax r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 1600 TESTINST3("qsax r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 1601 TESTINST3("qsax r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 1602 TESTINST3("qsax r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 1603 TESTINST3("qsax r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 1604 TESTINST3("qsax r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 1605 1606 printf("----------------- QASX ----------------- \n"); 1607 TESTINST3("qasx r0, r1, r2", 0x7fff7fff, 0x00000000, r0, r1, r2, 0); 1608 TESTINST3("qasx r0, r1, r2", 0x7fff7fff, 0x00010001, r0, r1, r2, 0); 1609 TESTINST3("qasx r0, r1, r2", 0x80008000, 0x00000000, r0, r1, r2, 0); 1610 TESTINST3("qasx r0, r1, r2", 0x80008000, 0xffffffff, r0, r1, r2, 0); 1611 TESTINST3("qasx r0, r1, r2", 0x00640064, 0x00030003, r0, r1, r2, 0); 1612 TESTINST3("qasx r0, r1, r2", 0x00030003, 0x00640064, r0, r1, r2, 0); 1613 TESTINST3("qasx r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 1614 TESTINST3("qasx r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 1615 TESTINST3("qasx r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 1616 TESTINST3("qasx r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 1617 TESTINST3("qasx r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 1618 TESTINST3("qasx r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 1619 TESTINST3("qasx r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 1620 TESTINST3("qasx r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 1621 TESTINST3("qasx r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 1622 TESTINST3("qasx r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 1623 TESTINST3("qasx r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 1624 TESTINST3("qasx r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 1625 TESTINST3("qasx r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 1626 TESTINST3("qasx r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 1627 TESTINST3("qasx r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 1628 TESTINST3("qasx r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 1629 TESTINST3("qasx r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 1630 TESTINST3("qasx r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 1631 TESTINST3("qasx r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 1632 TESTINST3("qasx r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 1633 TESTINST3("qasx r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 1634 TESTINST3("qasx r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 1635 TESTINST3("qasx r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 1636 TESTINST3("qasx r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 1637 TESTINST3("qasx r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 1638 TESTINST3("qasx r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 1639 TESTINST3("qasx r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 1640 TESTINST3("qasx r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 1641 TESTINST3("qasx r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 1642 TESTINST3("qasx r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 1643 TESTINST3("qasx r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 1644 TESTINST3("qasx r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 1645 TESTINST3("qasx r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 1646 TESTINST3("qasx r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 1647 TESTINST3("qasx r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 1648 TESTINST3("qasx r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 1649 TESTINST3("qasx r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 1650 TESTINST3("qasx r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 1651 TESTINST3("qasx r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 1652 TESTINST3("qasx r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 1653 TESTINST3("qasx r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 1654 TESTINST3("qasx r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 1655 TESTINST3("qasx r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 1656 TESTINST3("qasx r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 1657 TESTINST3("qasx r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 1658 TESTINST3("qasx r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 1659 TESTINST3("qasx r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 1660 TESTINST3("qasx r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 1661 TESTINST3("qasx r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 1662 TESTINST3("qasx r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 1663 1664 printf("----------------- SASX ----------------- \n"); 1665 TESTINST3("sasx r0, r1, r2", 0x7fff7fff, 0x00000000, r0, r1, r2, 0); 1666 TESTINST3("sasx r0, r1, r2", 0x7fff7fff, 0x00010001, r0, r1, r2, 0); 1667 TESTINST3("sasx r0, r1, r2", 0x80008000, 0x00000000, r0, r1, r2, 0); 1668 TESTINST3("sasx r0, r1, r2", 0x80008000, 0xffffffff, r0, r1, r2, 0); 1669 TESTINST3("sasx r0, r1, r2", 0x00640064, 0x00030003, r0, r1, r2, 0); 1670 TESTINST3("sasx r0, r1, r2", 0x00030003, 0x00640064, r0, r1, r2, 0); 1671 TESTINST3("sasx r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 1672 TESTINST3("sasx r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 1673 TESTINST3("sasx r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 1674 TESTINST3("sasx r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 1675 TESTINST3("sasx r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 1676 TESTINST3("sasx r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 1677 TESTINST3("sasx r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 1678 TESTINST3("sasx r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 1679 TESTINST3("sasx r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 1680 TESTINST3("sasx r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 1681 TESTINST3("sasx r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 1682 TESTINST3("sasx r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 1683 TESTINST3("sasx r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 1684 TESTINST3("sasx r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 1685 TESTINST3("sasx r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 1686 TESTINST3("sasx r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 1687 TESTINST3("sasx r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 1688 TESTINST3("sasx r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 1689 TESTINST3("sasx r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 1690 TESTINST3("sasx r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 1691 TESTINST3("sasx r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 1692 TESTINST3("sasx r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 1693 TESTINST3("sasx r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 1694 TESTINST3("sasx r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 1695 TESTINST3("sasx r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 1696 TESTINST3("sasx r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 1697 TESTINST3("sasx r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 1698 TESTINST3("sasx r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 1699 TESTINST3("sasx r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 1700 TESTINST3("sasx r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 1701 TESTINST3("sasx r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 1702 TESTINST3("sasx r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 1703 TESTINST3("sasx r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 1704 TESTINST3("sasx r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 1705 TESTINST3("sasx r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 1706 TESTINST3("sasx r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 1707 TESTINST3("sasx r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 1708 TESTINST3("sasx r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 1709 TESTINST3("sasx r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 1710 TESTINST3("sasx r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 1711 TESTINST3("sasx r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 1712 TESTINST3("sasx r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 1713 TESTINST3("sasx r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 1714 TESTINST3("sasx r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 1715 TESTINST3("sasx r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 1716 TESTINST3("sasx r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 1717 TESTINST3("sasx r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 1718 TESTINST3("sasx r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 1719 TESTINST3("sasx r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 1720 TESTINST3("sasx r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 1721 1722 printf("----------------- SMUAD ----------------- \n"); 1723 TESTINST3("smuad r0, r1, r2", 0x80008000, 0x80008000, r0, r1, r2, 0); 1724 TESTINST3("smuad r0, r1, r2", 0x7fff7fff, 0x00000000, r0, r1, r2, 0); 1725 TESTINST3("smuad r0, r1, r2", 0x7fff7fff, 0x00010001, r0, r1, r2, 0); 1726 TESTINST3("smuad r0, r1, r2", 0x80008000, 0xffffffff, r0, r1, r2, 0); 1727 TESTINST3("smuad r0, r1, r2", 0x00640064, 0x00030003, r0, r1, r2, 0); 1728 TESTINST3("smuad r0, r1, r2", 0xffffffff, 0xfffc0001, r0, r1, r2, 0); 1729 TESTINST3("smuad r0, r1, r2", 0xfff70fff, 0x00030003, r0, r1, r2, 0); 1730 TESTINST3("smuad r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 1731 TESTINST3("smuad r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 1732 TESTINST3("smuad r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 1733 TESTINST3("smuad r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 1734 TESTINST3("smuad r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 1735 TESTINST3("smuad r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 1736 TESTINST3("smuad r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 1737 TESTINST3("smuad r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 1738 TESTINST3("smuad r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 1739 TESTINST3("smuad r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 1740 TESTINST3("smuad r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 1741 TESTINST3("smuad r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 1742 TESTINST3("smuad r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 1743 TESTINST3("smuad r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 1744 TESTINST3("smuad r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 1745 TESTINST3("smuad r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 1746 TESTINST3("smuad r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 1747 TESTINST3("smuad r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 1748 TESTINST3("smuad r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 1749 TESTINST3("smuad r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 1750 TESTINST3("smuad r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 1751 TESTINST3("smuad r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 1752 TESTINST3("smuad r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 1753 TESTINST3("smuad r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 1754 TESTINST3("smuad r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 1755 TESTINST3("smuad r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 1756 TESTINST3("smuad r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 1757 TESTINST3("smuad r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 1758 TESTINST3("smuad r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 1759 TESTINST3("smuad r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 1760 TESTINST3("smuad r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 1761 TESTINST3("smuad r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 1762 TESTINST3("smuad r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 1763 TESTINST3("smuad r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 1764 TESTINST3("smuad r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 1765 TESTINST3("smuad r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 1766 TESTINST3("smuad r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 1767 TESTINST3("smuad r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 1768 TESTINST3("smuad r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 1769 TESTINST3("smuad r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 1770 TESTINST3("smuad r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 1771 TESTINST3("smuad r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 1772 TESTINST3("smuad r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 1773 TESTINST3("smuad r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 1774 TESTINST3("smuad r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 1775 TESTINST3("smuad r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 1776 TESTINST3("smuad r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 1777 TESTINST3("smuad r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 1778 TESTINST3("smuad r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 1779 TESTINST3("smuad r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 1780 printf("----------------- SMUADX ---------------- \n"); 1781 TESTINST3("smuadx r0, r1, r2", 0x80008000, 0x80008000, r0, r1, r2, 0); 1782 TESTINST3("smuadx r0, r1, r2", 0x7fff7fff, 0x00000000, r0, r1, r2, 0); 1783 TESTINST3("smuadx r0, r1, r2", 0x7fff7fff, 0x00010001, r0, r1, r2, 0); 1784 TESTINST3("smuadx r0, r1, r2", 0x80008000, 0xffffffff, r0, r1, r2, 0); 1785 TESTINST3("smuadx r0, r1, r2", 0x00640064, 0x00030003, r0, r1, r2, 0); 1786 TESTINST3("smuadx r0, r1, r2", 0xffffffff, 0xfffc0001, r0, r1, r2, 0); 1787 TESTINST3("smuadx r0, r1, r2", 0xfff70fff, 0x00030003, r0, r1, r2, 0); 1788 TESTINST3("smuadx r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 1789 TESTINST3("smuadx r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 1790 TESTINST3("smuadx r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 1791 TESTINST3("smuadx r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 1792 TESTINST3("smuadx r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 1793 TESTINST3("smuadx r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 1794 TESTINST3("smuadx r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 1795 TESTINST3("smuadx r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 1796 TESTINST3("smuadx r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 1797 TESTINST3("smuadx r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 1798 TESTINST3("smuadx r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 1799 TESTINST3("smuadx r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 1800 TESTINST3("smuadx r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 1801 TESTINST3("smuadx r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 1802 TESTINST3("smuadx r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 1803 TESTINST3("smuadx r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 1804 TESTINST3("smuadx r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 1805 TESTINST3("smuadx r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 1806 TESTINST3("smuadx r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 1807 TESTINST3("smuadx r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 1808 TESTINST3("smuadx r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 1809 TESTINST3("smuadx r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 1810 TESTINST3("smuadx r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 1811 TESTINST3("smuadx r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 1812 TESTINST3("smuadx r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 1813 TESTINST3("smuadx r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 1814 TESTINST3("smuadx r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 1815 TESTINST3("smuadx r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 1816 TESTINST3("smuadx r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 1817 TESTINST3("smuadx r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 1818 TESTINST3("smuadx r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 1819 TESTINST3("smuadx r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 1820 TESTINST3("smuadx r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 1821 TESTINST3("smuadx r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 1822 TESTINST3("smuadx r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 1823 TESTINST3("smuadx r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 1824 TESTINST3("smuadx r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 1825 TESTINST3("smuadx r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 1826 TESTINST3("smuadx r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 1827 TESTINST3("smuadx r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 1828 TESTINST3("smuadx r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 1829 TESTINST3("smuadx r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 1830 TESTINST3("smuadx r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 1831 TESTINST3("smuadx r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 1832 TESTINST3("smuadx r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 1833 TESTINST3("smuadx r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 1834 TESTINST3("smuadx r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 1835 TESTINST3("smuadx r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 1836 TESTINST3("smuadx r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 1837 TESTINST3("smuadx r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 1838 1839 printf("----------------- SMLAD ----------------- \n"); 1840 TESTINST4("smlad r0, r1, r2, r3", 1841 0x80008000, 0x80008000, 0x00000000, r0, r1, r2, r3, 0); 1842 TESTINST4("smlad r0, r1, r2, r3", 1843 0x7fff7fff, 0x00000000, 0x00000000, r0, r1, r2, r3, 0); 1844 TESTINST4("smlad r0, r1, r2, r3", 1845 0x7fff7fff, 0x00010001, 0x00000001, r0, r1, r2, r3, 0); 1846 TESTINST4("smlad r0, r1, r2, r3", 1847 0x80008000, 0xffffffff, 0x0000001f, r0, r1, r2, r3, 0); 1848 TESTINST4("smlad r0, r1, r2, r3", 1849 0x00640064, 0x00030003, 0x00000020, r0, r1, r2, r3, 0); 1850 TESTINST4("smlad r0, r1, r2, r3", 1851 0xffffffff, 0xfffc0001, 0x000000ff, r0, r1, r2, r3, 0); 1852 TESTINST4("smlad r0, r1, r2, r3", 1853 0xfff70fff, 0x00030003, 0x00000100, r0, r1, r2, r3, 0); 1854 TESTINST4("smlad r0, r1, r2, r3", 1855 0xb8035b5b, 0xce0ce1ed, 0x5f986e68, r0, r1, r2, r3, 0); 1856 TESTINST4("smlad r0, r1, r2, r3", 1857 0x35232047, 0x146275d8, 0xaae3433f, r0, r1, r2, r3, 0); 1858 TESTINST4("smlad r0, r1, r2, r3", 1859 0xe7aa57b4, 0x1584bd74, 0x2c07a5b4, r0, r1, r2, r3, 0); 1860 TESTINST4("smlad r0, r1, r2, r3", 1861 0x32fa0095, 0x36f26261, 0x89d2ef86, r0, r1, r2, r3, 0); 1862 TESTINST4("smlad r0, r1, r2, r3", 1863 0x8ed8287c, 0x02c90120, 0xd4b64d54, r0, r1, r2, r3, 0); 1864 TESTINST4("smlad r0, r1, r2, r3", 1865 0xc53aaba9, 0x29300837, 0x0b02c58a, r0, r1, r2, r3, 0); 1866 TESTINST4("smlad r0, r1, r2, r3", 1867 0x216158cb, 0x57a50a01, 0xb0d20777, r0, r1, r2, r3, 0); 1868 TESTINST4("smlad r0, r1, r2, r3", 1869 0x3e2e1bd7, 0x3cd6cd94, 0x7e376198, r0, r1, r2, r3, 0); 1870 TESTINST4("smlad r0, r1, r2, r3", 1871 0xd5fe2dc4, 0xdd914bf7, 0xd5dc5407, r0, r1, r2, r3, 0); 1872 TESTINST4("smlad r0, r1, r2, r3", 1873 0xf87b961e, 0x1d66879f, 0xf2b64835, r0, r1, r2, r3, 0); 1874 TESTINST4("smlad r0, r1, r2, r3", 1875 0xd65db979, 0xc61b323b, 0xae930a1a, r0, r1, r2, r3, 0); 1876 TESTINST4("smlad r0, r1, r2, r3", 1877 0x5ef1f1a8, 0xbf73f0a5, 0x2fb714c9, r0, r1, r2, r3, 0); 1878 TESTINST4("smlad r0, r1, r2, r3", 1879 0x1ffe53d9, 0x815bb75b, 0xa3268abe, r0, r1, r2, r3, 0); 1880 TESTINST4("smlad r0, r1, r2, r3", 1881 0xed2cbf78, 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, r3, 0); 1882 TESTINST4("smlad r0, r1, r2, r3", 1883 0xeaa652c7, 0x137741f4, 0x3dba1164, r0, r1, r2, r3, 0); 1884 TESTINST4("smlad r0, r1, r2, r3", 1885 0x3ada0280, 0x71fbde8b, 0xdba5bd25, r0, r1, r2, r3, 0); 1886 TESTINST4("smlad r0, r1, r2, r3", 1887 0xda4ba05b, 0x90f9833d, 0x884c0ad8, r0, r1, r2, r3, 0); 1888 TESTINST4("smlad r0, r1, r2, r3", 1889 0xc00b821a, 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, r3, 0); 1890 TESTINST4("smlad r0, r1, r2, r3", 1891 0xe1bb8606, 0x58293969, 0x81616d13, r0, r1, r2, r3, 0); 1892 TESTINST4("smlad r0, r1, r2, r3", 1893 0x51f31d95, 0xa3cfd624, 0x6077fb1f, r0, r1, r2, r3, 0); 1894 TESTINST4("smlad r0, r1, r2, r3", 1895 0x0849a0c2, 0x0872f25a, 0x40b094e2, r0, r1, r2, r3, 0); 1896 TESTINST4("smlad r0, r1, r2, r3", 1897 0x17913309, 0xf1e03d7e, 0x91edc21d, r0, r1, r2, r3, 0); 1898 TESTINST4("smlad r0, r1, r2, r3", 1899 0x5388b5cd, 0x86582032, 0x6034078d, r0, r1, r2, r3, 0); 1900 TESTINST4("smlad r0, r1, r2, r3", 1901 0x181c436b, 0x5de41558, 0xccfa1c7e, r0, r1, r2, r3, 0); 1902 TESTINST4("smlad r0, r1, r2, r3", 1903 0x23ba1b46, 0x4437983c, 0x48d06549, r0, r1, r2, r3, 0); 1904 TESTINST4("smlad r0, r1, r2, r3", 1905 0xa9085781, 0xc6b4ac58, 0xb2aead21, r0, r1, r2, r3, 0); 1906 TESTINST4("smlad r0, r1, r2, r3", 1907 0xc2bdf597, 0xdde1e6a4, 0x852e3a72, r0, r1, r2, r3, 0); 1908 TESTINST4("smlad r0, r1, r2, r3", 1909 0x157b0dea, 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, r3, 0); 1910 TESTINST4("smlad r0, r1, r2, r3", 1911 0x3edad6b6, 0x82aceb7a, 0x0557c6fc, r0, r1, r2, r3, 0); 1912 TESTINST4("smlad r0, r1, r2, r3", 1913 0x6cc9bfa8, 0x7f808c15, 0x81874a02, r0, r1, r2, r3, 0); 1914 TESTINST4("smlad r0, r1, r2, r3", 1915 0x6b1422c7, 0x33921b00, 0x3ccad3f7, r0, r1, r2, r3, 0); 1916 TESTINST4("smlad r0, r1, r2, r3", 1917 0xd7ce1909, 0x3e435701, 0x85fbf196, r0, r1, r2, r3, 0); 1918 TESTINST4("smlad r0, r1, r2, r3", 1919 0xb4e16b6e, 0x6e13680a, 0x89436f88, r0, r1, r2, r3, 0); 1920 TESTINST4("smlad r0, r1, r2, r3", 1921 0x44858efc, 0x9002bc30, 0x390d2c2f, r0, r1, r2, r3, 0); 1922 TESTINST4("smlad r0, r1, r2, r3", 1923 0xbea121ab, 0x953ff6ec, 0x80657c40, r0, r1, r2, r3, 0); 1924 TESTINST4("smlad r0, r1, r2, r3", 1925 0x6ffed89f, 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, r3, 0); 1926 TESTINST4("smlad r0, r1, r2, r3", 1927 0x7795635d, 0x5e6e32dd, 0xe4999bf2, r0, r1, r2, r3, 0); 1928 TESTINST4("smlad r0, r1, r2, r3", 1929 0xec0c2f30, 0x5736ed46, 0x231348c0, r0, r1, r2, r3, 0); 1930 TESTINST4("smlad r0, r1, r2, r3", 1931 0x4f9ddd1b, 0x95bca5d8, 0x5765b203, r0, r1, r2, r3, 0); 1932 TESTINST4("smlad r0, r1, r2, r3", 1933 0xc1553709, 0x0112b30a, 0x69ec0212, r0, r1, r2, r3, 0); 1934 TESTINST4("smlad r0, r1, r2, r3", 1935 0x74bd0223, 0x03fa9bb5, 0x899d9192, r0, r1, r2, r3, 0); 1936 TESTINST4("smlad r0, r1, r2, r3", 1937 0xf52e9fbf, 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, r3, 0); 1938 TESTINST4("smlad r0, r1, r2, r3", 1939 0x64a365ef, 0x2dd01366, 0xf7b0b13e, r0, r1, r2, r3, 0); 1940 TESTINST4("smlad r0, r1, r2, r3", 1941 0x5e4b1cbf, 0x44de5ca9, 0x464a21cc, r0, r1, r2, r3, 0); 1942 TESTINST4("smlad r0, r1, r2, r3", 1943 0x299da970, 0xe8108f1b, 0xf5818cfb, r0, r1, r2, r3, 0); 1944 TESTINST4("smlad r0, r1, r2, r3", 1945 0xcd90d604, 0xaa5e9444, 0x8217b7df, r0, r1, r2, r3, 0); 1946 TESTINST4("smlad r0, r1, r2, r3", 1947 0xe60743c3, 0x7acb4de3, 0x73c29060, r0, r1, r2, r3, 0); 1948 TESTINST4("smlad r0, r1, r2, r3", 1949 0x868e7c7d, 0x5f77532e, 0x1d133d3d, r0, r1, r2, r3, 0); 1950 TESTINST4("smlad r0, r1, r2, r3", 1951 0x4e5e0760, 0x8f6d3264, 0x21ba2fb3, r0, r1, r2, r3, 0); 1952 TESTINST4("smlad r0, r1, r2, r3", 1953 0xde99ac2f, 0x0be36f70, 0xeda5110c, r0, r1, r2, r3, 0); 1954 TESTINST4("smlad r0, r1, r2, r3", 1955 0xc57243b7, 0xcf1e4487, 0xf20fb90f, r0, r1, r2, r3, 0); 1956 1957 printf("----------------- SMLADX ----------------- \n"); 1958 TESTINST4("smladx r0, r1, r2, r3", 1959 0x80008000, 0x80008000, 0x00000000, r0, r1, r2, r3, 0); 1960 TESTINST4("smladx r0, r1, r2, r3", 1961 0x7fff7fff, 0x00000000, 0x00000000, r0, r1, r2, r3, 0); 1962 TESTINST4("smladx r0, r1, r2, r3", 1963 0x7fff7fff, 0x00010001, 0x00000001, r0, r1, r2, r3, 0); 1964 TESTINST4("smladx r0, r1, r2, r3", 1965 0x80008000, 0xffffffff, 0x0000001f, r0, r1, r2, r3, 0); 1966 TESTINST4("smladx r0, r1, r2, r3", 1967 0x00640064, 0x00030003, 0x00000020, r0, r1, r2, r3, 0); 1968 TESTINST4("smladx r0, r1, r2, r3", 1969 0xffffffff, 0xfffc0001, 0x000000ff, r0, r1, r2, r3, 0); 1970 TESTINST4("smladx r0, r1, r2, r3", 1971 0xfff70fff, 0x00030003, 0x00000100, r0, r1, r2, r3, 0); 1972 TESTINST4("smladx r0, r1, r2, r3", 1973 0xb8035b5b, 0xce0ce1ed, 0x5f986e68, r0, r1, r2, r3, 0); 1974 TESTINST4("smladx r0, r1, r2, r3", 1975 0x35232047, 0x146275d8, 0xaae3433f, r0, r1, r2, r3, 0); 1976 TESTINST4("smladx r0, r1, r2, r3", 1977 0xe7aa57b4, 0x1584bd74, 0x2c07a5b4, r0, r1, r2, r3, 0); 1978 1979 printf("------------ SMLABB, SMLATT, SMLATB, SMLABT ------------\n"); 1980 /* smlabb rD, rN, rM, rA */ 1981 TESTINST4("smlabb r0, r1, r2, r3", 1982 0x00030000, 0x00040000, 0x00000000, r0,r1,r2,r3, 0); 1983 TESTINST4("smlabb r0, r1, r2, r3", 1984 0x00030001, 0x00040002, 0x00007fff, r0,r1,r2,r3, 0); 1985 TESTINST4("smlabb r0, r1, r2, r3", 1986 0x00038001, 0x00047fff, 0x00005fff, r0,r1,r2,r3, 0); 1987 TESTINST4("smlabb r0, r1, r2, r3", 1988 0x00037fff, 0x00047fff, 0x00007fff, r0,r1,r2,r3, 0); 1989 TESTINST4("smlabb r0, r1, r2, r3", 1990 0x0003ffff, 0x0004ffff, 0x7fff7fff, r0,r1,r2,r3, 0); 1991 TESTINST4("smlabb r0, r1, r2, r3", 1992 0x0003fffc, 0x0004ffff, 0xffffffff, r0,r1,r2,r3, 0); 1993 TESTINST4("smlabb r0, r1, r2, r3", 1994 0xb8035b5b, 0xce0ce1ed, 0x5f986e68, r0, r1, r2, r3, 0); 1995 TESTINST4("smlabb r0, r1, r2, r3", 1996 0x35232047, 0x146275d8, 0xaae3433f, r0, r1, r2, r3, 0); 1997 TESTINST4("smlabb r0, r1, r2, r3", 1998 0xe7aa57b4, 0x1584bd74, 0x2c07a5b4, r0, r1, r2, r3, 0); 1999 TESTINST4("smlabb r0, r1, r2, r3", 2000 0x32fa0095, 0x36f26261, 0x89d2ef86, r0, r1, r2, r3, 0); 2001 TESTINST4("smlabb r0, r1, r2, r3", 2002 0x8ed8287c, 0x02c90120, 0xd4b64d54, r0, r1, r2, r3, 0); 2003 TESTINST4("smlabb r0, r1, r2, r3", 2004 0xc53aaba9, 0x29300837, 0x0b02c58a, r0, r1, r2, r3, 0); 2005 TESTINST4("smlabb r0, r1, r2, r3", 2006 0x216158cb, 0x57a50a01, 0xb0d20777, r0, r1, r2, r3, 0); 2007 TESTINST4("smlabb r0, r1, r2, r3", 2008 0x3e2e1bd7, 0x3cd6cd94, 0x7e376198, r0, r1, r2, r3, 0); 2009 TESTINST4("smlabb r0, r1, r2, r3", 2010 0xd5fe2dc4, 0xdd914bf7, 0xd5dc5407, r0, r1, r2, r3, 0); 2011 TESTINST4("smlabb r0, r1, r2, r3", 2012 0xf87b961e, 0x1d66879f, 0xf2b64835, r0, r1, r2, r3, 0); 2013 TESTINST4("smlabb r0, r1, r2, r3", 2014 0xd65db979, 0xc61b323b, 0xae930a1a, r0, r1, r2, r3, 0); 2015 TESTINST4("smlabb r0, r1, r2, r3", 2016 0x5ef1f1a8, 0xbf73f0a5, 0x2fb714c9, r0, r1, r2, r3, 0); 2017 TESTINST4("smlabb r0, r1, r2, r3", 2018 0x1ffe53d9, 0x815bb75b, 0xa3268abe, r0, r1, r2, r3, 0); 2019 TESTINST4("smlabb r0, r1, r2, r3", 2020 0xed2cbf78, 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, r3, 0); 2021 TESTINST4("smlabb r0, r1, r2, r3", 2022 0xeaa652c7, 0x137741f4, 0x3dba1164, r0, r1, r2, r3, 0); 2023 TESTINST4("smlabb r0, r1, r2, r3", 2024 0x3ada0280, 0x71fbde8b, 0xdba5bd25, r0, r1, r2, r3, 0); 2025 TESTINST4("smlabb r0, r1, r2, r3", 2026 0xda4ba05b, 0x90f9833d, 0x884c0ad8, r0, r1, r2, r3, 0); 2027 TESTINST4("smlabb r0, r1, r2, r3", 2028 0xc00b821a, 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, r3, 0); 2029 TESTINST4("smlabb r0, r1, r2, r3", 2030 0xe1bb8606, 0x58293969, 0x81616d13, r0, r1, r2, r3, 0); 2031 TESTINST4("smlabb r0, r1, r2, r3", 2032 0x51f31d95, 0xa3cfd624, 0x6077fb1f, r0, r1, r2, r3, 0); 2033 TESTINST4("smlabb r0, r1, r2, r3", 2034 0x0849a0c2, 0x0872f25a, 0x40b094e2, r0, r1, r2, r3, 0); 2035 TESTINST4("smlabb r0, r1, r2, r3", 2036 0x17913309, 0xf1e03d7e, 0x91edc21d, r0, r1, r2, r3, 0); 2037 TESTINST4("smlabb r0, r1, r2, r3", 2038 0x5388b5cd, 0x86582032, 0x6034078d, r0, r1, r2, r3, 0); 2039 TESTINST4("smlabb r0, r1, r2, r3", 2040 0x181c436b, 0x5de41558, 0xccfa1c7e, r0, r1, r2, r3, 0); 2041 TESTINST4("smlabb r0, r1, r2, r3", 2042 0x23ba1b46, 0x4437983c, 0x48d06549, r0, r1, r2, r3, 0); 2043 TESTINST4("smlabb r0, r1, r2, r3", 2044 0xa9085781, 0xc6b4ac58, 0xb2aead21, r0, r1, r2, r3, 0); 2045 TESTINST4("smlabb r0, r1, r2, r3", 2046 0xc2bdf597, 0xdde1e6a4, 0x852e3a72, r0, r1, r2, r3, 0); 2047 TESTINST4("smlabb r0, r1, r2, r3", 2048 0x157b0dea, 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, r3, 0); 2049 TESTINST4("smlabb r0, r1, r2, r3", 2050 0x3edad6b6, 0x82aceb7a, 0x0557c6fc, r0, r1, r2, r3, 0); 2051 TESTINST4("smlabb r0, r1, r2, r3", 2052 0x6cc9bfa8, 0x7f808c15, 0x81874a02, r0, r1, r2, r3, 0); 2053 TESTINST4("smlabb r0, r1, r2, r3", 2054 0x6b1422c7, 0x33921b00, 0x3ccad3f7, r0, r1, r2, r3, 0); 2055 TESTINST4("smlabb r0, r1, r2, r3", 2056 0xd7ce1909, 0x3e435701, 0x85fbf196, r0, r1, r2, r3, 0); 2057 TESTINST4("smlabb r0, r1, r2, r3", 2058 0xb4e16b6e, 0x6e13680a, 0x89436f88, r0, r1, r2, r3, 0); 2059 TESTINST4("smlabb r0, r1, r2, r3", 2060 0x44858efc, 0x9002bc30, 0x390d2c2f, r0, r1, r2, r3, 0); 2061 TESTINST4("smlabb r0, r1, r2, r3", 2062 0xbea121ab, 0x953ff6ec, 0x80657c40, r0, r1, r2, r3, 0); 2063 TESTINST4("smlabb r0, r1, r2, r3", 2064 0x6ffed89f, 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, r3, 0); 2065 TESTINST4("smlabb r0, r1, r2, r3", 2066 0x7795635d, 0x5e6e32dd, 0xe4999bf2, r0, r1, r2, r3, 0); 2067 TESTINST4("smlabb r0, r1, r2, r3", 2068 0xec0c2f30, 0x5736ed46, 0x231348c0, r0, r1, r2, r3, 0); 2069 TESTINST4("smlabb r0, r1, r2, r3", 2070 0x4f9ddd1b, 0x95bca5d8, 0x5765b203, r0, r1, r2, r3, 0); 2071 TESTINST4("smlabb r0, r1, r2, r3", 2072 0xc1553709, 0x0112b30a, 0x69ec0212, r0, r1, r2, r3, 0); 2073 TESTINST4("smlabb r0, r1, r2, r3", 2074 0x74bd0223, 0x03fa9bb5, 0x899d9192, r0, r1, r2, r3, 0); 2075 TESTINST4("smlabb r0, r1, r2, r3", 2076 0xf52e9fbf, 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, r3, 0); 2077 TESTINST4("smlabb r0, r1, r2, r3", 2078 0x64a365ef, 0x2dd01366, 0xf7b0b13e, r0, r1, r2, r3, 0); 2079 TESTINST4("smlabb r0, r1, r2, r3", 2080 0x5e4b1cbf, 0x44de5ca9, 0x464a21cc, r0, r1, r2, r3, 0); 2081 TESTINST4("smlabb r0, r1, r2, r3", 2082 0x299da970, 0xe8108f1b, 0xf5818cfb, r0, r1, r2, r3, 0); 2083 TESTINST4("smlabb r0, r1, r2, r3", 2084 0xcd90d604, 0xaa5e9444, 0x8217b7df, r0, r1, r2, r3, 0); 2085 TESTINST4("smlabb r0, r1, r2, r3", 2086 0xe60743c3, 0x7acb4de3, 0x73c29060, r0, r1, r2, r3, 0); 2087 TESTINST4("smlabb r0, r1, r2, r3", 2088 0x868e7c7d, 0x5f77532e, 0x1d133d3d, r0, r1, r2, r3, 0); 2089 TESTINST4("smlabb r0, r1, r2, r3", 2090 0x4e5e0760, 0x8f6d3264, 0x21ba2fb3, r0, r1, r2, r3, 0); 2091 TESTINST4("smlabb r0, r1, r2, r3", 2092 0xde99ac2f, 0x0be36f70, 0xeda5110c, r0, r1, r2, r3, 0); 2093 TESTINST4("smlabb r0, r1, r2, r3", 2094 0xc57243b7, 0xcf1e4487, 0xf20fb90f, r0, r1, r2, r3, 0); 2095 /* smlatt rD, rN, rM, rA */ 2096 TESTINST4("smlatt r0, r1, r2, r3", 2097 0x00000003, 0x00000004, 0x00000000, r0,r1,r2,r3, 0); 2098 TESTINST4("smlatt r0, r1, r2, r3", 2099 0x00010003, 0x00020004, 0x00007fff, r0,r1,r2,r3, 0); 2100 TESTINST4("smlatt r0, r1, r2, r3", 2101 0x80010003, 0x7fff0004, 0x00005fff, r0,r1,r2,r3, 0); 2102 TESTINST4("smlatt r0, r1, r2, r3", 2103 0x7fff0003, 0x7fff0004, 0x00007fff, r0,r1,r2,r3, 0); 2104 TESTINST4("smlatt r0, r1, r2, r3", 2105 0xffff0003, 0xffff0004, 0x7fff7fff, r0,r1,r2,r3, 0); 2106 TESTINST4("smlatt r0, r1, r2, r3", 2107 0xfffc0003, 0xffff0004, 0xffffffff, r0,r1,r2,r3, 0); 2108 TESTINST4("smlatt r0, r1, r2, r3", 2109 0xb8035b5b, 0xce0ce1ed, 0x5f986e68, r0, r1, r2, r3, 0); 2110 TESTINST4("smlatt r0, r1, r2, r3", 2111 0x35232047, 0x146275d8, 0xaae3433f, r0, r1, r2, r3, 0); 2112 TESTINST4("smlatt r0, r1, r2, r3", 2113 0xe7aa57b4, 0x1584bd74, 0x2c07a5b4, r0, r1, r2, r3, 0); 2114 TESTINST4("smlatt r0, r1, r2, r3", 2115 0x32fa0095, 0x36f26261, 0x89d2ef86, r0, r1, r2, r3, 0); 2116 TESTINST4("smlatt r0, r1, r2, r3", 2117 0x8ed8287c, 0x02c90120, 0xd4b64d54, r0, r1, r2, r3, 0); 2118 TESTINST4("smlatt r0, r1, r2, r3", 2119 0xc53aaba9, 0x29300837, 0x0b02c58a, r0, r1, r2, r3, 0); 2120 TESTINST4("smlatt r0, r1, r2, r3", 2121 0x216158cb, 0x57a50a01, 0xb0d20777, r0, r1, r2, r3, 0); 2122 TESTINST4("smlatt r0, r1, r2, r3", 2123 0x3e2e1bd7, 0x3cd6cd94, 0x7e376198, r0, r1, r2, r3, 0); 2124 TESTINST4("smlatt r0, r1, r2, r3", 2125 0xd5fe2dc4, 0xdd914bf7, 0xd5dc5407, r0, r1, r2, r3, 0); 2126 TESTINST4("smlatt r0, r1, r2, r3", 2127 0xf87b961e, 0x1d66879f, 0xf2b64835, r0, r1, r2, r3, 0); 2128 TESTINST4("smlatt r0, r1, r2, r3", 2129 0xd65db979, 0xc61b323b, 0xae930a1a, r0, r1, r2, r3, 0); 2130 TESTINST4("smlatt r0, r1, r2, r3", 2131 0x5ef1f1a8, 0xbf73f0a5, 0x2fb714c9, r0, r1, r2, r3, 0); 2132 TESTINST4("smlatt r0, r1, r2, r3", 2133 0x1ffe53d9, 0x815bb75b, 0xa3268abe, r0, r1, r2, r3, 0); 2134 TESTINST4("smlatt r0, r1, r2, r3", 2135 0xed2cbf78, 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, r3, 0); 2136 TESTINST4("smlatt r0, r1, r2, r3", 2137 0xeaa652c7, 0x137741f4, 0x3dba1164, r0, r1, r2, r3, 0); 2138 TESTINST4("smlatt r0, r1, r2, r3", 2139 0x3ada0280, 0x71fbde8b, 0xdba5bd25, r0, r1, r2, r3, 0); 2140 TESTINST4("smlatt r0, r1, r2, r3", 2141 0xda4ba05b, 0x90f9833d, 0x884c0ad8, r0, r1, r2, r3, 0); 2142 TESTINST4("smlatt r0, r1, r2, r3", 2143 0xc00b821a, 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, r3, 0); 2144 TESTINST4("smlatt r0, r1, r2, r3", 2145 0xe1bb8606, 0x58293969, 0x81616d13, r0, r1, r2, r3, 0); 2146 TESTINST4("smlatt r0, r1, r2, r3", 2147 0x51f31d95, 0xa3cfd624, 0x6077fb1f, r0, r1, r2, r3, 0); 2148 TESTINST4("smlatt r0, r1, r2, r3", 2149 0x0849a0c2, 0x0872f25a, 0x40b094e2, r0, r1, r2, r3, 0); 2150 TESTINST4("smlatt r0, r1, r2, r3", 2151 0x17913309, 0xf1e03d7e, 0x91edc21d, r0, r1, r2, r3, 0); 2152 TESTINST4("smlatt r0, r1, r2, r3", 2153 0x5388b5cd, 0x86582032, 0x6034078d, r0, r1, r2, r3, 0); 2154 TESTINST4("smlatt r0, r1, r2, r3", 2155 0x181c436b, 0x5de41558, 0xccfa1c7e, r0, r1, r2, r3, 0); 2156 TESTINST4("smlatt r0, r1, r2, r3", 2157 0x23ba1b46, 0x4437983c, 0x48d06549, r0, r1, r2, r3, 0); 2158 TESTINST4("smlatt r0, r1, r2, r3", 2159 0xa9085781, 0xc6b4ac58, 0xb2aead21, r0, r1, r2, r3, 0); 2160 TESTINST4("smlatt r0, r1, r2, r3", 2161 0xc2bdf597, 0xdde1e6a4, 0x852e3a72, r0, r1, r2, r3, 0); 2162 TESTINST4("smlatt r0, r1, r2, r3", 2163 0x157b0dea, 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, r3, 0); 2164 TESTINST4("smlatt r0, r1, r2, r3", 2165 0x3edad6b6, 0x82aceb7a, 0x0557c6fc, r0, r1, r2, r3, 0); 2166 TESTINST4("smlatt r0, r1, r2, r3", 2167 0x6cc9bfa8, 0x7f808c15, 0x81874a02, r0, r1, r2, r3, 0); 2168 TESTINST4("smlatt r0, r1, r2, r3", 2169 0x6b1422c7, 0x33921b00, 0x3ccad3f7, r0, r1, r2, r3, 0); 2170 TESTINST4("smlatt r0, r1, r2, r3", 2171 0xd7ce1909, 0x3e435701, 0x85fbf196, r0, r1, r2, r3, 0); 2172 TESTINST4("smlatt r0, r1, r2, r3", 2173 0xb4e16b6e, 0x6e13680a, 0x89436f88, r0, r1, r2, r3, 0); 2174 TESTINST4("smlatt r0, r1, r2, r3", 2175 0x44858efc, 0x9002bc30, 0x390d2c2f, r0, r1, r2, r3, 0); 2176 TESTINST4("smlatt r0, r1, r2, r3", 2177 0xbea121ab, 0x953ff6ec, 0x80657c40, r0, r1, r2, r3, 0); 2178 TESTINST4("smlatt r0, r1, r2, r3", 2179 0x6ffed89f, 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, r3, 0); 2180 TESTINST4("smlatt r0, r1, r2, r3", 2181 0x7795635d, 0x5e6e32dd, 0xe4999bf2, r0, r1, r2, r3, 0); 2182 TESTINST4("smlatt r0, r1, r2, r3", 2183 0xec0c2f30, 0x5736ed46, 0x231348c0, r0, r1, r2, r3, 0); 2184 TESTINST4("smlatt r0, r1, r2, r3", 2185 0x4f9ddd1b, 0x95bca5d8, 0x5765b203, r0, r1, r2, r3, 0); 2186 TESTINST4("smlatt r0, r1, r2, r3", 2187 0xc1553709, 0x0112b30a, 0x69ec0212, r0, r1, r2, r3, 0); 2188 TESTINST4("smlatt r0, r1, r2, r3", 2189 0x74bd0223, 0x03fa9bb5, 0x899d9192, r0, r1, r2, r3, 0); 2190 TESTINST4("smlatt r0, r1, r2, r3", 2191 0xf52e9fbf, 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, r3, 0); 2192 TESTINST4("smlatt r0, r1, r2, r3", 2193 0x64a365ef, 0x2dd01366, 0xf7b0b13e, r0, r1, r2, r3, 0); 2194 TESTINST4("smlatt r0, r1, r2, r3", 2195 0x5e4b1cbf, 0x44de5ca9, 0x464a21cc, r0, r1, r2, r3, 0); 2196 TESTINST4("smlatt r0, r1, r2, r3", 2197 0x299da970, 0xe8108f1b, 0xf5818cfb, r0, r1, r2, r3, 0); 2198 TESTINST4("smlatt r0, r1, r2, r3", 2199 0xcd90d604, 0xaa5e9444, 0x8217b7df, r0, r1, r2, r3, 0); 2200 TESTINST4("smlatt r0, r1, r2, r3", 2201 0xe60743c3, 0x7acb4de3, 0x73c29060, r0, r1, r2, r3, 0); 2202 TESTINST4("smlatt r0, r1, r2, r3", 2203 0x868e7c7d, 0x5f77532e, 0x1d133d3d, r0, r1, r2, r3, 0); 2204 TESTINST4("smlatt r0, r1, r2, r3", 2205 0x4e5e0760, 0x8f6d3264, 0x21ba2fb3, r0, r1, r2, r3, 0); 2206 TESTINST4("smlatt r0, r1, r2, r3", 2207 0xde99ac2f, 0x0be36f70, 0xeda5110c, r0, r1, r2, r3, 0); 2208 TESTINST4("smlatt r0, r1, r2, r3", 2209 0xc57243b7, 0xcf1e4487, 0xf20fb90f, r0, r1, r2, r3, 0); 2210 /* smlatb rD, rN, rM, rA */ 2211 TESTINST4("smlatb r0, r1, r2, r3", 2212 0x00000003, 0x00040000, 0x00000000, r0,r1,r2,r3, 0); 2213 TESTINST4("smlatb r0, r1, r2, r3", 2214 0x00010003, 0x00040002, 0x00007fff, r0,r1,r2,r3, 0); 2215 TESTINST4("smlatb r0, r1, r2, r3", 2216 0x80010003, 0x00047fff, 0x00005fff, r0,r1,r2,r3, 0); 2217 TESTINST4("smlatb r0, r1, r2, r3", 2218 0x7fff0003, 0x00047fff, 0x00007fff, r0,r1,r2,r3, 0); 2219 TESTINST4("smlatb r0, r1, r2, r3", 2220 0xffff0003, 0x0004ffff, 0x7fff7fff, r0,r1,r2,r3, 0); 2221 TESTINST4("smlatb r0, r1, r2, r3", 2222 0xfffc0003, 0x0004ffff, 0xffffffff, r0,r1,r2,r3, 0); 2223 TESTINST4("smlatb r0, r1, r2, r3", 2224 0xb8035b5b, 0xce0ce1ed, 0x5f986e68, r0, r1, r2, r3, 0); 2225 TESTINST4("smlatb r0, r1, r2, r3", 2226 0x35232047, 0x146275d8, 0xaae3433f, r0, r1, r2, r3, 0); 2227 TESTINST4("smlatb r0, r1, r2, r3", 2228 0xe7aa57b4, 0x1584bd74, 0x2c07a5b4, r0, r1, r2, r3, 0); 2229 TESTINST4("smlatb r0, r1, r2, r3", 2230 0x32fa0095, 0x36f26261, 0x89d2ef86, r0, r1, r2, r3, 0); 2231 TESTINST4("smlatb r0, r1, r2, r3", 2232 0x8ed8287c, 0x02c90120, 0xd4b64d54, r0, r1, r2, r3, 0); 2233 TESTINST4("smlatb r0, r1, r2, r3", 2234 0xc53aaba9, 0x29300837, 0x0b02c58a, r0, r1, r2, r3, 0); 2235 TESTINST4("smlatb r0, r1, r2, r3", 2236 0x216158cb, 0x57a50a01, 0xb0d20777, r0, r1, r2, r3, 0); 2237 TESTINST4("smlatb r0, r1, r2, r3", 2238 0x3e2e1bd7, 0x3cd6cd94, 0x7e376198, r0, r1, r2, r3, 0); 2239 TESTINST4("smlatb r0, r1, r2, r3", 2240 0xd5fe2dc4, 0xdd914bf7, 0xd5dc5407, r0, r1, r2, r3, 0); 2241 TESTINST4("smlatb r0, r1, r2, r3", 2242 0xf87b961e, 0x1d66879f, 0xf2b64835, r0, r1, r2, r3, 0); 2243 TESTINST4("smlatb r0, r1, r2, r3", 2244 0xd65db979, 0xc61b323b, 0xae930a1a, r0, r1, r2, r3, 0); 2245 TESTINST4("smlatb r0, r1, r2, r3", 2246 0x5ef1f1a8, 0xbf73f0a5, 0x2fb714c9, r0, r1, r2, r3, 0); 2247 TESTINST4("smlatb r0, r1, r2, r3", 2248 0x1ffe53d9, 0x815bb75b, 0xa3268abe, r0, r1, r2, r3, 0); 2249 TESTINST4("smlatb r0, r1, r2, r3", 2250 0xed2cbf78, 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, r3, 0); 2251 TESTINST4("smlatb r0, r1, r2, r3", 2252 0xeaa652c7, 0x137741f4, 0x3dba1164, r0, r1, r2, r3, 0); 2253 TESTINST4("smlatb r0, r1, r2, r3", 2254 0x3ada0280, 0x71fbde8b, 0xdba5bd25, r0, r1, r2, r3, 0); 2255 TESTINST4("smlatb r0, r1, r2, r3", 2256 0xda4ba05b, 0x90f9833d, 0x884c0ad8, r0, r1, r2, r3, 0); 2257 TESTINST4("smlatb r0, r1, r2, r3", 2258 0xc00b821a, 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, r3, 0); 2259 TESTINST4("smlatb r0, r1, r2, r3", 2260 0xe1bb8606, 0x58293969, 0x81616d13, r0, r1, r2, r3, 0); 2261 TESTINST4("smlatb r0, r1, r2, r3", 2262 0x51f31d95, 0xa3cfd624, 0x6077fb1f, r0, r1, r2, r3, 0); 2263 TESTINST4("smlatb r0, r1, r2, r3", 2264 0x0849a0c2, 0x0872f25a, 0x40b094e2, r0, r1, r2, r3, 0); 2265 TESTINST4("smlatb r0, r1, r2, r3", 2266 0x17913309, 0xf1e03d7e, 0x91edc21d, r0, r1, r2, r3, 0); 2267 TESTINST4("smlatb r0, r1, r2, r3", 2268 0x5388b5cd, 0x86582032, 0x6034078d, r0, r1, r2, r3, 0); 2269 TESTINST4("smlatb r0, r1, r2, r3", 2270 0x181c436b, 0x5de41558, 0xccfa1c7e, r0, r1, r2, r3, 0); 2271 TESTINST4("smlatb r0, r1, r2, r3", 2272 0x23ba1b46, 0x4437983c, 0x48d06549, r0, r1, r2, r3, 0); 2273 TESTINST4("smlatb r0, r1, r2, r3", 2274 0xa9085781, 0xc6b4ac58, 0xb2aead21, r0, r1, r2, r3, 0); 2275 TESTINST4("smlatb r0, r1, r2, r3", 2276 0xc2bdf597, 0xdde1e6a4, 0x852e3a72, r0, r1, r2, r3, 0); 2277 TESTINST4("smlatb r0, r1, r2, r3", 2278 0x157b0dea, 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, r3, 0); 2279 TESTINST4("smlatb r0, r1, r2, r3", 2280 0x3edad6b6, 0x82aceb7a, 0x0557c6fc, r0, r1, r2, r3, 0); 2281 TESTINST4("smlatb r0, r1, r2, r3", 2282 0x6cc9bfa8, 0x7f808c15, 0x81874a02, r0, r1, r2, r3, 0); 2283 TESTINST4("smlatb r0, r1, r2, r3", 2284 0x6b1422c7, 0x33921b00, 0x3ccad3f7, r0, r1, r2, r3, 0); 2285 TESTINST4("smlatb r0, r1, r2, r3", 2286 0xd7ce1909, 0x3e435701, 0x85fbf196, r0, r1, r2, r3, 0); 2287 TESTINST4("smlatb r0, r1, r2, r3", 2288 0xb4e16b6e, 0x6e13680a, 0x89436f88, r0, r1, r2, r3, 0); 2289 TESTINST4("smlatb r0, r1, r2, r3", 2290 0x44858efc, 0x9002bc30, 0x390d2c2f, r0, r1, r2, r3, 0); 2291 TESTINST4("smlatb r0, r1, r2, r3", 2292 0xbea121ab, 0x953ff6ec, 0x80657c40, r0, r1, r2, r3, 0); 2293 TESTINST4("smlatb r0, r1, r2, r3", 2294 0x6ffed89f, 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, r3, 0); 2295 TESTINST4("smlatb r0, r1, r2, r3", 2296 0x7795635d, 0x5e6e32dd, 0xe4999bf2, r0, r1, r2, r3, 0); 2297 TESTINST4("smlatb r0, r1, r2, r3", 2298 0xec0c2f30, 0x5736ed46, 0x231348c0, r0, r1, r2, r3, 0); 2299 TESTINST4("smlatb r0, r1, r2, r3", 2300 0x4f9ddd1b, 0x95bca5d8, 0x5765b203, r0, r1, r2, r3, 0); 2301 TESTINST4("smlatb r0, r1, r2, r3", 2302 0xc1553709, 0x0112b30a, 0x69ec0212, r0, r1, r2, r3, 0); 2303 TESTINST4("smlatb r0, r1, r2, r3", 2304 0x74bd0223, 0x03fa9bb5, 0x899d9192, r0, r1, r2, r3, 0); 2305 TESTINST4("smlatb r0, r1, r2, r3", 2306 0xf52e9fbf, 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, r3, 0); 2307 TESTINST4("smlatb r0, r1, r2, r3", 2308 0x64a365ef, 0x2dd01366, 0xf7b0b13e, r0, r1, r2, r3, 0); 2309 TESTINST4("smlatb r0, r1, r2, r3", 2310 0x5e4b1cbf, 0x44de5ca9, 0x464a21cc, r0, r1, r2, r3, 0); 2311 TESTINST4("smlatb r0, r1, r2, r3", 2312 0x299da970, 0xe8108f1b, 0xf5818cfb, r0, r1, r2, r3, 0); 2313 TESTINST4("smlatb r0, r1, r2, r3", 2314 0xcd90d604, 0xaa5e9444, 0x8217b7df, r0, r1, r2, r3, 0); 2315 TESTINST4("smlatb r0, r1, r2, r3", 2316 0xe60743c3, 0x7acb4de3, 0x73c29060, r0, r1, r2, r3, 0); 2317 TESTINST4("smlatb r0, r1, r2, r3", 2318 0x868e7c7d, 0x5f77532e, 0x1d133d3d, r0, r1, r2, r3, 0); 2319 TESTINST4("smlatb r0, r1, r2, r3", 2320 0x4e5e0760, 0x8f6d3264, 0x21ba2fb3, r0, r1, r2, r3, 0); 2321 TESTINST4("smlatb r0, r1, r2, r3", 2322 0xde99ac2f, 0x0be36f70, 0xeda5110c, r0, r1, r2, r3, 0); 2323 TESTINST4("smlatb r0, r1, r2, r3", 2324 0xc57243b7, 0xcf1e4487, 0xf20fb90f, r0, r1, r2, r3, 0); 2325 /* smlabt rD, rN, rM, rA */ 2326 TESTINST4("smlabt r0, r1, r2, r3", 2327 0x00030000, 0x00000004, 0x00000000, r0,r1,r2,r3, 0); 2328 TESTINST4("smlabt r0, r1, r2, r3", 2329 0x00030001, 0x00020004, 0x00007fff, r0,r1,r2,r3, 0); 2330 TESTINST4("smlabt r0, r1, r2, r3", 2331 0x00038001, 0x7fff0004, 0x00005fff, r0,r1,r2,r3, 0); 2332 TESTINST4("smlabt r0, r1, r2, r3", 2333 0x00037fff, 0x7fff0004, 0x00007fff, r0,r1,r2,r3, 0); 2334 TESTINST4("smlabt r0, r1, r2, r3", 2335 0x0003ffff, 0xffff0004, 0x7fff7fff, r0,r1,r2,r3, 0); 2336 TESTINST4("smlabt r0, r1, r2, r3", 2337 0x0003fffc, 0xffff0004, 0xffffffff, r0,r1,r2,r3, 0); 2338 TESTINST4("smlabt r0, r1, r2, r3", 2339 0xb8035b5b, 0xce0ce1ed, 0x5f986e68, r0, r1, r2, r3, 0); 2340 TESTINST4("smlabt r0, r1, r2, r3", 2341 0x35232047, 0x146275d8, 0xaae3433f, r0, r1, r2, r3, 0); 2342 TESTINST4("smlabt r0, r1, r2, r3", 2343 0xe7aa57b4, 0x1584bd74, 0x2c07a5b4, r0, r1, r2, r3, 0); 2344 TESTINST4("smlabt r0, r1, r2, r3", 2345 0x32fa0095, 0x36f26261, 0x89d2ef86, r0, r1, r2, r3, 0); 2346 TESTINST4("smlabt r0, r1, r2, r3", 2347 0x8ed8287c, 0x02c90120, 0xd4b64d54, r0, r1, r2, r3, 0); 2348 TESTINST4("smlabt r0, r1, r2, r3", 2349 0xc53aaba9, 0x29300837, 0x0b02c58a, r0, r1, r2, r3, 0); 2350 TESTINST4("smlabt r0, r1, r2, r3", 2351 0x216158cb, 0x57a50a01, 0xb0d20777, r0, r1, r2, r3, 0); 2352 TESTINST4("smlabt r0, r1, r2, r3", 2353 0x3e2e1bd7, 0x3cd6cd94, 0x7e376198, r0, r1, r2, r3, 0); 2354 TESTINST4("smlabt r0, r1, r2, r3", 2355 0xd5fe2dc4, 0xdd914bf7, 0xd5dc5407, r0, r1, r2, r3, 0); 2356 TESTINST4("smlabt r0, r1, r2, r3", 2357 0xf87b961e, 0x1d66879f, 0xf2b64835, r0, r1, r2, r3, 0); 2358 TESTINST4("smlabt r0, r1, r2, r3", 2359 0xd65db979, 0xc61b323b, 0xae930a1a, r0, r1, r2, r3, 0); 2360 TESTINST4("smlabt r0, r1, r2, r3", 2361 0x5ef1f1a8, 0xbf73f0a5, 0x2fb714c9, r0, r1, r2, r3, 0); 2362 TESTINST4("smlabt r0, r1, r2, r3", 2363 0x1ffe53d9, 0x815bb75b, 0xa3268abe, r0, r1, r2, r3, 0); 2364 TESTINST4("smlabt r0, r1, r2, r3", 2365 0xed2cbf78, 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, r3, 0); 2366 TESTINST4("smlabt r0, r1, r2, r3", 2367 0xeaa652c7, 0x137741f4, 0x3dba1164, r0, r1, r2, r3, 0); 2368 TESTINST4("smlabt r0, r1, r2, r3", 2369 0x3ada0280, 0x71fbde8b, 0xdba5bd25, r0, r1, r2, r3, 0); 2370 TESTINST4("smlabt r0, r1, r2, r3", 2371 0xda4ba05b, 0x90f9833d, 0x884c0ad8, r0, r1, r2, r3, 0); 2372 TESTINST4("smlabt r0, r1, r2, r3", 2373 0xc00b821a, 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, r3, 0); 2374 TESTINST4("smlabt r0, r1, r2, r3", 2375 0xe1bb8606, 0x58293969, 0x81616d13, r0, r1, r2, r3, 0); 2376 TESTINST4("smlabt r0, r1, r2, r3", 2377 0x51f31d95, 0xa3cfd624, 0x6077fb1f, r0, r1, r2, r3, 0); 2378 TESTINST4("smlabt r0, r1, r2, r3", 2379 0x0849a0c2, 0x0872f25a, 0x40b094e2, r0, r1, r2, r3, 0); 2380 TESTINST4("smlabt r0, r1, r2, r3", 2381 0x17913309, 0xf1e03d7e, 0x91edc21d, r0, r1, r2, r3, 0); 2382 TESTINST4("smlabt r0, r1, r2, r3", 2383 0x5388b5cd, 0x86582032, 0x6034078d, r0, r1, r2, r3, 0); 2384 TESTINST4("smlabt r0, r1, r2, r3", 2385 0x181c436b, 0x5de41558, 0xccfa1c7e, r0, r1, r2, r3, 0); 2386 TESTINST4("smlabt r0, r1, r2, r3", 2387 0x23ba1b46, 0x4437983c, 0x48d06549, r0, r1, r2, r3, 0); 2388 TESTINST4("smlabt r0, r1, r2, r3", 2389 0xa9085781, 0xc6b4ac58, 0xb2aead21, r0, r1, r2, r3, 0); 2390 TESTINST4("smlabt r0, r1, r2, r3", 2391 0xc2bdf597, 0xdde1e6a4, 0x852e3a72, r0, r1, r2, r3, 0); 2392 TESTINST4("smlabt r0, r1, r2, r3", 2393 0x157b0dea, 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, r3, 0); 2394 TESTINST4("smlabt r0, r1, r2, r3", 2395 0x3edad6b6, 0x82aceb7a, 0x0557c6fc, r0, r1, r2, r3, 0); 2396 TESTINST4("smlabt r0, r1, r2, r3", 2397 0x6cc9bfa8, 0x7f808c15, 0x81874a02, r0, r1, r2, r3, 0); 2398 TESTINST4("smlabt r0, r1, r2, r3", 2399 0x6b1422c7, 0x33921b00, 0x3ccad3f7, r0, r1, r2, r3, 0); 2400 TESTINST4("smlabt r0, r1, r2, r3", 2401 0xd7ce1909, 0x3e435701, 0x85fbf196, r0, r1, r2, r3, 0); 2402 TESTINST4("smlabt r0, r1, r2, r3", 2403 0xb4e16b6e, 0x6e13680a, 0x89436f88, r0, r1, r2, r3, 0); 2404 TESTINST4("smlabt r0, r1, r2, r3", 2405 0x44858efc, 0x9002bc30, 0x390d2c2f, r0, r1, r2, r3, 0); 2406 TESTINST4("smlabt r0, r1, r2, r3", 2407 0xbea121ab, 0x953ff6ec, 0x80657c40, r0, r1, r2, r3, 0); 2408 TESTINST4("smlabt r0, r1, r2, r3", 2409 0x6ffed89f, 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, r3, 0); 2410 TESTINST4("smlabt r0, r1, r2, r3", 2411 0x7795635d, 0x5e6e32dd, 0xe4999bf2, r0, r1, r2, r3, 0); 2412 TESTINST4("smlabt r0, r1, r2, r3", 2413 0xec0c2f30, 0x5736ed46, 0x231348c0, r0, r1, r2, r3, 0); 2414 TESTINST4("smlabt r0, r1, r2, r3", 2415 0x4f9ddd1b, 0x95bca5d8, 0x5765b203, r0, r1, r2, r3, 0); 2416 TESTINST4("smlabt r0, r1, r2, r3", 2417 0xc1553709, 0x0112b30a, 0x69ec0212, r0, r1, r2, r3, 0); 2418 TESTINST4("smlabt r0, r1, r2, r3", 2419 0x74bd0223, 0x03fa9bb5, 0x899d9192, r0, r1, r2, r3, 0); 2420 TESTINST4("smlabt r0, r1, r2, r3", 2421 0xf52e9fbf, 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, r3, 0); 2422 TESTINST4("smlabt r0, r1, r2, r3", 2423 0x64a365ef, 0x2dd01366, 0xf7b0b13e, r0, r1, r2, r3, 0); 2424 TESTINST4("smlabt r0, r1, r2, r3", 2425 0x5e4b1cbf, 0x44de5ca9, 0x464a21cc, r0, r1, r2, r3, 0); 2426 TESTINST4("smlabt r0, r1, r2, r3", 2427 0x299da970, 0xe8108f1b, 0xf5818cfb, r0, r1, r2, r3, 0); 2428 TESTINST4("smlabt r0, r1, r2, r3", 2429 0xcd90d604, 0xaa5e9444, 0x8217b7df, r0, r1, r2, r3, 0); 2430 TESTINST4("smlabt r0, r1, r2, r3", 2431 0xe60743c3, 0x7acb4de3, 0x73c29060, r0, r1, r2, r3, 0); 2432 TESTINST4("smlabt r0, r1, r2, r3", 2433 0x868e7c7d, 0x5f77532e, 0x1d133d3d, r0, r1, r2, r3, 0); 2434 TESTINST4("smlabt r0, r1, r2, r3", 2435 0x4e5e0760, 0x8f6d3264, 0x21ba2fb3, r0, r1, r2, r3, 0); 2436 TESTINST4("smlabt r0, r1, r2, r3", 2437 0xde99ac2f, 0x0be36f70, 0xeda5110c, r0, r1, r2, r3, 0); 2438 TESTINST4("smlabt r0, r1, r2, r3", 2439 0xc57243b7, 0xcf1e4487, 0xf20fb90f, r0, r1, r2, r3, 0); 2440 2441 printf("------------ UQSUB8 -----------------------------------\n"); 2442 TESTINST3("uqsub8 r0, r1, r2", 0x0009ffff, 0x00180003, r0, r1, r2, 0); 2443 TESTINST3("uqsub8 r0, r1, r2", 0x00180003, 0x0009ffff, r0, r1, r2, 0); 2444 TESTINST3("uqsub8 r0, r1, r2", 0x00030018, 0xffff0009, r0, r1, r2, 0); 2445 TESTINST3("uqsub8 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 2446 TESTINST3("uqsub8 r0, r1, r2", 0x00000318, 0xff00ff09, r0, r1, r2, 0); 2447 TESTINST3("uqsub8 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 2448 TESTINST3("uqsub8 r0, r1, r2", 0x00020318, 0xff07ff09, r0, r1, r2, 0); 2449 TESTINST3("uqsub8 r0, r1, r2", 0xff07ff09, 0x00020318, r0, r1, r2, 0); 2450 TESTINST3("uqsub8 r0, r1, r2", 0xb8035b5b, 0xce0ce1ed, r0, r1, r2, 0); 2451 TESTINST3("uqsub8 r0, r1, r2", 0x146275d8, 0xaae3433f, r0, r1, r2, 0); 2452 TESTINST3("uqsub8 r0, r1, r2", 0x2c07a5b4, 0x32fa0095, r0, r1, r2, 0); 2453 TESTINST3("uqsub8 r0, r1, r2", 0x8ed8287c, 0x02c90120, r0, r1, r2, 0); 2454 TESTINST3("uqsub8 r0, r1, r2", 0x29300837, 0x0b02c58a, r0, r1, r2, 0); 2455 TESTINST3("uqsub8 r0, r1, r2", 0xb0d20777, 0x3e2e1bd7, r0, r1, r2, 0); 2456 TESTINST3("uqsub8 r0, r1, r2", 0xd5fe2dc4, 0xdd914bf7, r0, r1, r2, 0); 2457 TESTINST3("uqsub8 r0, r1, r2", 0x1d66879f, 0xf2b64835, r0, r1, r2, 0); 2458 TESTINST3("uqsub8 r0, r1, r2", 0xae930a1a, 0x5ef1f1a8, r0, r1, r2, 0); 2459 TESTINST3("uqsub8 r0, r1, r2", 0x1ffe53d9, 0x815bb75b, r0, r1, r2, 0); 2460 TESTINST3("uqsub8 r0, r1, r2", 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, 0); 2461 TESTINST3("uqsub8 r0, r1, r2", 0x3dba1164, 0x3ada0280, r0, r1, r2, 0); 2462 TESTINST3("uqsub8 r0, r1, r2", 0xda4ba05b, 0x90f9833d, r0, r1, r2, 0); 2463 TESTINST3("uqsub8 r0, r1, r2", 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, 0); 2464 TESTINST3("uqsub8 r0, r1, r2", 0x81616d13, 0x51f31d95, r0, r1, r2, 0); 2465 TESTINST3("uqsub8 r0, r1, r2", 0x0849a0c2, 0x0872f25a, r0, r1, r2, 0); 2466 TESTINST3("uqsub8 r0, r1, r2", 0xf1e03d7e, 0x91edc21d, r0, r1, r2, 0); 2467 TESTINST3("uqsub8 r0, r1, r2", 0x6034078d, 0x181c436b, r0, r1, r2, 0); 2468 TESTINST3("uqsub8 r0, r1, r2", 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, 0); 2469 TESTINST3("uqsub8 r0, r1, r2", 0x3edad6b6, 0x82aceb7a, r0, r1, r2, 0); 2470 TESTINST3("uqsub8 r0, r1, r2", 0x0557c6fc, 0x6cc9bfa8, r0, r1, r2, 0); 2471 TESTINST3("uqsub8 r0, r1, r2", 0x7f808c15, 0x81874a02, r0, r1, r2, 0); 2472 TESTINST3("uqsub8 r0, r1, r2", 0x6b1422c7, 0x33921b00, r0, r1, r2, 0); 2473 TESTINST3("uqsub8 r0, r1, r2", 0x3ccad3f7, 0xd7ce1909, r0, r1, r2, 0); 2474 TESTINST3("uqsub8 r0, r1, r2", 0x3e435701, 0x85fbf196, r0, r1, r2, 0); 2475 TESTINST3("uqsub8 r0, r1, r2", 0xb4e16b6e, 0x6e13680a, r0, r1, r2, 0); 2476 TESTINST3("uqsub8 r0, r1, r2", 0x89436f88, 0x44858efc, r0, r1, r2, 0); 2477 TESTINST3("uqsub8 r0, r1, r2", 0x9002bc30, 0x390d2c2f, r0, r1, r2, 0); 2478 TESTINST3("uqsub8 r0, r1, r2", 0xbea121ab, 0x953ff6ec, r0, r1, r2, 0); 2479 TESTINST3("uqsub8 r0, r1, r2", 0x80657c40, 0x6ffed89f, r0, r1, r2, 0); 2480 TESTINST3("uqsub8 r0, r1, r2", 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, 0); 2481 TESTINST3("uqsub8 r0, r1, r2", 0x7795635d, 0x5e6e32dd, r0, r1, r2, 0); 2482 TESTINST3("uqsub8 r0, r1, r2", 0xe4999bf2, 0xec0c2f30, r0, r1, r2, 0); 2483 TESTINST3("uqsub8 r0, r1, r2", 0x5736ed46, 0x231348c0, r0, r1, r2, 0); 2484 TESTINST3("uqsub8 r0, r1, r2", 0x4f9ddd1b, 0x95bca5d8, r0, r1, r2, 0); 2485 TESTINST3("uqsub8 r0, r1, r2", 0x5765b203, 0xc1553709, r0, r1, r2, 0); 2486 TESTINST3("uqsub8 r0, r1, r2", 0x0112b30a, 0x69ec0212, r0, r1, r2, 0); 2487 TESTINST3("uqsub8 r0, r1, r2", 0x74bd0223, 0x03fa9bb5, r0, r1, r2, 0); 2488 TESTINST3("uqsub8 r0, r1, r2", 0x899d9192, 0xf52e9fbf, r0, r1, r2, 0); 2489 TESTINST3("uqsub8 r0, r1, r2", 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, 0); 2490 TESTINST3("uqsub8 r0, r1, r2", 0x64a365ef, 0x2dd01366, r0, r1, r2, 0); 2491 TESTINST3("uqsub8 r0, r1, r2", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 2492 TESTINST3("uqsub8 r0, r1, r2", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 2493 TESTINST3("uqsub8 r0, r1, r2", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 2494 TESTINST3("uqsub8 r0, r1, r2", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 2495 TESTINST3("uqsub8 r0, r1, r2", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 2496 TESTINST3("uqsub8 r0, r1, r2", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 2497 TESTINST3("uqsub8 r0, r1, r2", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 2498 TESTINST3("uqsub8 r0, r1, r2", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 2499 TESTINST3("uqsub8 r0, r1, r2", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 2500 TESTINST3("uqsub8 r0, r1, r2", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 2501 2502 printf("------------ UQADD8 -----------------------------------\n"); 2503 TESTINST3("uqadd8 r0, r1, r2", 0x0009ffff, 0x001800aa, r0, r1, r2, 0); 2504 TESTINST3("uqadd8 r0, r1, r2", 0x00180003, 0x0009ffff, r0, r1, r2, 0); 2505 TESTINST3("uqadd8 r0, r1, r2", 0x00aa0018, 0xffff0009, r0, r1, r2, 0); 2506 TESTINST3("uqadd8 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 2507 TESTINST3("uqadd8 r0, r1, r2", 0x0000aa18, 0xff00ff09, r0, r1, r2, 0); 2508 TESTINST3("uqadd8 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 2509 TESTINST3("uqadd8 r0, r1, r2", 0xff9fefcc, 0xff9ffedd, r0, r1, r2, 0); 2510 TESTINST3("uqadd8 r0, r1, r2", 0xff07ff09, 0xaa020318, r0, r1, r2, 0); 2511 TESTINST3("uqadd8 r0, r1, r2", 0xb8035b5b, 0xce0ce1ed, r0, r1, r2, 0); 2512 TESTINST3("uqadd8 r0, r1, r2", 0x146275d8, 0xaae3433f, r0, r1, r2, 0); 2513 TESTINST3("uqadd8 r0, r1, r2", 0x2c07a5b4, 0x32fa0095, r0, r1, r2, 0); 2514 TESTINST3("uqadd8 r0, r1, r2", 0x8ed8287c, 0x02c90120, r0, r1, r2, 0); 2515 TESTINST3("uqadd8 r0, r1, r2", 0x29300837, 0x0b02c58a, r0, r1, r2, 0); 2516 TESTINST3("uqadd8 r0, r1, r2", 0xb0d20777, 0x3e2e1bd7, r0, r1, r2, 0); 2517 TESTINST3("uqadd8 r0, r1, r2", 0xd5fe2dc4, 0xdd914bf7, r0, r1, r2, 0); 2518 TESTINST3("uqadd8 r0, r1, r2", 0x1d66879f, 0xf2b64835, r0, r1, r2, 0); 2519 TESTINST3("uqadd8 r0, r1, r2", 0xae930a1a, 0x5ef1f1a8, r0, r1, r2, 0); 2520 TESTINST3("uqadd8 r0, r1, r2", 0x1ffe53d9, 0x815bb75b, r0, r1, r2, 0); 2521 TESTINST3("uqadd8 r0, r1, r2", 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, 0); 2522 TESTINST3("uqadd8 r0, r1, r2", 0x3dba1164, 0x3ada0280, r0, r1, r2, 0); 2523 TESTINST3("uqadd8 r0, r1, r2", 0xda4ba05b, 0x90f9833d, r0, r1, r2, 0); 2524 TESTINST3("uqadd8 r0, r1, r2", 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, 0); 2525 TESTINST3("uqadd8 r0, r1, r2", 0x81616d13, 0x51f31d95, r0, r1, r2, 0); 2526 TESTINST3("uqadd8 r0, r1, r2", 0x0849a0c2, 0x0872f25a, r0, r1, r2, 0); 2527 TESTINST3("uqadd8 r0, r1, r2", 0xf1e03d7e, 0x91edc21d, r0, r1, r2, 0); 2528 TESTINST3("uqadd8 r0, r1, r2", 0x6034078d, 0x181c436b, r0, r1, r2, 0); 2529 TESTINST3("uqadd8 r0, r1, r2", 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, 0); 2530 TESTINST3("uqadd8 r0, r1, r2", 0x3edad6b6, 0x82aceb7a, r0, r1, r2, 0); 2531 TESTINST3("uqadd8 r0, r1, r2", 0x0557c6fc, 0x6cc9bfa8, r0, r1, r2, 0); 2532 TESTINST3("uqadd8 r0, r1, r2", 0x7f808c15, 0x81874a02, r0, r1, r2, 0); 2533 TESTINST3("uqadd8 r0, r1, r2", 0x6b1422c7, 0x33921b00, r0, r1, r2, 0); 2534 TESTINST3("uqadd8 r0, r1, r2", 0x3ccad3f7, 0xd7ce1909, r0, r1, r2, 0); 2535 TESTINST3("uqadd8 r0, r1, r2", 0x3e435701, 0x85fbf196, r0, r1, r2, 0); 2536 TESTINST3("uqadd8 r0, r1, r2", 0xb4e16b6e, 0x6e13680a, r0, r1, r2, 0); 2537 TESTINST3("uqadd8 r0, r1, r2", 0x89436f88, 0x44858efc, r0, r1, r2, 0); 2538 TESTINST3("uqadd8 r0, r1, r2", 0x9002bc30, 0x390d2c2f, r0, r1, r2, 0); 2539 TESTINST3("uqadd8 r0, r1, r2", 0xbea121ab, 0x953ff6ec, r0, r1, r2, 0); 2540 TESTINST3("uqadd8 r0, r1, r2", 0x80657c40, 0x6ffed89f, r0, r1, r2, 0); 2541 TESTINST3("uqadd8 r0, r1, r2", 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, 0); 2542 TESTINST3("uqadd8 r0, r1, r2", 0x7795635d, 0x5e6e32dd, r0, r1, r2, 0); 2543 TESTINST3("uqadd8 r0, r1, r2", 0xe4999bf2, 0xec0c2f30, r0, r1, r2, 0); 2544 TESTINST3("uqadd8 r0, r1, r2", 0x5736ed46, 0x231348c0, r0, r1, r2, 0); 2545 TESTINST3("uqadd8 r0, r1, r2", 0x4f9ddd1b, 0x95bca5d8, r0, r1, r2, 0); 2546 TESTINST3("uqadd8 r0, r1, r2", 0x5765b203, 0xc1553709, r0, r1, r2, 0); 2547 TESTINST3("uqadd8 r0, r1, r2", 0x0112b30a, 0x69ec0212, r0, r1, r2, 0); 2548 TESTINST3("uqadd8 r0, r1, r2", 0x74bd0223, 0x03fa9bb5, r0, r1, r2, 0); 2549 TESTINST3("uqadd8 r0, r1, r2", 0x899d9192, 0xf52e9fbf, r0, r1, r2, 0); 2550 TESTINST3("uqadd8 r0, r1, r2", 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, 0); 2551 TESTINST3("uqadd8 r0, r1, r2", 0x64a365ef, 0x2dd01366, r0, r1, r2, 0); 2552 TESTINST3("uqadd8 r0, r1, r2", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 2553 TESTINST3("uqadd8 r0, r1, r2", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 2554 TESTINST3("uqadd8 r0, r1, r2", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 2555 TESTINST3("uqadd8 r0, r1, r2", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 2556 TESTINST3("uqadd8 r0, r1, r2", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 2557 TESTINST3("uqadd8 r0, r1, r2", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 2558 TESTINST3("uqadd8 r0, r1, r2", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 2559 TESTINST3("uqadd8 r0, r1, r2", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 2560 TESTINST3("uqadd8 r0, r1, r2", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 2561 TESTINST3("uqadd8 r0, r1, r2", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 2562 2563 printf("------------ SEL --------------------------------------\n"); 2564 TESTINST3("sel r0, r1, r2", 0x7fff7fff, 0x00000000, r0, r1, r2, 0); 2565 TESTINST3("sel r0, r1, r2", 0x7fff7fff, 0x00010001, r0, r1, r2, 0); 2566 TESTINST3("sel r0, r1, r2", 0x80008000, 0xffffffff, r0, r1, r2, 0); 2567 TESTINST3("sel r0, r1, r2", 0x00640064, 0x00030003, r0, r1, r2, 0); 2568 TESTINST3("sel r0, r1, r2", 0xfffcffff, 0xffff0001, r0, r1, r2, 0); 2569 TESTINST3("sel r0, r1, r2", 0xfff70fff, 0x00030003, r0, r1, r2, 0); 2570 TESTINST3("sel r0, r1, r2", 0xb8035b5b, 0xce0ce1ed, r0, r1, r2, 0); 2571 TESTINST3("sel r0, r1, r2", 0x146275d8, 0xaae3433f, r0, r1, r2, 0); 2572 TESTINST3("sel r0, r1, r2", 0x2c07a5b4, 0x32fa0095, r0, r1, r2, 0); 2573 TESTINST3("sel r0, r1, r2", 0x8ed8287c, 0x02c90120, r0, r1, r2, 0); 2574 TESTINST3("sel r0, r1, r2", 0x29300837, 0x0b02c58a, r0, r1, r2, 0); 2575 TESTINST3("sel r0, r1, r2", 0xb0d20777, 0x3e2e1bd7, r0, r1, r2, 0); 2576 TESTINST3("sel r0, r1, r2", 0xd5fe2dc4, 0xdd914bf7, r0, r1, r2, 0); 2577 TESTINST3("sel r0, r1, r2", 0x1d66879f, 0xf2b64835, r0, r1, r2, 0); 2578 TESTINST3("sel r0, r1, r2", 0xae930a1a, 0x5ef1f1a8, r0, r1, r2, 0); 2579 TESTINST3("sel r0, r1, r2", 0x1ffe53d9, 0x815bb75b, r0, r1, r2, 0); 2580 TESTINST3("sel r0, r1, r2", 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, 0); 2581 TESTINST3("sel r0, r1, r2", 0x3dba1164, 0x3ada0280, r0, r1, r2, 0); 2582 TESTINST3("sel r0, r1, r2", 0xda4ba05b, 0x90f9833d, r0, r1, r2, 0); 2583 TESTINST3("sel r0, r1, r2", 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, 0); 2584 TESTINST3("sel r0, r1, r2", 0x81616d13, 0x51f31d95, r0, r1, r2, 0); 2585 TESTINST3("sel r0, r1, r2", 0x0849a0c2, 0x0872f25a, r0, r1, r2, 0); 2586 TESTINST3("sel r0, r1, r2", 0xf1e03d7e, 0x91edc21d, r0, r1, r2, 0); 2587 TESTINST3("sel r0, r1, r2", 0x6034078d, 0x181c436b, r0, r1, r2, 0); 2588 TESTINST3("sel r0, r1, r2", 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, 0); 2589 TESTINST3("sel r0, r1, r2", 0x3edad6b6, 0x82aceb7a, r0, r1, r2, 0); 2590 TESTINST3("sel r0, r1, r2", 0x0557c6fc, 0x6cc9bfa8, r0, r1, r2, 0); 2591 TESTINST3("sel r0, r1, r2", 0x7f808c15, 0x81874a02, r0, r1, r2, 0); 2592 TESTINST3("sel r0, r1, r2", 0x6b1422c7, 0x33921b00, r0, r1, r2, 0); 2593 TESTINST3("sel r0, r1, r2", 0x3ccad3f7, 0xd7ce1909, r0, r1, r2, 0); 2594 TESTINST3("sel r0, r1, r2", 0x3e435701, 0x85fbf196, r0, r1, r2, 0); 2595 TESTINST3("sel r0, r1, r2", 0xb4e16b6e, 0x6e13680a, r0, r1, r2, 0); 2596 TESTINST3("sel r0, r1, r2", 0x89436f88, 0x44858efc, r0, r1, r2, 0); 2597 TESTINST3("sel r0, r1, r2", 0x9002bc30, 0x390d2c2f, r0, r1, r2, 0); 2598 TESTINST3("sel r0, r1, r2", 0xbea121ab, 0x953ff6ec, r0, r1, r2, 0); 2599 TESTINST3("sel r0, r1, r2", 0x80657c40, 0x6ffed89f, r0, r1, r2, 0); 2600 TESTINST3("sel r0, r1, r2", 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, 0); 2601 TESTINST3("sel r0, r1, r2", 0x7795635d, 0x5e6e32dd, r0, r1, r2, 0); 2602 TESTINST3("sel r0, r1, r2", 0xe4999bf2, 0xec0c2f30, r0, r1, r2, 0); 2603 TESTINST3("sel r0, r1, r2", 0x5736ed46, 0x231348c0, r0, r1, r2, 0); 2604 TESTINST3("sel r0, r1, r2", 0x4f9ddd1b, 0x95bca5d8, r0, r1, r2, 0); 2605 TESTINST3("sel r0, r1, r2", 0x5765b203, 0xc1553709, r0, r1, r2, 0); 2606 TESTINST3("sel r0, r1, r2", 0x0112b30a, 0x69ec0212, r0, r1, r2, 0); 2607 TESTINST3("sel r0, r1, r2", 0x74bd0223, 0x03fa9bb5, r0, r1, r2, 0); 2608 TESTINST3("sel r0, r1, r2", 0x899d9192, 0xf52e9fbf, r0, r1, r2, 0); 2609 TESTINST3("sel r0, r1, r2", 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, 0); 2610 TESTINST3("sel r0, r1, r2", 0x64a365ef, 0x2dd01366, r0, r1, r2, 0); 2611 TESTINST3("sel r0, r1, r2", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 2612 TESTINST3("sel r0, r1, r2", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 2613 TESTINST3("sel r0, r1, r2", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 2614 TESTINST3("sel r0, r1, r2", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 2615 TESTINST3("sel r0, r1, r2", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 2616 TESTINST3("sel r0, r1, r2", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 2617 TESTINST3("sel r0, r1, r2", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 2618 TESTINST3("sel r0, r1, r2", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 2619 TESTINST3("sel r0, r1, r2", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 2620 TESTINST3("sel r0, r1, r2", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 2621 2622 printf("------------ QSUB8-------------------------------------\n"); 2623 TESTINST3("qsub8 r0, r1, r2", 0x0009ffff, 0x00180003, r0, r1, r2, 0); 2624 TESTINST3("qsub8 r0, r1, r2", 0x00180003, 0x0009ffff, r0, r1, r2, 0); 2625 TESTINST3("qsub8 r0, r1, r2", 0x00030018, 0xffff0009, r0, r1, r2, 0); 2626 TESTINST3("qsub8 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 2627 TESTINST3("qsub8 r0, r1, r2", 0x7fff7fff, 0x00000000, r0, r1, r2, 0); 2628 TESTINST3("qsub8 r0, r1, r2", 0x7fff00ff, 0x80017f01, r0, r1, r2, 0); 2629 TESTINST3("qsub8 r0, r1, r2", 0x80008000, 0x00000000, r0, r1, r2, 0); 2630 TESTINST3("qsub8 r0, r1, r2", 0x80008000, 0xffffffff, r0, r1, r2, 0); 2631 TESTINST3("qsub8 r0, r1, r2", 0xb8035b5b, 0xce0ce1ed, r0, r1, r2, 0); 2632 TESTINST3("qsub8 r0, r1, r2", 0x146275d8, 0xaae3433f, r0, r1, r2, 0); 2633 TESTINST3("qsub8 r0, r1, r2", 0x2c07a5b4, 0x32fa0095, r0, r1, r2, 0); 2634 TESTINST3("qsub8 r0, r1, r2", 0x8ed8287c, 0x02c90120, r0, r1, r2, 0); 2635 TESTINST3("qsub8 r0, r1, r2", 0x29300837, 0x0b02c58a, r0, r1, r2, 0); 2636 TESTINST3("qsub8 r0, r1, r2", 0xb0d20777, 0x3e2e1bd7, r0, r1, r2, 0); 2637 TESTINST3("qsub8 r0, r1, r2", 0xd5fe2dc4, 0xdd914bf7, r0, r1, r2, 0); 2638 TESTINST3("qsub8 r0, r1, r2", 0x1d66879f, 0xf2b64835, r0, r1, r2, 0); 2639 TESTINST3("qsub8 r0, r1, r2", 0xae930a1a, 0x5ef1f1a8, r0, r1, r2, 0); 2640 TESTINST3("qsub8 r0, r1, r2", 0x1ffe53d9, 0x815bb75b, r0, r1, r2, 0); 2641 TESTINST3("qsub8 r0, r1, r2", 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, 0); 2642 TESTINST3("qsub8 r0, r1, r2", 0x3dba1164, 0x3ada0280, r0, r1, r2, 0); 2643 TESTINST3("qsub8 r0, r1, r2", 0xda4ba05b, 0x90f9833d, r0, r1, r2, 0); 2644 TESTINST3("qsub8 r0, r1, r2", 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, 0); 2645 TESTINST3("qsub8 r0, r1, r2", 0x81616d13, 0x51f31d95, r0, r1, r2, 0); 2646 TESTINST3("qsub8 r0, r1, r2", 0x0849a0c2, 0x0872f25a, r0, r1, r2, 0); 2647 TESTINST3("qsub8 r0, r1, r2", 0xf1e03d7e, 0x91edc21d, r0, r1, r2, 0); 2648 TESTINST3("qsub8 r0, r1, r2", 0x6034078d, 0x181c436b, r0, r1, r2, 0); 2649 TESTINST3("qsub8 r0, r1, r2", 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, 0); 2650 TESTINST3("qsub8 r0, r1, r2", 0x3edad6b6, 0x82aceb7a, r0, r1, r2, 0); 2651 TESTINST3("qsub8 r0, r1, r2", 0x0557c6fc, 0x6cc9bfa8, r0, r1, r2, 0); 2652 TESTINST3("qsub8 r0, r1, r2", 0x7f808c15, 0x81874a02, r0, r1, r2, 0); 2653 TESTINST3("qsub8 r0, r1, r2", 0x6b1422c7, 0x33921b00, r0, r1, r2, 0); 2654 TESTINST3("qsub8 r0, r1, r2", 0x3ccad3f7, 0xd7ce1909, r0, r1, r2, 0); 2655 TESTINST3("qsub8 r0, r1, r2", 0x3e435701, 0x85fbf196, r0, r1, r2, 0); 2656 TESTINST3("qsub8 r0, r1, r2", 0xb4e16b6e, 0x6e13680a, r0, r1, r2, 0); 2657 TESTINST3("qsub8 r0, r1, r2", 0x89436f88, 0x44858efc, r0, r1, r2, 0); 2658 TESTINST3("qsub8 r0, r1, r2", 0x9002bc30, 0x390d2c2f, r0, r1, r2, 0); 2659 TESTINST3("qsub8 r0, r1, r2", 0xbea121ab, 0x953ff6ec, r0, r1, r2, 0); 2660 TESTINST3("qsub8 r0, r1, r2", 0x80657c40, 0x6ffed89f, r0, r1, r2, 0); 2661 TESTINST3("qsub8 r0, r1, r2", 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, 0); 2662 TESTINST3("qsub8 r0, r1, r2", 0x7795635d, 0x5e6e32dd, r0, r1, r2, 0); 2663 TESTINST3("qsub8 r0, r1, r2", 0xe4999bf2, 0xec0c2f30, r0, r1, r2, 0); 2664 TESTINST3("qsub8 r0, r1, r2", 0x5736ed46, 0x231348c0, r0, r1, r2, 0); 2665 TESTINST3("qsub8 r0, r1, r2", 0x4f9ddd1b, 0x95bca5d8, r0, r1, r2, 0); 2666 TESTINST3("qsub8 r0, r1, r2", 0x5765b203, 0xc1553709, r0, r1, r2, 0); 2667 TESTINST3("qsub8 r0, r1, r2", 0x0112b30a, 0x69ec0212, r0, r1, r2, 0); 2668 TESTINST3("qsub8 r0, r1, r2", 0x74bd0223, 0x03fa9bb5, r0, r1, r2, 0); 2669 TESTINST3("qsub8 r0, r1, r2", 0x899d9192, 0xf52e9fbf, r0, r1, r2, 0); 2670 TESTINST3("qsub8 r0, r1, r2", 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, 0); 2671 TESTINST3("qsub8 r0, r1, r2", 0x64a365ef, 0x2dd01366, r0, r1, r2, 0); 2672 TESTINST3("qsub8 r0, r1, r2", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 2673 TESTINST3("qsub8 r0, r1, r2", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 2674 TESTINST3("qsub8 r0, r1, r2", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 2675 TESTINST3("qsub8 r0, r1, r2", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 2676 TESTINST3("qsub8 r0, r1, r2", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 2677 TESTINST3("qsub8 r0, r1, r2", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 2678 TESTINST3("qsub8 r0, r1, r2", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 2679 TESTINST3("qsub8 r0, r1, r2", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 2680 TESTINST3("qsub8 r0, r1, r2", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 2681 TESTINST3("qsub8 r0, r1, r2", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 2682 2683 printf("------------ QADD8-------------------------------------\n"); 2684 TESTINST3("qadd8 r0, r1, r2", 0x0009ffff, 0x00180003, r0, r1, r2, 0); 2685 TESTINST3("qadd8 r0, r1, r2", 0x00180003, 0x0009ffff, r0, r1, r2, 0); 2686 TESTINST3("qadd8 r0, r1, r2", 0x00030018, 0xffff0009, r0, r1, r2, 0); 2687 TESTINST3("qadd8 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 2688 TESTINST3("qadd8 r0, r1, r2", 0x7fff7fff, 0x00000000, r0, r1, r2, 0); 2689 TESTINST3("qadd8 r0, r1, r2", 0x7fff00ff, 0x80017f01, r0, r1, r2, 0); 2690 TESTINST3("qadd8 r0, r1, r2", 0x80008000, 0x00000000, r0, r1, r2, 0); 2691 TESTINST3("qadd8 r0, r1, r2", 0x80008000, 0xffffffff, r0, r1, r2, 0); 2692 TESTINST3("qadd8 r0, r1, r2", 0xb8035b5b, 0xce0ce1ed, r0, r1, r2, 0); 2693 TESTINST3("qadd8 r0, r1, r2", 0x146275d8, 0xaae3433f, r0, r1, r2, 0); 2694 TESTINST3("qadd8 r0, r1, r2", 0x2c07a5b4, 0x32fa0095, r0, r1, r2, 0); 2695 TESTINST3("qadd8 r0, r1, r2", 0x8ed8287c, 0x02c90120, r0, r1, r2, 0); 2696 TESTINST3("qadd8 r0, r1, r2", 0x29300837, 0x0b02c58a, r0, r1, r2, 0); 2697 TESTINST3("qadd8 r0, r1, r2", 0xb0d20777, 0x3e2e1bd7, r0, r1, r2, 0); 2698 TESTINST3("qadd8 r0, r1, r2", 0xd5fe2dc4, 0xdd914bf7, r0, r1, r2, 0); 2699 TESTINST3("qadd8 r0, r1, r2", 0x1d66879f, 0xf2b64835, r0, r1, r2, 0); 2700 TESTINST3("qadd8 r0, r1, r2", 0xae930a1a, 0x5ef1f1a8, r0, r1, r2, 0); 2701 TESTINST3("qadd8 r0, r1, r2", 0x1ffe53d9, 0x815bb75b, r0, r1, r2, 0); 2702 TESTINST3("qadd8 r0, r1, r2", 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, 0); 2703 TESTINST3("qadd8 r0, r1, r2", 0x3dba1164, 0x3ada0280, r0, r1, r2, 0); 2704 TESTINST3("qadd8 r0, r1, r2", 0xda4ba05b, 0x90f9833d, r0, r1, r2, 0); 2705 TESTINST3("qadd8 r0, r1, r2", 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, 0); 2706 TESTINST3("qadd8 r0, r1, r2", 0x81616d13, 0x51f31d95, r0, r1, r2, 0); 2707 TESTINST3("qadd8 r0, r1, r2", 0x0849a0c2, 0x0872f25a, r0, r1, r2, 0); 2708 TESTINST3("qadd8 r0, r1, r2", 0xf1e03d7e, 0x91edc21d, r0, r1, r2, 0); 2709 TESTINST3("qadd8 r0, r1, r2", 0x6034078d, 0x181c436b, r0, r1, r2, 0); 2710 TESTINST3("qadd8 r0, r1, r2", 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, 0); 2711 TESTINST3("qadd8 r0, r1, r2", 0x3edad6b6, 0x82aceb7a, r0, r1, r2, 0); 2712 TESTINST3("qadd8 r0, r1, r2", 0x0557c6fc, 0x6cc9bfa8, r0, r1, r2, 0); 2713 TESTINST3("qadd8 r0, r1, r2", 0x7f808c15, 0x81874a02, r0, r1, r2, 0); 2714 TESTINST3("qadd8 r0, r1, r2", 0x6b1422c7, 0x33921b00, r0, r1, r2, 0); 2715 TESTINST3("qadd8 r0, r1, r2", 0x3ccad3f7, 0xd7ce1909, r0, r1, r2, 0); 2716 TESTINST3("qadd8 r0, r1, r2", 0x3e435701, 0x85fbf196, r0, r1, r2, 0); 2717 TESTINST3("qadd8 r0, r1, r2", 0xb4e16b6e, 0x6e13680a, r0, r1, r2, 0); 2718 TESTINST3("qadd8 r0, r1, r2", 0x89436f88, 0x44858efc, r0, r1, r2, 0); 2719 TESTINST3("qadd8 r0, r1, r2", 0x9002bc30, 0x390d2c2f, r0, r1, r2, 0); 2720 TESTINST3("qadd8 r0, r1, r2", 0xbea121ab, 0x953ff6ec, r0, r1, r2, 0); 2721 TESTINST3("qadd8 r0, r1, r2", 0x80657c40, 0x6ffed89f, r0, r1, r2, 0); 2722 TESTINST3("qadd8 r0, r1, r2", 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, 0); 2723 TESTINST3("qadd8 r0, r1, r2", 0x7795635d, 0x5e6e32dd, r0, r1, r2, 0); 2724 TESTINST3("qadd8 r0, r1, r2", 0xe4999bf2, 0xec0c2f30, r0, r1, r2, 0); 2725 TESTINST3("qadd8 r0, r1, r2", 0x5736ed46, 0x231348c0, r0, r1, r2, 0); 2726 TESTINST3("qadd8 r0, r1, r2", 0x4f9ddd1b, 0x95bca5d8, r0, r1, r2, 0); 2727 TESTINST3("qadd8 r0, r1, r2", 0x5765b203, 0xc1553709, r0, r1, r2, 0); 2728 TESTINST3("qadd8 r0, r1, r2", 0x0112b30a, 0x69ec0212, r0, r1, r2, 0); 2729 TESTINST3("qadd8 r0, r1, r2", 0x74bd0223, 0x03fa9bb5, r0, r1, r2, 0); 2730 TESTINST3("qadd8 r0, r1, r2", 0x899d9192, 0xf52e9fbf, r0, r1, r2, 0); 2731 TESTINST3("qadd8 r0, r1, r2", 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, 0); 2732 TESTINST3("qadd8 r0, r1, r2", 0x64a365ef, 0x2dd01366, r0, r1, r2, 0); 2733 TESTINST3("qadd8 r0, r1, r2", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 2734 TESTINST3("qadd8 r0, r1, r2", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 2735 TESTINST3("qadd8 r0, r1, r2", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 2736 TESTINST3("qadd8 r0, r1, r2", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 2737 TESTINST3("qadd8 r0, r1, r2", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 2738 TESTINST3("qadd8 r0, r1, r2", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 2739 TESTINST3("qadd8 r0, r1, r2", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 2740 TESTINST3("qadd8 r0, r1, r2", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 2741 TESTINST3("qadd8 r0, r1, r2", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 2742 TESTINST3("qadd8 r0, r1, r2", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 2743 2744 printf("------------ SHADD8 -----------------------------------\n"); 2745 TESTINST3("shadd8 r0, r1, r2", 0x0009ffff, 0x00180003, r0, r1, r2, 0); 2746 TESTINST3("shadd8 r0, r1, r2", 0x00180003, 0x0009ffff, r0, r1, r2, 0); 2747 TESTINST3("shadd8 r0, r1, r2", 0x00030018, 0xffff0009, r0, r1, r2, 0); 2748 TESTINST3("shadd8 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 2749 TESTINST3("shadd8 r0, r1, r2", 0x7fff7fff, 0x00000000, r0, r1, r2, 0); 2750 TESTINST3("shadd8 r0, r1, r2", 0x7fff00ff, 0x80017f01, r0, r1, r2, 0); 2751 TESTINST3("shadd8 r0, r1, r2", 0x80008000, 0x00000000, r0, r1, r2, 0); 2752 TESTINST3("shadd8 r0, r1, r2", 0x80008000, 0xffffffff, r0, r1, r2, 0); 2753 TESTINST3("shadd8 r0, r1, r2", 0xb8035b5b, 0xce0ce1ed, r0, r1, r2, 0); 2754 TESTINST3("shadd8 r0, r1, r2", 0x146275d8, 0xaae3433f, r0, r1, r2, 0); 2755 TESTINST3("shadd8 r0, r1, r2", 0x2c07a5b4, 0x32fa0095, r0, r1, r2, 0); 2756 TESTINST3("shadd8 r0, r1, r2", 0x8ed8287c, 0x02c90120, r0, r1, r2, 0); 2757 TESTINST3("shadd8 r0, r1, r2", 0x29300837, 0x0b02c58a, r0, r1, r2, 0); 2758 TESTINST3("shadd8 r0, r1, r2", 0xb0d20777, 0x3e2e1bd7, r0, r1, r2, 0); 2759 TESTINST3("shadd8 r0, r1, r2", 0xd5fe2dc4, 0xdd914bf7, r0, r1, r2, 0); 2760 TESTINST3("shadd8 r0, r1, r2", 0x1d66879f, 0xf2b64835, r0, r1, r2, 0); 2761 TESTINST3("shadd8 r0, r1, r2", 0xae930a1a, 0x5ef1f1a8, r0, r1, r2, 0); 2762 TESTINST3("shadd8 r0, r1, r2", 0x1ffe53d9, 0x815bb75b, r0, r1, r2, 0); 2763 TESTINST3("shadd8 r0, r1, r2", 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, 0); 2764 TESTINST3("shadd8 r0, r1, r2", 0x3dba1164, 0x3ada0280, r0, r1, r2, 0); 2765 TESTINST3("shadd8 r0, r1, r2", 0xda4ba05b, 0x90f9833d, r0, r1, r2, 0); 2766 TESTINST3("shadd8 r0, r1, r2", 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, 0); 2767 TESTINST3("shadd8 r0, r1, r2", 0x81616d13, 0x51f31d95, r0, r1, r2, 0); 2768 TESTINST3("shadd8 r0, r1, r2", 0x0849a0c2, 0x0872f25a, r0, r1, r2, 0); 2769 TESTINST3("shadd8 r0, r1, r2", 0xf1e03d7e, 0x91edc21d, r0, r1, r2, 0); 2770 TESTINST3("shadd8 r0, r1, r2", 0x6034078d, 0x181c436b, r0, r1, r2, 0); 2771 TESTINST3("shadd8 r0, r1, r2", 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, 0); 2772 TESTINST3("shadd8 r0, r1, r2", 0x3edad6b6, 0x82aceb7a, r0, r1, r2, 0); 2773 TESTINST3("shadd8 r0, r1, r2", 0x0557c6fc, 0x6cc9bfa8, r0, r1, r2, 0); 2774 TESTINST3("shadd8 r0, r1, r2", 0x7f808c15, 0x81874a02, r0, r1, r2, 0); 2775 TESTINST3("shadd8 r0, r1, r2", 0x6b1422c7, 0x33921b00, r0, r1, r2, 0); 2776 TESTINST3("shadd8 r0, r1, r2", 0x3ccad3f7, 0xd7ce1909, r0, r1, r2, 0); 2777 TESTINST3("shadd8 r0, r1, r2", 0x3e435701, 0x85fbf196, r0, r1, r2, 0); 2778 TESTINST3("shadd8 r0, r1, r2", 0xb4e16b6e, 0x6e13680a, r0, r1, r2, 0); 2779 TESTINST3("shadd8 r0, r1, r2", 0x89436f88, 0x44858efc, r0, r1, r2, 0); 2780 TESTINST3("shadd8 r0, r1, r2", 0x9002bc30, 0x390d2c2f, r0, r1, r2, 0); 2781 TESTINST3("shadd8 r0, r1, r2", 0xbea121ab, 0x953ff6ec, r0, r1, r2, 0); 2782 TESTINST3("shadd8 r0, r1, r2", 0x80657c40, 0x6ffed89f, r0, r1, r2, 0); 2783 TESTINST3("shadd8 r0, r1, r2", 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, 0); 2784 TESTINST3("shadd8 r0, r1, r2", 0x7795635d, 0x5e6e32dd, r0, r1, r2, 0); 2785 TESTINST3("shadd8 r0, r1, r2", 0xe4999bf2, 0xec0c2f30, r0, r1, r2, 0); 2786 TESTINST3("shadd8 r0, r1, r2", 0x5736ed46, 0x231348c0, r0, r1, r2, 0); 2787 TESTINST3("shadd8 r0, r1, r2", 0x4f9ddd1b, 0x95bca5d8, r0, r1, r2, 0); 2788 TESTINST3("shadd8 r0, r1, r2", 0x5765b203, 0xc1553709, r0, r1, r2, 0); 2789 TESTINST3("shadd8 r0, r1, r2", 0x0112b30a, 0x69ec0212, r0, r1, r2, 0); 2790 TESTINST3("shadd8 r0, r1, r2", 0x74bd0223, 0x03fa9bb5, r0, r1, r2, 0); 2791 TESTINST3("shadd8 r0, r1, r2", 0x899d9192, 0xf52e9fbf, r0, r1, r2, 0); 2792 TESTINST3("shadd8 r0, r1, r2", 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, 0); 2793 TESTINST3("shadd8 r0, r1, r2", 0x64a365ef, 0x2dd01366, r0, r1, r2, 0); 2794 TESTINST3("shadd8 r0, r1, r2", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 2795 TESTINST3("shadd8 r0, r1, r2", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 2796 TESTINST3("shadd8 r0, r1, r2", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 2797 TESTINST3("shadd8 r0, r1, r2", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 2798 TESTINST3("shadd8 r0, r1, r2", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 2799 TESTINST3("shadd8 r0, r1, r2", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 2800 TESTINST3("shadd8 r0, r1, r2", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 2801 TESTINST3("shadd8 r0, r1, r2", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 2802 TESTINST3("shadd8 r0, r1, r2", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 2803 TESTINST3("shadd8 r0, r1, r2", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 2804 2805 printf("------------ UHADD8 -----------------------------------\n"); 2806 TESTINST3("uhadd8 r0, r1, r2", 0x0009ffff, 0x00180003, r0, r1, r2, 0); 2807 TESTINST3("uhadd8 r0, r1, r2", 0x00180003, 0x0009ffff, r0, r1, r2, 0); 2808 TESTINST3("uhadd8 r0, r1, r2", 0x00030018, 0xffff0009, r0, r1, r2, 0); 2809 TESTINST3("uhadd8 r0, r1, r2", 0xffff0009, 0x00030018, r0, r1, r2, 0); 2810 TESTINST3("uhadd8 r0, r1, r2", 0x7fff7fff, 0x00000000, r0, r1, r2, 0); 2811 TESTINST3("uhadd8 r0, r1, r2", 0x7fff00ff, 0x80017f01, r0, r1, r2, 0); 2812 TESTINST3("uhadd8 r0, r1, r2", 0x80008000, 0x00000000, r0, r1, r2, 0); 2813 TESTINST3("uhadd8 r0, r1, r2", 0x80008000, 0xffffffff, r0, r1, r2, 0); 2814 TESTINST3("uhadd8 r0, r1, r2", 0xb8035b5b, 0xce0ce1ed, r0, r1, r2, 0); 2815 TESTINST3("uhadd8 r0, r1, r2", 0x146275d8, 0xaae3433f, r0, r1, r2, 0); 2816 TESTINST3("uhadd8 r0, r1, r2", 0x2c07a5b4, 0x32fa0095, r0, r1, r2, 0); 2817 TESTINST3("uhadd8 r0, r1, r2", 0x8ed8287c, 0x02c90120, r0, r1, r2, 0); 2818 TESTINST3("uhadd8 r0, r1, r2", 0x29300837, 0x0b02c58a, r0, r1, r2, 0); 2819 TESTINST3("uhadd8 r0, r1, r2", 0xb0d20777, 0x3e2e1bd7, r0, r1, r2, 0); 2820 TESTINST3("uhadd8 r0, r1, r2", 0xd5fe2dc4, 0xdd914bf7, r0, r1, r2, 0); 2821 TESTINST3("uhadd8 r0, r1, r2", 0x1d66879f, 0xf2b64835, r0, r1, r2, 0); 2822 TESTINST3("uhadd8 r0, r1, r2", 0xae930a1a, 0x5ef1f1a8, r0, r1, r2, 0); 2823 TESTINST3("uhadd8 r0, r1, r2", 0x1ffe53d9, 0x815bb75b, r0, r1, r2, 0); 2824 TESTINST3("uhadd8 r0, r1, r2", 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, 0); 2825 TESTINST3("uhadd8 r0, r1, r2", 0x3dba1164, 0x3ada0280, r0, r1, r2, 0); 2826 TESTINST3("uhadd8 r0, r1, r2", 0xda4ba05b, 0x90f9833d, r0, r1, r2, 0); 2827 TESTINST3("uhadd8 r0, r1, r2", 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, 0); 2828 TESTINST3("uhadd8 r0, r1, r2", 0x81616d13, 0x51f31d95, r0, r1, r2, 0); 2829 TESTINST3("uhadd8 r0, r1, r2", 0x0849a0c2, 0x0872f25a, r0, r1, r2, 0); 2830 TESTINST3("uhadd8 r0, r1, r2", 0xf1e03d7e, 0x91edc21d, r0, r1, r2, 0); 2831 TESTINST3("uhadd8 r0, r1, r2", 0x6034078d, 0x181c436b, r0, r1, r2, 0); 2832 TESTINST3("uhadd8 r0, r1, r2", 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, 0); 2833 TESTINST3("uhadd8 r0, r1, r2", 0x3edad6b6, 0x82aceb7a, r0, r1, r2, 0); 2834 TESTINST3("uhadd8 r0, r1, r2", 0x0557c6fc, 0x6cc9bfa8, r0, r1, r2, 0); 2835 TESTINST3("uhadd8 r0, r1, r2", 0x7f808c15, 0x81874a02, r0, r1, r2, 0); 2836 TESTINST3("uhadd8 r0, r1, r2", 0x6b1422c7, 0x33921b00, r0, r1, r2, 0); 2837 TESTINST3("uhadd8 r0, r1, r2", 0x3ccad3f7, 0xd7ce1909, r0, r1, r2, 0); 2838 TESTINST3("uhadd8 r0, r1, r2", 0x3e435701, 0x85fbf196, r0, r1, r2, 0); 2839 TESTINST3("uhadd8 r0, r1, r2", 0xb4e16b6e, 0x6e13680a, r0, r1, r2, 0); 2840 TESTINST3("uhadd8 r0, r1, r2", 0x89436f88, 0x44858efc, r0, r1, r2, 0); 2841 TESTINST3("uhadd8 r0, r1, r2", 0x9002bc30, 0x390d2c2f, r0, r1, r2, 0); 2842 TESTINST3("uhadd8 r0, r1, r2", 0xbea121ab, 0x953ff6ec, r0, r1, r2, 0); 2843 TESTINST3("uhadd8 r0, r1, r2", 0x80657c40, 0x6ffed89f, r0, r1, r2, 0); 2844 TESTINST3("uhadd8 r0, r1, r2", 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, 0); 2845 TESTINST3("uhadd8 r0, r1, r2", 0x7795635d, 0x5e6e32dd, r0, r1, r2, 0); 2846 TESTINST3("uhadd8 r0, r1, r2", 0xe4999bf2, 0xec0c2f30, r0, r1, r2, 0); 2847 TESTINST3("uhadd8 r0, r1, r2", 0x5736ed46, 0x231348c0, r0, r1, r2, 0); 2848 TESTINST3("uhadd8 r0, r1, r2", 0x4f9ddd1b, 0x95bca5d8, r0, r1, r2, 0); 2849 TESTINST3("uhadd8 r0, r1, r2", 0x5765b203, 0xc1553709, r0, r1, r2, 0); 2850 TESTINST3("uhadd8 r0, r1, r2", 0x0112b30a, 0x69ec0212, r0, r1, r2, 0); 2851 TESTINST3("uhadd8 r0, r1, r2", 0x74bd0223, 0x03fa9bb5, r0, r1, r2, 0); 2852 TESTINST3("uhadd8 r0, r1, r2", 0x899d9192, 0xf52e9fbf, r0, r1, r2, 0); 2853 TESTINST3("uhadd8 r0, r1, r2", 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, 0); 2854 TESTINST3("uhadd8 r0, r1, r2", 0x64a365ef, 0x2dd01366, r0, r1, r2, 0); 2855 TESTINST3("uhadd8 r0, r1, r2", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 2856 TESTINST3("uhadd8 r0, r1, r2", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 2857 TESTINST3("uhadd8 r0, r1, r2", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 2858 TESTINST3("uhadd8 r0, r1, r2", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 2859 TESTINST3("uhadd8 r0, r1, r2", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 2860 TESTINST3("uhadd8 r0, r1, r2", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 2861 TESTINST3("uhadd8 r0, r1, r2", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 2862 TESTINST3("uhadd8 r0, r1, r2", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 2863 TESTINST3("uhadd8 r0, r1, r2", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 2864 TESTINST3("uhadd8 r0, r1, r2", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 2865 2866 printf("----------------- SSAT ----------------- \n"); 2867 TESTINST2("ssat r0, #1, r1, LSL #31", 0x80008000, r0, r1, 0); 2868 TESTINST2("ssat r0, #6, r1, LSL #24", 0x80008000, r0, r1, 0); 2869 TESTINST2("ssat r0, #8, r1, ASR #18", 0x80008000, r0, r1, 0); 2870 TESTINST2("ssat r0, #12, r1, ASR #16", 0x80008000, r0, r1, 0); 2871 TESTINST2("ssat r0, #16, r1, LSL #12", 0xffff0009, r0, r1, 0); 2872 TESTINST2("ssat r0, #18, r1, LSL #8", 0xffff0009, r0, r1, 0); 2873 TESTINST2("ssat r0, #24, r1, ASR #6", 0xffff0009, r0, r1, 0); 2874 TESTINST2("ssat r0, #31, r1, ASR #1", 0xffff0009, r0, r1, 0); 2875 TESTINST2("ssat r0, #1, r1", 0x256bfdd6, r0, r1, 0); 2876 TESTINST2("ssat r0, #1, r1", 0xc02a0c05, r0, r1, 0); 2877 TESTINST2("ssat r0, #1, r1", 0xee2fa46e, r0, r1, 0); 2878 TESTINST2("ssat r0, #1, r1", 0x97a7da20, r0, r1, 0); 2879 TESTINST2("ssat r0, #32, r1", 0xa231d5e6, r0, r1, 0); 2880 TESTINST2("ssat r0, #32, r1", 0x10e1968a, r0, r1, 0); 2881 TESTINST2("ssat r0, #32, r1", 0x0e089270, r0, r1, 0); 2882 TESTINST2("ssat r0, #32, r1", 0x9e8e0185, r0, r1, 0); 2883 TESTINST2("ssat r0, #32, r1", 0x3096f12e, r0, r1, 0); 2884 TESTINST2("ssat r0, #32, r1", 0xffc134df, r0, r1, 0); 2885 TESTINST2("ssat r0, #1, r1, LSL #31", 0x256bfdd6, r0, r1, 0); 2886 TESTINST2("ssat r0, #1, r1, LSL #31", 0xc02a0c05, r0, r1, 0); 2887 TESTINST2("ssat r0, #1, r1, LSL #31", 0xee2fa46e, r0, r1, 0); 2888 TESTINST2("ssat r0, #1, r1, LSL #31", 0x97a7da20, r0, r1, 0); 2889 TESTINST2("ssat r0, #1, r1, LSL #31", 0xa231d5e6, r0, r1, 0); 2890 TESTINST2("ssat r0, #1, r1, LSL #31", 0x10e1968a, r0, r1, 0); 2891 TESTINST2("ssat r0, #1, r1, LSL #31", 0x0e089270, r0, r1, 0); 2892 TESTINST2("ssat r0, #1, r1, LSL #31", 0x9e8e0185, r0, r1, 0); 2893 TESTINST2("ssat r0, #1, r1, LSL #31", 0x3096f12e, r0, r1, 0); 2894 TESTINST2("ssat r0, #1, r1, LSL #31", 0xffc134df, r0, r1, 0); 2895 TESTINST2("ssat r0, #3, r1, LSL #28", 0x256bfdd6, r0, r1, 0); 2896 TESTINST2("ssat r0, #3, r1, LSL #28", 0xc02a0c05, r0, r1, 0); 2897 TESTINST2("ssat r0, #3, r1, LSL #28", 0xee2fa46e, r0, r1, 0); 2898 TESTINST2("ssat r0, #3, r1, LSL #28", 0x97a7da20, r0, r1, 0); 2899 TESTINST2("ssat r0, #3, r1, LSL #28", 0xa231d5e6, r0, r1, 0); 2900 TESTINST2("ssat r0, #3, r1, LSL #28", 0x10e1968a, r0, r1, 0); 2901 TESTINST2("ssat r0, #3, r1, LSL #28", 0x0e089270, r0, r1, 0); 2902 TESTINST2("ssat r0, #3, r1, LSL #28", 0x9e8e0185, r0, r1, 0); 2903 TESTINST2("ssat r0, #3, r1, LSL #28", 0x3096f12e, r0, r1, 0); 2904 TESTINST2("ssat r0, #3, r1, LSL #28", 0xffc134df, r0, r1, 0); 2905 TESTINST2("ssat r0, #6, r1, LSL #24", 0x256bfdd6, r0, r1, 0); 2906 TESTINST2("ssat r0, #6, r1, LSL #24", 0xc02a0c05, r0, r1, 0); 2907 TESTINST2("ssat r0, #6, r1, LSL #24", 0xee2fa46e, r0, r1, 0); 2908 TESTINST2("ssat r0, #6, r1, LSL #24", 0x97a7da20, r0, r1, 0); 2909 TESTINST2("ssat r0, #6, r1, LSL #24", 0xa231d5e6, r0, r1, 0); 2910 TESTINST2("ssat r0, #6, r1, LSL #24", 0x10e1968a, r0, r1, 0); 2911 TESTINST2("ssat r0, #6, r1, LSL #24", 0x0e089270, r0, r1, 0); 2912 TESTINST2("ssat r0, #6, r1, LSL #24", 0x9e8e0185, r0, r1, 0); 2913 TESTINST2("ssat r0, #6, r1, LSL #24", 0x3096f12e, r0, r1, 0); 2914 TESTINST2("ssat r0, #6, r1, LSL #24", 0xffc134df, r0, r1, 0); 2915 TESTINST2("ssat r0, #8, r1, ASR #18", 0x256bfdd6, r0, r1, 0); 2916 TESTINST2("ssat r0, #8, r1, ASR #18", 0xc02a0c05, r0, r1, 0); 2917 TESTINST2("ssat r0, #8, r1, ASR #18", 0xee2fa46e, r0, r1, 0); 2918 TESTINST2("ssat r0, #8, r1, ASR #18", 0x97a7da20, r0, r1, 0); 2919 TESTINST2("ssat r0, #8, r1, ASR #18", 0xa231d5e6, r0, r1, 0); 2920 TESTINST2("ssat r0, #8, r1, ASR #18", 0x10e1968a, r0, r1, 0); 2921 TESTINST2("ssat r0, #8, r1, ASR #18", 0x0e089270, r0, r1, 0); 2922 TESTINST2("ssat r0, #8, r1, ASR #18", 0x9e8e0185, r0, r1, 0); 2923 TESTINST2("ssat r0, #8, r1, ASR #18", 0x3096f12e, r0, r1, 0); 2924 TESTINST2("ssat r0, #8, r1, ASR #18", 0xffc134df, r0, r1, 0); 2925 TESTINST2("ssat r0, #12, r1, ASR #16", 0x256bfdd6, r0, r1, 0); 2926 TESTINST2("ssat r0, #12, r1, ASR #16", 0xc02a0c05, r0, r1, 0); 2927 TESTINST2("ssat r0, #12, r1, ASR #16", 0xee2fa46e, r0, r1, 0); 2928 TESTINST2("ssat r0, #12, r1, ASR #16", 0x97a7da20, r0, r1, 0); 2929 TESTINST2("ssat r0, #12, r1, ASR #16", 0xa231d5e6, r0, r1, 0); 2930 TESTINST2("ssat r0, #12, r1, ASR #16", 0x10e1968a, r0, r1, 0); 2931 TESTINST2("ssat r0, #12, r1, ASR #16", 0x0e089270, r0, r1, 0); 2932 TESTINST2("ssat r0, #12, r1, ASR #16", 0x9e8e0185, r0, r1, 0); 2933 TESTINST2("ssat r0, #12, r1, ASR #16", 0x3096f12e, r0, r1, 0); 2934 TESTINST2("ssat r0, #12, r1, ASR #16", 0xffc134df, r0, r1, 0); 2935 TESTINST2("ssat r0, #16, r1, LSL #12", 0x256bfdd6, r0, r1, 0); 2936 TESTINST2("ssat r0, #16, r1, LSL #12", 0xc02a0c05, r0, r1, 0); 2937 TESTINST2("ssat r0, #16, r1, LSL #12", 0xee2fa46e, r0, r1, 0); 2938 TESTINST2("ssat r0, #16, r1, LSL #12", 0x97a7da20, r0, r1, 0); 2939 TESTINST2("ssat r0, #16, r1, LSL #12", 0xa231d5e6, r0, r1, 0); 2940 TESTINST2("ssat r0, #16, r1, LSL #12", 0x10e1968a, r0, r1, 0); 2941 TESTINST2("ssat r0, #16, r1, LSL #12", 0x0e089270, r0, r1, 0); 2942 TESTINST2("ssat r0, #16, r1, LSL #12", 0x9e8e0185, r0, r1, 0); 2943 TESTINST2("ssat r0, #16, r1, LSL #12", 0x3096f12e, r0, r1, 0); 2944 TESTINST2("ssat r0, #16, r1, LSL #12", 0xffc134df, r0, r1, 0); 2945 TESTINST2("ssat r0, #18, r1, LSL #8", 0x256bfdd6, r0, r1, 0); 2946 TESTINST2("ssat r0, #18, r1, LSL #8", 0xc02a0c05, r0, r1, 0); 2947 TESTINST2("ssat r0, #18, r1, LSL #8", 0xee2fa46e, r0, r1, 0); 2948 TESTINST2("ssat r0, #18, r1, LSL #8", 0x97a7da20, r0, r1, 0); 2949 TESTINST2("ssat r0, #18, r1, LSL #8", 0xa231d5e6, r0, r1, 0); 2950 TESTINST2("ssat r0, #18, r1, LSL #8", 0x10e1968a, r0, r1, 0); 2951 TESTINST2("ssat r0, #18, r1, LSL #8", 0x0e089270, r0, r1, 0); 2952 TESTINST2("ssat r0, #18, r1, LSL #8", 0x9e8e0185, r0, r1, 0); 2953 TESTINST2("ssat r0, #18, r1, LSL #8", 0x3096f12e, r0, r1, 0); 2954 TESTINST2("ssat r0, #18, r1, LSL #8", 0xffc134df, r0, r1, 0); 2955 TESTINST2("ssat r0, #24, r1, ASR #6", 0x256bfdd6, r0, r1, 0); 2956 TESTINST2("ssat r0, #24, r1, ASR #6", 0xc02a0c05, r0, r1, 0); 2957 TESTINST2("ssat r0, #24, r1, ASR #6", 0xee2fa46e, r0, r1, 0); 2958 TESTINST2("ssat r0, #24, r1, ASR #6", 0x97a7da20, r0, r1, 0); 2959 TESTINST2("ssat r0, #24, r1, ASR #6", 0xa231d5e6, r0, r1, 0); 2960 TESTINST2("ssat r0, #24, r1, ASR #6", 0x10e1968a, r0, r1, 0); 2961 TESTINST2("ssat r0, #24, r1, ASR #6", 0x0e089270, r0, r1, 0); 2962 TESTINST2("ssat r0, #24, r1, ASR #6", 0x9e8e0185, r0, r1, 0); 2963 TESTINST2("ssat r0, #24, r1, ASR #6", 0x3096f12e, r0, r1, 0); 2964 TESTINST2("ssat r0, #24, r1, ASR #6", 0xffc134df, r0, r1, 0); 2965 TESTINST2("ssat r0, #28, r1, ASR #3", 0x256bfdd6, r0, r1, 0); 2966 TESTINST2("ssat r0, #28, r1, ASR #3", 0xc02a0c05, r0, r1, 0); 2967 TESTINST2("ssat r0, #28, r1, ASR #3", 0xee2fa46e, r0, r1, 0); 2968 TESTINST2("ssat r0, #28, r1, ASR #3", 0x97a7da20, r0, r1, 0); 2969 TESTINST2("ssat r0, #28, r1, ASR #3", 0xa231d5e6, r0, r1, 0); 2970 TESTINST2("ssat r0, #28, r1, ASR #3", 0x10e1968a, r0, r1, 0); 2971 TESTINST2("ssat r0, #28, r1, ASR #3", 0x0e089270, r0, r1, 0); 2972 TESTINST2("ssat r0, #28, r1, ASR #3", 0x9e8e0185, r0, r1, 0); 2973 TESTINST2("ssat r0, #28, r1, ASR #3", 0x3096f12e, r0, r1, 0); 2974 TESTINST2("ssat r0, #28, r1, ASR #3", 0xffc134df, r0, r1, 0); 2975 TESTINST2("ssat r0, #31, r1, ASR #1", 0x256bfdd6, r0, r1, 0); 2976 TESTINST2("ssat r0, #31, r1, ASR #1", 0xc02a0c05, r0, r1, 0); 2977 TESTINST2("ssat r0, #31, r1, ASR #1", 0xee2fa46e, r0, r1, 0); 2978 TESTINST2("ssat r0, #31, r1, ASR #1", 0x97a7da20, r0, r1, 0); 2979 TESTINST2("ssat r0, #31, r1, ASR #1", 0xa231d5e6, r0, r1, 0); 2980 TESTINST2("ssat r0, #31, r1, ASR #1", 0x10e1968a, r0, r1, 0); 2981 TESTINST2("ssat r0, #31, r1, ASR #1", 0x0e089270, r0, r1, 0); 2982 TESTINST2("ssat r0, #31, r1, ASR #1", 0x9e8e0185, r0, r1, 0); 2983 TESTINST2("ssat r0, #31, r1, ASR #1", 0x3096f12e, r0, r1, 0); 2984 TESTINST2("ssat r0, #31, r1, ASR #1", 0xffc134df, r0, r1, 0); 2985 #ifndef __thumb__ 2986 TESTINST2("ssat r0, #1, r1, ASR #32", 0x256bfdd6, r0, r1, 0); 2987 TESTINST2("ssat r0, #1, r1, ASR #32", 0xc02a0c05, r0, r1, 0); 2988 TESTINST2("ssat r0, #1, r1, ASR #32", 0xee2fa46e, r0, r1, 0); 2989 TESTINST2("ssat r0, #1, r1, ASR #32", 0x97a7da20, r0, r1, 0); 2990 TESTINST2("ssat r0, #1, r1, ASR #32", 0xa231d5e6, r0, r1, 0); 2991 TESTINST2("ssat r0, #1, r1, ASR #32", 0x10e1968a, r0, r1, 0); 2992 TESTINST2("ssat r0, #1, r1, ASR #32", 0x0e089270, r0, r1, 0); 2993 TESTINST2("ssat r0, #1, r1, ASR #32", 0x9e8e0185, r0, r1, 0); 2994 TESTINST2("ssat r0, #1, r1, ASR #32", 0x3096f12e, r0, r1, 0); 2995 TESTINST2("ssat r0, #1, r1, ASR #32", 0xffc134df, r0, r1, 0); 2996 TESTINST2("ssat r0, #32, r1, ASR #32", 0x256bfdd6, r0, r1, 0); 2997 TESTINST2("ssat r0, #32, r1, ASR #32", 0xc02a0c05, r0, r1, 0); 2998 TESTINST2("ssat r0, #32, r1, ASR #32", 0xee2fa46e, r0, r1, 0); 2999 TESTINST2("ssat r0, #32, r1, ASR #32", 0x97a7da20, r0, r1, 0); 3000 TESTINST2("ssat r0, #32, r1, ASR #32", 0xa231d5e6, r0, r1, 0); 3001 TESTINST2("ssat r0, #32, r1, ASR #32", 0x10e1968a, r0, r1, 0); 3002 TESTINST2("ssat r0, #32, r1, ASR #32", 0x0e089270, r0, r1, 0); 3003 TESTINST2("ssat r0, #32, r1, ASR #32", 0x9e8e0185, r0, r1, 0); 3004 TESTINST2("ssat r0, #32, r1, ASR #32", 0x3096f12e, r0, r1, 0); 3005 TESTINST2("ssat r0, #32, r1, ASR #32", 0xffc134df, r0, r1, 0); 3006 #endif 3007 3008 printf("---------------- SADD8 ----------------- \n"); 3009 TESTINST3("sadd8 r0, r1, r2", 0x00f7ffff, 0x00e800fd, r0, r1, r2, 0); 3010 TESTINST3("sadd8 r0, r1, r2", 0x00e800fd, 0x00f7ffff, r0, r1, r2, 0); 3011 TESTINST3("sadd8 r0, r1, r2", 0x00fd00e8, 0xffff00f7, r0, r1, r2, 0); 3012 TESTINST3("sadd8 r0, r1, r2", 0xffff00f7, 0x00fd0018, r0, r1, r2, 0); 3013 TESTINST3("sadd8 r0, r1, r2", 0x0000fd18, 0xff00fff7, r0, r1, r2, 0); 3014 TESTINST3("sadd8 r0, r1, r2", 0xffff00f7, 0x00fd00e8, r0, r1, r2, 0); 3015 TESTINST3("sadd8 r0, r1, r2", 0x00fefd18, 0xff07fff7, r0, r1, r2, 0); 3016 TESTINST3("sadd8 r0, r1, r2", 0xff07fff7, 0x00fefde8, r0, r1, r2, 0); 3017 TESTINST3("sadd8 r0, r1, r2", 0xb8035b5b, 0xce0ce1ed, r0, r1, r2, 0); 3018 TESTINST3("sadd8 r0, r1, r2", 0x146275d8, 0xaae3433f, r0, r1, r2, 0); 3019 TESTINST3("sadd8 r0, r1, r2", 0x2c07a5b4, 0x32fa0095, r0, r1, r2, 0); 3020 TESTINST3("sadd8 r0, r1, r2", 0x8ed8287c, 0x02c90120, r0, r1, r2, 0); 3021 TESTINST3("sadd8 r0, r1, r2", 0x29300837, 0x0b02c58a, r0, r1, r2, 0); 3022 TESTINST3("sadd8 r0, r1, r2", 0xb0d20777, 0x3e2e1bd7, r0, r1, r2, 0); 3023 TESTINST3("sadd8 r0, r1, r2", 0xd5fe2dc4, 0xdd914bf7, r0, r1, r2, 0); 3024 TESTINST3("sadd8 r0, r1, r2", 0x1d66879f, 0xf2b64835, r0, r1, r2, 0); 3025 TESTINST3("sadd8 r0, r1, r2", 0xae930a1a, 0x5ef1f1a8, r0, r1, r2, 0); 3026 TESTINST3("sadd8 r0, r1, r2", 0x1ffe53d9, 0x815bb75b, r0, r1, r2, 0); 3027 TESTINST3("sadd8 r0, r1, r2", 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, 0); 3028 TESTINST3("sadd8 r0, r1, r2", 0x3dba1164, 0x3ada0280, r0, r1, r2, 0); 3029 TESTINST3("sadd8 r0, r1, r2", 0xda4ba05b, 0x90f9833d, r0, r1, r2, 0); 3030 TESTINST3("sadd8 r0, r1, r2", 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, 0); 3031 TESTINST3("sadd8 r0, r1, r2", 0x81616d13, 0x51f31d95, r0, r1, r2, 0); 3032 TESTINST3("sadd8 r0, r1, r2", 0x0849a0c2, 0x0872f25a, r0, r1, r2, 0); 3033 TESTINST3("sadd8 r0, r1, r2", 0xf1e03d7e, 0x91edc21d, r0, r1, r2, 0); 3034 TESTINST3("sadd8 r0, r1, r2", 0x6034078d, 0x181c436b, r0, r1, r2, 0); 3035 TESTINST3("sadd8 r0, r1, r2", 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, 0); 3036 TESTINST3("sadd8 r0, r1, r2", 0x3edad6b6, 0x82aceb7a, r0, r1, r2, 0); 3037 TESTINST3("sadd8 r0, r1, r2", 0x0557c6fc, 0x6cc9bfa8, r0, r1, r2, 0); 3038 TESTINST3("sadd8 r0, r1, r2", 0x7f808c15, 0x81874a02, r0, r1, r2, 0); 3039 TESTINST3("sadd8 r0, r1, r2", 0x6b1422c7, 0x33921b00, r0, r1, r2, 0); 3040 TESTINST3("sadd8 r0, r1, r2", 0x3ccad3f7, 0xd7ce1909, r0, r1, r2, 0); 3041 TESTINST3("sadd8 r0, r1, r2", 0x3e435701, 0x85fbf196, r0, r1, r2, 0); 3042 TESTINST3("sadd8 r0, r1, r2", 0xb4e16b6e, 0x6e13680a, r0, r1, r2, 0); 3043 TESTINST3("sadd8 r0, r1, r2", 0x89436f88, 0x44858efc, r0, r1, r2, 0); 3044 TESTINST3("sadd8 r0, r1, r2", 0x9002bc30, 0x390d2c2f, r0, r1, r2, 0); 3045 TESTINST3("sadd8 r0, r1, r2", 0xbea121ab, 0x953ff6ec, r0, r1, r2, 0); 3046 TESTINST3("sadd8 r0, r1, r2", 0x80657c40, 0x6ffed89f, r0, r1, r2, 0); 3047 TESTINST3("sadd8 r0, r1, r2", 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, 0); 3048 TESTINST3("sadd8 r0, r1, r2", 0x7795635d, 0x5e6e32dd, r0, r1, r2, 0); 3049 TESTINST3("sadd8 r0, r1, r2", 0xe4999bf2, 0xec0c2f30, r0, r1, r2, 0); 3050 TESTINST3("sadd8 r0, r1, r2", 0x5736ed46, 0x231348c0, r0, r1, r2, 0); 3051 TESTINST3("sadd8 r0, r1, r2", 0x4f9ddd1b, 0x95bca5d8, r0, r1, r2, 0); 3052 TESTINST3("sadd8 r0, r1, r2", 0x5765b203, 0xc1553709, r0, r1, r2, 0); 3053 TESTINST3("sadd8 r0, r1, r2", 0x0112b30a, 0x69ec0212, r0, r1, r2, 0); 3054 TESTINST3("sadd8 r0, r1, r2", 0x74bd0223, 0x03fa9bb5, r0, r1, r2, 0); 3055 TESTINST3("sadd8 r0, r1, r2", 0x899d9192, 0xf52e9fbf, r0, r1, r2, 0); 3056 TESTINST3("sadd8 r0, r1, r2", 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, 0); 3057 TESTINST3("sadd8 r0, r1, r2", 0x64a365ef, 0x2dd01366, r0, r1, r2, 0); 3058 TESTINST3("sadd8 r0, r1, r2", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3059 TESTINST3("sadd8 r0, r1, r2", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3060 TESTINST3("sadd8 r0, r1, r2", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3061 TESTINST3("sadd8 r0, r1, r2", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3062 TESTINST3("sadd8 r0, r1, r2", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3063 TESTINST3("sadd8 r0, r1, r2", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3064 TESTINST3("sadd8 r0, r1, r2", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3065 TESTINST3("sadd8 r0, r1, r2", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3066 TESTINST3("sadd8 r0, r1, r2", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3067 TESTINST3("sadd8 r0, r1, r2", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3068 3069 printf("---------------- SSUB8 ----------------- \n"); 3070 TESTINST3("ssub8 r0, r1, r2", 0x00f7ffff, 0x00e800fd, r0, r1, r2, 0); 3071 TESTINST3("ssub8 r0, r1, r2", 0x00e800fd, 0x00f7ffff, r0, r1, r2, 0); 3072 TESTINST3("ssub8 r0, r1, r2", 0x00fd00e8, 0xffff00f7, r0, r1, r2, 0); 3073 TESTINST3("ssub8 r0, r1, r2", 0xffff00f7, 0x00fd0018, r0, r1, r2, 0); 3074 TESTINST3("ssub8 r0, r1, r2", 0x0000fd18, 0xff00fff7, r0, r1, r2, 0); 3075 TESTINST3("ssub8 r0, r1, r2", 0xffff00f7, 0x00fd00e8, r0, r1, r2, 0); 3076 TESTINST3("ssub8 r0, r1, r2", 0x00fefd18, 0xff07fff7, r0, r1, r2, 0); 3077 TESTINST3("ssub8 r0, r1, r2", 0xff07fff7, 0x00fefde8, r0, r1, r2, 0); 3078 TESTINST3("ssub8 r0, r1, r2", 0xb8035b5b, 0xce0ce1ed, r0, r1, r2, 0); 3079 TESTINST3("ssub8 r0, r1, r2", 0x146275d8, 0xaae3433f, r0, r1, r2, 0); 3080 TESTINST3("ssub8 r0, r1, r2", 0x2c07a5b4, 0x32fa0095, r0, r1, r2, 0); 3081 TESTINST3("ssub8 r0, r1, r2", 0x8ed8287c, 0x02c90120, r0, r1, r2, 0); 3082 TESTINST3("ssub8 r0, r1, r2", 0x29300837, 0x0b02c58a, r0, r1, r2, 0); 3083 TESTINST3("ssub8 r0, r1, r2", 0xb0d20777, 0x3e2e1bd7, r0, r1, r2, 0); 3084 TESTINST3("ssub8 r0, r1, r2", 0xd5fe2dc4, 0xdd914bf7, r0, r1, r2, 0); 3085 TESTINST3("ssub8 r0, r1, r2", 0x1d66879f, 0xf2b64835, r0, r1, r2, 0); 3086 TESTINST3("ssub8 r0, r1, r2", 0xae930a1a, 0x5ef1f1a8, r0, r1, r2, 0); 3087 TESTINST3("ssub8 r0, r1, r2", 0x1ffe53d9, 0x815bb75b, r0, r1, r2, 0); 3088 TESTINST3("ssub8 r0, r1, r2", 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, 0); 3089 TESTINST3("ssub8 r0, r1, r2", 0x3dba1164, 0x3ada0280, r0, r1, r2, 0); 3090 TESTINST3("ssub8 r0, r1, r2", 0xda4ba05b, 0x90f9833d, r0, r1, r2, 0); 3091 TESTINST3("ssub8 r0, r1, r2", 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, 0); 3092 TESTINST3("ssub8 r0, r1, r2", 0x81616d13, 0x51f31d95, r0, r1, r2, 0); 3093 TESTINST3("ssub8 r0, r1, r2", 0x0849a0c2, 0x0872f25a, r0, r1, r2, 0); 3094 TESTINST3("ssub8 r0, r1, r2", 0xf1e03d7e, 0x91edc21d, r0, r1, r2, 0); 3095 TESTINST3("ssub8 r0, r1, r2", 0x6034078d, 0x181c436b, r0, r1, r2, 0); 3096 TESTINST3("ssub8 r0, r1, r2", 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, 0); 3097 TESTINST3("ssub8 r0, r1, r2", 0x3edad6b6, 0x82aceb7a, r0, r1, r2, 0); 3098 TESTINST3("ssub8 r0, r1, r2", 0x0557c6fc, 0x6cc9bfa8, r0, r1, r2, 0); 3099 TESTINST3("ssub8 r0, r1, r2", 0x7f808c15, 0x81874a02, r0, r1, r2, 0); 3100 TESTINST3("ssub8 r0, r1, r2", 0x6b1422c7, 0x33921b00, r0, r1, r2, 0); 3101 TESTINST3("ssub8 r0, r1, r2", 0x3ccad3f7, 0xd7ce1909, r0, r1, r2, 0); 3102 TESTINST3("ssub8 r0, r1, r2", 0x3e435701, 0x85fbf196, r0, r1, r2, 0); 3103 TESTINST3("ssub8 r0, r1, r2", 0xb4e16b6e, 0x6e13680a, r0, r1, r2, 0); 3104 TESTINST3("ssub8 r0, r1, r2", 0x89436f88, 0x44858efc, r0, r1, r2, 0); 3105 TESTINST3("ssub8 r0, r1, r2", 0x9002bc30, 0x390d2c2f, r0, r1, r2, 0); 3106 TESTINST3("ssub8 r0, r1, r2", 0xbea121ab, 0x953ff6ec, r0, r1, r2, 0); 3107 TESTINST3("ssub8 r0, r1, r2", 0x80657c40, 0x6ffed89f, r0, r1, r2, 0); 3108 TESTINST3("ssub8 r0, r1, r2", 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, 0); 3109 TESTINST3("ssub8 r0, r1, r2", 0x7795635d, 0x5e6e32dd, r0, r1, r2, 0); 3110 TESTINST3("ssub8 r0, r1, r2", 0xe4999bf2, 0xec0c2f30, r0, r1, r2, 0); 3111 TESTINST3("ssub8 r0, r1, r2", 0x5736ed46, 0x231348c0, r0, r1, r2, 0); 3112 TESTINST3("ssub8 r0, r1, r2", 0x4f9ddd1b, 0x95bca5d8, r0, r1, r2, 0); 3113 TESTINST3("ssub8 r0, r1, r2", 0x5765b203, 0xc1553709, r0, r1, r2, 0); 3114 TESTINST3("ssub8 r0, r1, r2", 0x0112b30a, 0x69ec0212, r0, r1, r2, 0); 3115 TESTINST3("ssub8 r0, r1, r2", 0x74bd0223, 0x03fa9bb5, r0, r1, r2, 0); 3116 TESTINST3("ssub8 r0, r1, r2", 0x899d9192, 0xf52e9fbf, r0, r1, r2, 0); 3117 TESTINST3("ssub8 r0, r1, r2", 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, 0); 3118 TESTINST3("ssub8 r0, r1, r2", 0x64a365ef, 0x2dd01366, r0, r1, r2, 0); 3119 TESTINST3("ssub8 r0, r1, r2", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3120 TESTINST3("ssub8 r0, r1, r2", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3121 TESTINST3("ssub8 r0, r1, r2", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3122 TESTINST3("ssub8 r0, r1, r2", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3123 TESTINST3("ssub8 r0, r1, r2", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3124 TESTINST3("ssub8 r0, r1, r2", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3125 TESTINST3("ssub8 r0, r1, r2", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3126 TESTINST3("ssub8 r0, r1, r2", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3127 TESTINST3("ssub8 r0, r1, r2", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3128 TESTINST3("ssub8 r0, r1, r2", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3129 3130 printf("------------ SXTAB ------------\n"); 3131 TESTINST3("sxtab r0, r1, r2, ROR #24", 0x31415927, 0x27182819, r0, r1, r2, 0); 3132 TESTINST3("sxtab r0, r1, r2, ROR #16", 0x31415927, 0x27182819, r0, r1, r2, 0); 3133 TESTINST3("sxtab r0, r1, r2, ROR #8", 0x31415927, 0x27182819, r0, r1, r2, 0); 3134 TESTINST3("sxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182819, r0, r1, r2, 0); 3135 3136 TESTINST3("sxtab r0, r1, r2, ROR #24", 0x31415927, 0x27182899, r0, r1, r2, 0); 3137 TESTINST3("sxtab r0, r1, r2, ROR #16", 0x31415927, 0x27182899, r0, r1, r2, 0); 3138 TESTINST3("sxtab r0, r1, r2, ROR #8", 0x31415927, 0x27182899, r0, r1, r2, 0); 3139 TESTINST3("sxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182899, r0, r1, r2, 0); 3140 3141 TESTINST3("sxtab r0, r1, r2, ROR #24", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3142 TESTINST3("sxtab r0, r1, r2, ROR #24", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3143 TESTINST3("sxtab r0, r1, r2, ROR #24", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3144 TESTINST3("sxtab r0, r1, r2, ROR #24", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3145 TESTINST3("sxtab r0, r1, r2, ROR #24", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3146 TESTINST3("sxtab r0, r1, r2, ROR #24", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3147 TESTINST3("sxtab r0, r1, r2, ROR #24", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3148 TESTINST3("sxtab r0, r1, r2, ROR #24", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3149 TESTINST3("sxtab r0, r1, r2, ROR #24", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3150 TESTINST3("sxtab r0, r1, r2, ROR #24", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3151 3152 TESTINST3("sxtab r0, r1, r2, ROR #16", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3153 TESTINST3("sxtab r0, r1, r2, ROR #16", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3154 TESTINST3("sxtab r0, r1, r2, ROR #16", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3155 TESTINST3("sxtab r0, r1, r2, ROR #16", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3156 TESTINST3("sxtab r0, r1, r2, ROR #16", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3157 TESTINST3("sxtab r0, r1, r2, ROR #16", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3158 TESTINST3("sxtab r0, r1, r2, ROR #16", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3159 TESTINST3("sxtab r0, r1, r2, ROR #16", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3160 TESTINST3("sxtab r0, r1, r2, ROR #16", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3161 TESTINST3("sxtab r0, r1, r2, ROR #16", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3162 3163 TESTINST3("sxtab r0, r1, r2, ROR #8", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3164 TESTINST3("sxtab r0, r1, r2, ROR #8", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3165 TESTINST3("sxtab r0, r1, r2, ROR #8", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3166 TESTINST3("sxtab r0, r1, r2, ROR #8", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3167 TESTINST3("sxtab r0, r1, r2, ROR #8", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3168 TESTINST3("sxtab r0, r1, r2, ROR #8", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3169 TESTINST3("sxtab r0, r1, r2, ROR #8", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3170 TESTINST3("sxtab r0, r1, r2, ROR #8", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3171 TESTINST3("sxtab r0, r1, r2, ROR #8", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3172 TESTINST3("sxtab r0, r1, r2, ROR #8", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3173 3174 TESTINST3("sxtab r0, r1, r2, ROR #0", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3175 TESTINST3("sxtab r0, r1, r2, ROR #0", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3176 TESTINST3("sxtab r0, r1, r2, ROR #0", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3177 TESTINST3("sxtab r0, r1, r2, ROR #0", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3178 TESTINST3("sxtab r0, r1, r2, ROR #0", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3179 TESTINST3("sxtab r0, r1, r2, ROR #0", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3180 TESTINST3("sxtab r0, r1, r2, ROR #0", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3181 TESTINST3("sxtab r0, r1, r2, ROR #0", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3182 TESTINST3("sxtab r0, r1, r2, ROR #0", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3183 TESTINST3("sxtab r0, r1, r2, ROR #0", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3184 3185 printf("------------ UXTAB ------------\n"); 3186 TESTINST3("uxtab r0, r1, r2, ROR #24", 0x31415927, 0x27182819, r0, r1, r2, 0); 3187 TESTINST3("uxtab r0, r1, r2, ROR #16", 0x31415927, 0x27182819, r0, r1, r2, 0); 3188 TESTINST3("uxtab r0, r1, r2, ROR #8", 0x31415927, 0x27182819, r0, r1, r2, 0); 3189 TESTINST3("uxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182819, r0, r1, r2, 0); 3190 3191 TESTINST3("uxtab r0, r1, r2, ROR #24", 0x31415927, 0x27182899, r0, r1, r2, 0); 3192 TESTINST3("uxtab r0, r1, r2, ROR #16", 0x31415927, 0x27182899, r0, r1, r2, 0); 3193 TESTINST3("uxtab r0, r1, r2, ROR #8", 0x31415927, 0x27182899, r0, r1, r2, 0); 3194 TESTINST3("uxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182899, r0, r1, r2, 0); 3195 3196 TESTINST3("uxtab r0, r1, r2, ROR #24", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3197 TESTINST3("uxtab r0, r1, r2, ROR #24", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3198 TESTINST3("uxtab r0, r1, r2, ROR #24", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3199 TESTINST3("uxtab r0, r1, r2, ROR #24", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3200 TESTINST3("uxtab r0, r1, r2, ROR #24", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3201 TESTINST3("uxtab r0, r1, r2, ROR #24", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3202 TESTINST3("uxtab r0, r1, r2, ROR #24", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3203 TESTINST3("uxtab r0, r1, r2, ROR #24", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3204 TESTINST3("uxtab r0, r1, r2, ROR #24", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3205 TESTINST3("uxtab r0, r1, r2, ROR #24", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3206 3207 TESTINST3("uxtab r0, r1, r2, ROR #16", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3208 TESTINST3("uxtab r0, r1, r2, ROR #16", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3209 TESTINST3("uxtab r0, r1, r2, ROR #16", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3210 TESTINST3("uxtab r0, r1, r2, ROR #16", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3211 TESTINST3("uxtab r0, r1, r2, ROR #16", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3212 TESTINST3("uxtab r0, r1, r2, ROR #16", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3213 TESTINST3("uxtab r0, r1, r2, ROR #16", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3214 TESTINST3("uxtab r0, r1, r2, ROR #16", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3215 TESTINST3("uxtab r0, r1, r2, ROR #16", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3216 TESTINST3("uxtab r0, r1, r2, ROR #16", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3217 3218 TESTINST3("uxtab r0, r1, r2, ROR #8", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3219 TESTINST3("uxtab r0, r1, r2, ROR #8", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3220 TESTINST3("uxtab r0, r1, r2, ROR #8", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3221 TESTINST3("uxtab r0, r1, r2, ROR #8", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3222 TESTINST3("uxtab r0, r1, r2, ROR #8", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3223 TESTINST3("uxtab r0, r1, r2, ROR #8", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3224 TESTINST3("uxtab r0, r1, r2, ROR #8", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3225 TESTINST3("uxtab r0, r1, r2, ROR #8", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3226 TESTINST3("uxtab r0, r1, r2, ROR #8", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3227 TESTINST3("uxtab r0, r1, r2, ROR #8", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3228 3229 TESTINST3("uxtab r0, r1, r2, ROR #0", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3230 TESTINST3("uxtab r0, r1, r2, ROR #0", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3231 TESTINST3("uxtab r0, r1, r2, ROR #0", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3232 TESTINST3("uxtab r0, r1, r2, ROR #0", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3233 TESTINST3("uxtab r0, r1, r2, ROR #0", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3234 TESTINST3("uxtab r0, r1, r2, ROR #0", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3235 TESTINST3("uxtab r0, r1, r2, ROR #0", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3236 TESTINST3("uxtab r0, r1, r2, ROR #0", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3237 TESTINST3("uxtab r0, r1, r2, ROR #0", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3238 TESTINST3("uxtab r0, r1, r2, ROR #0", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3239 3240 printf("----------- UXTAB16 -----------\n"); 3241 TESTINST3("uxtab16 r0, r1, r2, ROR #24", 0x31415927, 0x27182819, r0, r1, r2, 0); 3242 TESTINST3("uxtab16 r0, r1, r2, ROR #16", 0x31415927, 0x27182819, r0, r1, r2, 0); 3243 TESTINST3("uxtab16 r0, r1, r2, ROR #8", 0x31415927, 0x27182819, r0, r1, r2, 0); 3244 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0x31415927, 0x27182819, r0, r1, r2, 0); 3245 3246 TESTINST3("uxtab16 r0, r1, r2, ROR #24", 0x31415927, 0x27182899, r0, r1, r2, 0); 3247 TESTINST3("uxtab16 r0, r1, r2, ROR #16", 0x31415927, 0x27182899, r0, r1, r2, 0); 3248 TESTINST3("uxtab16 r0, r1, r2, ROR #8", 0x31415927, 0x27182899, r0, r1, r2, 0); 3249 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0x31415927, 0x27182899, r0, r1, r2, 0); 3250 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0x3141FFFF, 0x27182899, r0, r1, r2, 0); 3251 3252 TESTINST3("uxtab16 r0, r1, r2, ROR #24", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3253 TESTINST3("uxtab16 r0, r1, r2, ROR #24", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3254 TESTINST3("uxtab16 r0, r1, r2, ROR #24", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3255 TESTINST3("uxtab16 r0, r1, r2, ROR #24", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3256 TESTINST3("uxtab16 r0, r1, r2, ROR #24", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3257 TESTINST3("uxtab16 r0, r1, r2, ROR #24", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3258 TESTINST3("uxtab16 r0, r1, r2, ROR #24", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3259 TESTINST3("uxtab16 r0, r1, r2, ROR #24", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3260 TESTINST3("uxtab16 r0, r1, r2, ROR #24", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3261 TESTINST3("uxtab16 r0, r1, r2, ROR #24", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3262 3263 TESTINST3("uxtab16 r0, r1, r2, ROR #16", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3264 TESTINST3("uxtab16 r0, r1, r2, ROR #16", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3265 TESTINST3("uxtab16 r0, r1, r2, ROR #16", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3266 TESTINST3("uxtab16 r0, r1, r2, ROR #16", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3267 TESTINST3("uxtab16 r0, r1, r2, ROR #16", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3268 TESTINST3("uxtab16 r0, r1, r2, ROR #16", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3269 TESTINST3("uxtab16 r0, r1, r2, ROR #16", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3270 TESTINST3("uxtab16 r0, r1, r2, ROR #16", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3271 TESTINST3("uxtab16 r0, r1, r2, ROR #16", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3272 TESTINST3("uxtab16 r0, r1, r2, ROR #16", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3273 3274 TESTINST3("uxtab16 r0, r1, r2, ROR #8", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3275 TESTINST3("uxtab16 r0, r1, r2, ROR #8", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3276 TESTINST3("uxtab16 r0, r1, r2, ROR #8", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3277 TESTINST3("uxtab16 r0, r1, r2, ROR #8", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3278 TESTINST3("uxtab16 r0, r1, r2, ROR #8", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3279 TESTINST3("uxtab16 r0, r1, r2, ROR #8", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3280 TESTINST3("uxtab16 r0, r1, r2, ROR #8", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3281 TESTINST3("uxtab16 r0, r1, r2, ROR #8", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3282 TESTINST3("uxtab16 r0, r1, r2, ROR #8", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3283 TESTINST3("uxtab16 r0, r1, r2, ROR #8", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3284 3285 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3286 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3287 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3288 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3289 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3290 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3291 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3292 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3293 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3294 TESTINST3("uxtab16 r0, r1, r2, ROR #0", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3295 3296 printf("------------ SXTAH ------------\n"); 3297 TESTINST3("sxtah r0, r1, r2, ROR #24", 0x31415927, 0x27182819, r0, r1, r2, 0); 3298 TESTINST3("sxtah r0, r1, r2, ROR #16", 0x31415927, 0x27182819, r0, r1, r2, 0); 3299 TESTINST3("sxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27182819, r0, r1, r2, 0); 3300 TESTINST3("sxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27182819, r0, r1, r2, 0); 3301 3302 TESTINST3("sxtah r0, r1, r2, ROR #24", 0x31415927, 0x27189819, r0, r1, r2, 0); 3303 TESTINST3("sxtah r0, r1, r2, ROR #16", 0x31415927, 0x27189819, r0, r1, r2, 0); 3304 TESTINST3("sxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27189819, r0, r1, r2, 0); 3305 TESTINST3("sxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27189819, r0, r1, r2, 0); 3306 3307 TESTINST3("sxtah r0, r1, r2, ROR #24", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3308 TESTINST3("sxtah r0, r1, r2, ROR #24", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3309 TESTINST3("sxtah r0, r1, r2, ROR #24", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3310 TESTINST3("sxtah r0, r1, r2, ROR #24", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3311 TESTINST3("sxtah r0, r1, r2, ROR #24", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3312 TESTINST3("sxtah r0, r1, r2, ROR #24", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3313 TESTINST3("sxtah r0, r1, r2, ROR #24", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3314 TESTINST3("sxtah r0, r1, r2, ROR #24", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3315 TESTINST3("sxtah r0, r1, r2, ROR #24", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3316 TESTINST3("sxtah r0, r1, r2, ROR #24", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3317 3318 TESTINST3("sxtah r0, r1, r2, ROR #16", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3319 TESTINST3("sxtah r0, r1, r2, ROR #16", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3320 TESTINST3("sxtah r0, r1, r2, ROR #16", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3321 TESTINST3("sxtah r0, r1, r2, ROR #16", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3322 TESTINST3("sxtah r0, r1, r2, ROR #16", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3323 TESTINST3("sxtah r0, r1, r2, ROR #16", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3324 TESTINST3("sxtah r0, r1, r2, ROR #16", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3325 TESTINST3("sxtah r0, r1, r2, ROR #16", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3326 TESTINST3("sxtah r0, r1, r2, ROR #16", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3327 TESTINST3("sxtah r0, r1, r2, ROR #16", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3328 3329 TESTINST3("sxtah r0, r1, r2, ROR #8", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3330 TESTINST3("sxtah r0, r1, r2, ROR #8", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3331 TESTINST3("sxtah r0, r1, r2, ROR #8", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3332 TESTINST3("sxtah r0, r1, r2, ROR #8", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3333 TESTINST3("sxtah r0, r1, r2, ROR #8", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3334 TESTINST3("sxtah r0, r1, r2, ROR #8", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3335 TESTINST3("sxtah r0, r1, r2, ROR #8", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3336 TESTINST3("sxtah r0, r1, r2, ROR #8", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3337 TESTINST3("sxtah r0, r1, r2, ROR #8", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3338 TESTINST3("sxtah r0, r1, r2, ROR #8", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3339 3340 TESTINST3("sxtah r0, r1, r2, ROR #0", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3341 TESTINST3("sxtah r0, r1, r2, ROR #0", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3342 TESTINST3("sxtah r0, r1, r2, ROR #0", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3343 TESTINST3("sxtah r0, r1, r2, ROR #0", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3344 TESTINST3("sxtah r0, r1, r2, ROR #0", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3345 TESTINST3("sxtah r0, r1, r2, ROR #0", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3346 TESTINST3("sxtah r0, r1, r2, ROR #0", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3347 TESTINST3("sxtah r0, r1, r2, ROR #0", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3348 TESTINST3("sxtah r0, r1, r2, ROR #0", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3349 TESTINST3("sxtah r0, r1, r2, ROR #0", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3350 3351 printf("------------ UXTAH ------------\n"); 3352 TESTINST3("uxtah r0, r1, r2, ROR #24", 0x31415927, 0x27182819, r0, r1, r2, 0); 3353 TESTINST3("uxtah r0, r1, r2, ROR #16", 0x31415927, 0x27182819, r0, r1, r2, 0); 3354 TESTINST3("uxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27182819, r0, r1, r2, 0); 3355 TESTINST3("uxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27182819, r0, r1, r2, 0); 3356 3357 TESTINST3("uxtah r0, r1, r2, ROR #24", 0x31415927, 0x27189819, r0, r1, r2, 0); 3358 TESTINST3("uxtah r0, r1, r2, ROR #16", 0x31415927, 0x27189819, r0, r1, r2, 0); 3359 TESTINST3("uxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27189819, r0, r1, r2, 0); 3360 TESTINST3("uxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27189819, r0, r1, r2, 0); 3361 3362 TESTINST3("uxtah r0, r1, r2, ROR #24", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3363 TESTINST3("uxtah r0, r1, r2, ROR #24", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3364 TESTINST3("uxtah r0, r1, r2, ROR #24", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3365 TESTINST3("uxtah r0, r1, r2, ROR #24", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3366 TESTINST3("uxtah r0, r1, r2, ROR #24", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3367 TESTINST3("uxtah r0, r1, r2, ROR #24", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3368 TESTINST3("uxtah r0, r1, r2, ROR #24", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3369 TESTINST3("uxtah r0, r1, r2, ROR #24", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3370 TESTINST3("uxtah r0, r1, r2, ROR #24", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3371 TESTINST3("uxtah r0, r1, r2, ROR #24", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3372 3373 TESTINST3("uxtah r0, r1, r2, ROR #16", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3374 TESTINST3("uxtah r0, r1, r2, ROR #16", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3375 TESTINST3("uxtah r0, r1, r2, ROR #16", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3376 TESTINST3("uxtah r0, r1, r2, ROR #16", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3377 TESTINST3("uxtah r0, r1, r2, ROR #16", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3378 TESTINST3("uxtah r0, r1, r2, ROR #16", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3379 TESTINST3("uxtah r0, r1, r2, ROR #16", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3380 TESTINST3("uxtah r0, r1, r2, ROR #16", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3381 TESTINST3("uxtah r0, r1, r2, ROR #16", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3382 TESTINST3("uxtah r0, r1, r2, ROR #16", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3383 3384 TESTINST3("uxtah r0, r1, r2, ROR #8", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3385 TESTINST3("uxtah r0, r1, r2, ROR #8", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3386 TESTINST3("uxtah r0, r1, r2, ROR #8", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3387 TESTINST3("uxtah r0, r1, r2, ROR #8", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3388 TESTINST3("uxtah r0, r1, r2, ROR #8", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3389 TESTINST3("uxtah r0, r1, r2, ROR #8", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3390 TESTINST3("uxtah r0, r1, r2, ROR #8", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3391 TESTINST3("uxtah r0, r1, r2, ROR #8", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3392 TESTINST3("uxtah r0, r1, r2, ROR #8", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3393 TESTINST3("uxtah r0, r1, r2, ROR #8", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3394 3395 TESTINST3("uxtah r0, r1, r2, ROR #0", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 3396 TESTINST3("uxtah r0, r1, r2, ROR #0", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 3397 TESTINST3("uxtah r0, r1, r2, ROR #0", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 3398 TESTINST3("uxtah r0, r1, r2, ROR #0", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 3399 TESTINST3("uxtah r0, r1, r2, ROR #0", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 3400 TESTINST3("uxtah r0, r1, r2, ROR #0", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 3401 TESTINST3("uxtah r0, r1, r2, ROR #0", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 3402 TESTINST3("uxtah r0, r1, r2, ROR #0", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 3403 TESTINST3("uxtah r0, r1, r2, ROR #0", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 3404 TESTINST3("uxtah r0, r1, r2, ROR #0", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 3405 3406 printf("------------ SMLAWB ------------\n"); 3407 /* smlawb rD, rN, rM, rA */ 3408 TESTINST4("smlawb r0, r1, r2, r3", 3409 0x00030000, 0x00040000, 0x00000000, r0,r1,r2,r3, 0); 3410 TESTINST4("smlawb r0, r1, r2, r3", 3411 0x00030001, 0x00040002, 0x00007fff, r0,r1,r2,r3, 0); 3412 TESTINST4("smlawb r0, r1, r2, r3", 3413 0x00038001, 0x00047fff, 0x00005fff, r0,r1,r2,r3, 0); 3414 TESTINST4("smlawb r0, r1, r2, r3", 3415 0x00037fff, 0x00047fff, 0x00007fff, r0,r1,r2,r3, 0); 3416 TESTINST4("smlawb r0, r1, r2, r3", 3417 0x0003ffff, 0x0004ffff, 0x7fff7fff, r0,r1,r2,r3, 0); 3418 TESTINST4("smlawb r0, r1, r2, r3", 3419 0x0003fffc, 0x0004ffff, 0xffffffff, r0,r1,r2,r3, 0); 3420 TESTINST4("smlawb r0, r1, r2, r3", 3421 0xb8035b5b, 0xce0ce1ed, 0x5f986e68, r0, r1, r2, r3, 0); 3422 TESTINST4("smlawb r0, r1, r2, r3", 3423 0x35232047, 0x146275d8, 0xaae3433f, r0, r1, r2, r3, 0); 3424 TESTINST4("smlawb r0, r1, r2, r3", 3425 0xe7aa57b4, 0x1584bd74, 0x2c07a5b4, r0, r1, r2, r3, 0); 3426 TESTINST4("smlawb r0, r1, r2, r3", 3427 0x32fa0095, 0x36f26261, 0x89d2ef86, r0, r1, r2, r3, 0); 3428 TESTINST4("smlawb r0, r1, r2, r3", 3429 0x8ed8287c, 0x02c90120, 0xd4b64d54, r0, r1, r2, r3, 0); 3430 TESTINST4("smlawb r0, r1, r2, r3", 3431 0xc53aaba9, 0x29300837, 0x0b02c58a, r0, r1, r2, r3, 0); 3432 TESTINST4("smlawb r0, r1, r2, r3", 3433 0x216158cb, 0x57a50a01, 0xb0d20777, r0, r1, r2, r3, 0); 3434 TESTINST4("smlawb r0, r1, r2, r3", 3435 0x3e2e1bd7, 0x3cd6cd94, 0x7e376198, r0, r1, r2, r3, 0); 3436 TESTINST4("smlawb r0, r1, r2, r3", 3437 0xd5fe2dc4, 0xdd914bf7, 0xd5dc5407, r0, r1, r2, r3, 0); 3438 TESTINST4("smlawb r0, r1, r2, r3", 3439 0xf87b961e, 0x1d66879f, 0xf2b64835, r0, r1, r2, r3, 0); 3440 TESTINST4("smlawb r0, r1, r2, r3", 3441 0xd65db979, 0xc61b323b, 0xae930a1a, r0, r1, r2, r3, 0); 3442 TESTINST4("smlawb r0, r1, r2, r3", 3443 0x5ef1f1a8, 0xbf73f0a5, 0x2fb714c9, r0, r1, r2, r3, 0); 3444 TESTINST4("smlawb r0, r1, r2, r3", 3445 0x1ffe53d9, 0x815bb75b, 0xa3268abe, r0, r1, r2, r3, 0); 3446 TESTINST4("smlawb r0, r1, r2, r3", 3447 0xed2cbf78, 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, r3, 0); 3448 TESTINST4("smlawb r0, r1, r2, r3", 3449 0xeaa652c7, 0x137741f4, 0x3dba1164, r0, r1, r2, r3, 0); 3450 TESTINST4("smlawb r0, r1, r2, r3", 3451 0x3ada0280, 0x71fbde8b, 0xdba5bd25, r0, r1, r2, r3, 0); 3452 TESTINST4("smlawb r0, r1, r2, r3", 3453 0xda4ba05b, 0x90f9833d, 0x884c0ad8, r0, r1, r2, r3, 0); 3454 TESTINST4("smlawb r0, r1, r2, r3", 3455 0xc00b821a, 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, r3, 0); 3456 TESTINST4("smlawb r0, r1, r2, r3", 3457 0xe1bb8606, 0x58293969, 0x81616d13, r0, r1, r2, r3, 0); 3458 TESTINST4("smlawb r0, r1, r2, r3", 3459 0x51f31d95, 0xa3cfd624, 0x6077fb1f, r0, r1, r2, r3, 0); 3460 TESTINST4("smlawb r0, r1, r2, r3", 3461 0x0849a0c2, 0x0872f25a, 0x40b094e2, r0, r1, r2, r3, 0); 3462 TESTINST4("smlawb r0, r1, r2, r3", 3463 0x17913309, 0xf1e03d7e, 0x91edc21d, r0, r1, r2, r3, 0); 3464 TESTINST4("smlawb r0, r1, r2, r3", 3465 0x5388b5cd, 0x86582032, 0x6034078d, r0, r1, r2, r3, 0); 3466 TESTINST4("smlawb r0, r1, r2, r3", 3467 0x181c436b, 0x5de41558, 0xccfa1c7e, r0, r1, r2, r3, 0); 3468 TESTINST4("smlawb r0, r1, r2, r3", 3469 0x23ba1b46, 0x4437983c, 0x48d06549, r0, r1, r2, r3, 0); 3470 TESTINST4("smlawb r0, r1, r2, r3", 3471 0xa9085781, 0xc6b4ac58, 0xb2aead21, r0, r1, r2, r3, 0); 3472 TESTINST4("smlawb r0, r1, r2, r3", 3473 0xc2bdf597, 0xdde1e6a4, 0x852e3a72, r0, r1, r2, r3, 0); 3474 TESTINST4("smlawb r0, r1, r2, r3", 3475 0x157b0dea, 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, r3, 0); 3476 TESTINST4("smlawb r0, r1, r2, r3", 3477 0x3edad6b6, 0x82aceb7a, 0x0557c6fc, r0, r1, r2, r3, 0); 3478 TESTINST4("smlawb r0, r1, r2, r3", 3479 0x6cc9bfa8, 0x7f808c15, 0x81874a02, r0, r1, r2, r3, 0); 3480 TESTINST4("smlawb r0, r1, r2, r3", 3481 0x6b1422c7, 0x33921b00, 0x3ccad3f7, r0, r1, r2, r3, 0); 3482 TESTINST4("smlawb r0, r1, r2, r3", 3483 0xd7ce1909, 0x3e435701, 0x85fbf196, r0, r1, r2, r3, 0); 3484 TESTINST4("smlawb r0, r1, r2, r3", 3485 0xb4e16b6e, 0x6e13680a, 0x89436f88, r0, r1, r2, r3, 0); 3486 TESTINST4("smlawb r0, r1, r2, r3", 3487 0x44858efc, 0x9002bc30, 0x390d2c2f, r0, r1, r2, r3, 0); 3488 TESTINST4("smlawb r0, r1, r2, r3", 3489 0xbea121ab, 0x953ff6ec, 0x80657c40, r0, r1, r2, r3, 0); 3490 TESTINST4("smlawb r0, r1, r2, r3", 3491 0x6ffed89f, 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, r3, 0); 3492 TESTINST4("smlawb r0, r1, r2, r3", 3493 0x7795635d, 0x5e6e32dd, 0xe4999bf2, r0, r1, r2, r3, 0); 3494 TESTINST4("smlawb r0, r1, r2, r3", 3495 0xec0c2f30, 0x5736ed46, 0x231348c0, r0, r1, r2, r3, 0); 3496 TESTINST4("smlawb r0, r1, r2, r3", 3497 0x4f9ddd1b, 0x95bca5d8, 0x5765b203, r0, r1, r2, r3, 0); 3498 TESTINST4("smlawb r0, r1, r2, r3", 3499 0xc1553709, 0x0112b30a, 0x69ec0212, r0, r1, r2, r3, 0); 3500 TESTINST4("smlawb r0, r1, r2, r3", 3501 0x74bd0223, 0x03fa9bb5, 0x899d9192, r0, r1, r2, r3, 0); 3502 TESTINST4("smlawb r0, r1, r2, r3", 3503 0xf52e9fbf, 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, r3, 0); 3504 TESTINST4("smlawb r0, r1, r2, r3", 3505 0x64a365ef, 0x2dd01366, 0xf7b0b13e, r0, r1, r2, r3, 0); 3506 TESTINST4("smlawb r0, r1, r2, r3", 3507 0x5e4b1cbf, 0x44de5ca9, 0x464a21cc, r0, r1, r2, r3, 0); 3508 TESTINST4("smlawb r0, r1, r2, r3", 3509 0x299da970, 0xe8108f1b, 0xf5818cfb, r0, r1, r2, r3, 0); 3510 TESTINST4("smlawb r0, r1, r2, r3", 3511 0xcd90d604, 0xaa5e9444, 0x8217b7df, r0, r1, r2, r3, 0); 3512 TESTINST4("smlawb r0, r1, r2, r3", 3513 0xe60743c3, 0x7acb4de3, 0x73c29060, r0, r1, r2, r3, 0); 3514 TESTINST4("smlawb r0, r1, r2, r3", 3515 0x868e7c7d, 0x5f77532e, 0x1d133d3d, r0, r1, r2, r3, 0); 3516 TESTINST4("smlawb r0, r1, r2, r3", 3517 0x4e5e0760, 0x8f6d3264, 0x21ba2fb3, r0, r1, r2, r3, 0); 3518 TESTINST4("smlawb r0, r1, r2, r3", 3519 0xde99ac2f, 0x0be36f70, 0xeda5110c, r0, r1, r2, r3, 0); 3520 TESTINST4("smlawb r0, r1, r2, r3", 3521 0xc57243b7, 0xcf1e4487, 0xf20fb90f, r0, r1, r2, r3, 0); 3522 3523 printf("------------ SMLAWT ------------\n"); 3524 /* smlawt rD, rN, rM, rA */ 3525 TESTINST4("smlawt r0, r1, r2, r3", 3526 0x00030000, 0x00040000, 0x00000000, r0,r1,r2,r3, 0); 3527 TESTINST4("smlawt r0, r1, r2, r3", 3528 0x00030001, 0x00040002, 0x00007fff, r0,r1,r2,r3, 0); 3529 TESTINST4("smlawt r0, r1, r2, r3", 3530 0x00038001, 0x00047fff, 0x00005fff, r0,r1,r2,r3, 0); 3531 TESTINST4("smlawt r0, r1, r2, r3", 3532 0x00037fff, 0x00047fff, 0x00007fff, r0,r1,r2,r3, 0); 3533 TESTINST4("smlawt r0, r1, r2, r3", 3534 0x0003ffff, 0x0004ffff, 0x7fff7fff, r0,r1,r2,r3, 0); 3535 TESTINST4("smlawt r0, r1, r2, r3", 3536 0x0003fffc, 0x0004ffff, 0xffffffff, r0,r1,r2,r3, 0); 3537 TESTINST4("smlawt r0, r1, r2, r3", 3538 0xb8035b5b, 0xce0ce1ed, 0x5f986e68, r0, r1, r2, r3, 0); 3539 TESTINST4("smlawt r0, r1, r2, r3", 3540 0x35232047, 0x146275d8, 0xaae3433f, r0, r1, r2, r3, 0); 3541 TESTINST4("smlawt r0, r1, r2, r3", 3542 0xe7aa57b4, 0x1584bd74, 0x2c07a5b4, r0, r1, r2, r3, 0); 3543 TESTINST4("smlawt r0, r1, r2, r3", 3544 0x32fa0095, 0x36f26261, 0x89d2ef86, r0, r1, r2, r3, 0); 3545 TESTINST4("smlawt r0, r1, r2, r3", 3546 0x8ed8287c, 0x02c90120, 0xd4b64d54, r0, r1, r2, r3, 0); 3547 TESTINST4("smlawt r0, r1, r2, r3", 3548 0xc53aaba9, 0x29300837, 0x0b02c58a, r0, r1, r2, r3, 0); 3549 TESTINST4("smlawt r0, r1, r2, r3", 3550 0x216158cb, 0x57a50a01, 0xb0d20777, r0, r1, r2, r3, 0); 3551 TESTINST4("smlawt r0, r1, r2, r3", 3552 0x3e2e1bd7, 0x3cd6cd94, 0x7e376198, r0, r1, r2, r3, 0); 3553 TESTINST4("smlawt r0, r1, r2, r3", 3554 0xd5fe2dc4, 0xdd914bf7, 0xd5dc5407, r0, r1, r2, r3, 0); 3555 TESTINST4("smlawt r0, r1, r2, r3", 3556 0xf87b961e, 0x1d66879f, 0xf2b64835, r0, r1, r2, r3, 0); 3557 TESTINST4("smlawt r0, r1, r2, r3", 3558 0xd65db979, 0xc61b323b, 0xae930a1a, r0, r1, r2, r3, 0); 3559 TESTINST4("smlawt r0, r1, r2, r3", 3560 0x5ef1f1a8, 0xbf73f0a5, 0x2fb714c9, r0, r1, r2, r3, 0); 3561 TESTINST4("smlawt r0, r1, r2, r3", 3562 0x1ffe53d9, 0x815bb75b, 0xa3268abe, r0, r1, r2, r3, 0); 3563 TESTINST4("smlawt r0, r1, r2, r3", 3564 0xed2cbf78, 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, r3, 0); 3565 TESTINST4("smlawt r0, r1, r2, r3", 3566 0xeaa652c7, 0x137741f4, 0x3dba1164, r0, r1, r2, r3, 0); 3567 TESTINST4("smlawt r0, r1, r2, r3", 3568 0x3ada0280, 0x71fbde8b, 0xdba5bd25, r0, r1, r2, r3, 0); 3569 TESTINST4("smlawt r0, r1, r2, r3", 3570 0xda4ba05b, 0x90f9833d, 0x884c0ad8, r0, r1, r2, r3, 0); 3571 TESTINST4("smlawt r0, r1, r2, r3", 3572 0xc00b821a, 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, r3, 0); 3573 TESTINST4("smlawt r0, r1, r2, r3", 3574 0xe1bb8606, 0x58293969, 0x81616d13, r0, r1, r2, r3, 0); 3575 TESTINST4("smlawt r0, r1, r2, r3", 3576 0x51f31d95, 0xa3cfd624, 0x6077fb1f, r0, r1, r2, r3, 0); 3577 TESTINST4("smlawt r0, r1, r2, r3", 3578 0x0849a0c2, 0x0872f25a, 0x40b094e2, r0, r1, r2, r3, 0); 3579 TESTINST4("smlawt r0, r1, r2, r3", 3580 0x17913309, 0xf1e03d7e, 0x91edc21d, r0, r1, r2, r3, 0); 3581 TESTINST4("smlawt r0, r1, r2, r3", 3582 0x5388b5cd, 0x86582032, 0x6034078d, r0, r1, r2, r3, 0); 3583 TESTINST4("smlawt r0, r1, r2, r3", 3584 0x181c436b, 0x5de41558, 0xccfa1c7e, r0, r1, r2, r3, 0); 3585 TESTINST4("smlawt r0, r1, r2, r3", 3586 0x23ba1b46, 0x4437983c, 0x48d06549, r0, r1, r2, r3, 0); 3587 TESTINST4("smlawt r0, r1, r2, r3", 3588 0xa9085781, 0xc6b4ac58, 0xb2aead21, r0, r1, r2, r3, 0); 3589 TESTINST4("smlawt r0, r1, r2, r3", 3590 0xc2bdf597, 0xdde1e6a4, 0x852e3a72, r0, r1, r2, r3, 0); 3591 TESTINST4("smlawt r0, r1, r2, r3", 3592 0x157b0dea, 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, r3, 0); 3593 TESTINST4("smlawt r0, r1, r2, r3", 3594 0x3edad6b6, 0x82aceb7a, 0x0557c6fc, r0, r1, r2, r3, 0); 3595 TESTINST4("smlawt r0, r1, r2, r3", 3596 0x6cc9bfa8, 0x7f808c15, 0x81874a02, r0, r1, r2, r3, 0); 3597 TESTINST4("smlawt r0, r1, r2, r3", 3598 0x6b1422c7, 0x33921b00, 0x3ccad3f7, r0, r1, r2, r3, 0); 3599 TESTINST4("smlawt r0, r1, r2, r3", 3600 0xd7ce1909, 0x3e435701, 0x85fbf196, r0, r1, r2, r3, 0); 3601 TESTINST4("smlawt r0, r1, r2, r3", 3602 0xb4e16b6e, 0x6e13680a, 0x89436f88, r0, r1, r2, r3, 0); 3603 TESTINST4("smlawt r0, r1, r2, r3", 3604 0x44858efc, 0x9002bc30, 0x390d2c2f, r0, r1, r2, r3, 0); 3605 TESTINST4("smlawt r0, r1, r2, r3", 3606 0xbea121ab, 0x953ff6ec, 0x80657c40, r0, r1, r2, r3, 0); 3607 TESTINST4("smlawt r0, r1, r2, r3", 3608 0x6ffed89f, 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, r3, 0); 3609 TESTINST4("smlawt r0, r1, r2, r3", 3610 0x7795635d, 0x5e6e32dd, 0xe4999bf2, r0, r1, r2, r3, 0); 3611 TESTINST4("smlawt r0, r1, r2, r3", 3612 0xec0c2f30, 0x5736ed46, 0x231348c0, r0, r1, r2, r3, 0); 3613 TESTINST4("smlawt r0, r1, r2, r3", 3614 0x4f9ddd1b, 0x95bca5d8, 0x5765b203, r0, r1, r2, r3, 0); 3615 TESTINST4("smlawt r0, r1, r2, r3", 3616 0xc1553709, 0x0112b30a, 0x69ec0212, r0, r1, r2, r3, 0); 3617 TESTINST4("smlawt r0, r1, r2, r3", 3618 0x74bd0223, 0x03fa9bb5, 0x899d9192, r0, r1, r2, r3, 0); 3619 TESTINST4("smlawt r0, r1, r2, r3", 3620 0xf52e9fbf, 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, r3, 0); 3621 TESTINST4("smlawt r0, r1, r2, r3", 3622 0x64a365ef, 0x2dd01366, 0xf7b0b13e, r0, r1, r2, r3, 0); 3623 TESTINST4("smlawt r0, r1, r2, r3", 3624 0x5e4b1cbf, 0x44de5ca9, 0x464a21cc, r0, r1, r2, r3, 0); 3625 TESTINST4("smlawt r0, r1, r2, r3", 3626 0x299da970, 0xe8108f1b, 0xf5818cfb, r0, r1, r2, r3, 0); 3627 TESTINST4("smlawt r0, r1, r2, r3", 3628 0xcd90d604, 0xaa5e9444, 0x8217b7df, r0, r1, r2, r3, 0); 3629 TESTINST4("smlawt r0, r1, r2, r3", 3630 0xe60743c3, 0x7acb4de3, 0x73c29060, r0, r1, r2, r3, 0); 3631 TESTINST4("smlawt r0, r1, r2, r3", 3632 0x868e7c7d, 0x5f77532e, 0x1d133d3d, r0, r1, r2, r3, 0); 3633 TESTINST4("smlawt r0, r1, r2, r3", 3634 0x4e5e0760, 0x8f6d3264, 0x21ba2fb3, r0, r1, r2, r3, 0); 3635 TESTINST4("smlawt r0, r1, r2, r3", 3636 0xde99ac2f, 0x0be36f70, 0xeda5110c, r0, r1, r2, r3, 0); 3637 TESTINST4("smlawt r0, r1, r2, r3", 3638 0xc57243b7, 0xcf1e4487, 0xf20fb90f, r0, r1, r2, r3, 0); 3639 3640 3641 printf("----------------- SMLSD ----------------- \n"); 3642 TESTINST4("smlsd r0, r1, r2, r3", 3643 0x80008000, 0x80008000, 0x00000000, r0, r1, r2, r3, 0); 3644 TESTINST4("smlsd r0, r1, r2, r3", 3645 0x7fff7fff, 0x00000000, 0x00000000, r0, r1, r2, r3, 0); 3646 TESTINST4("smlsd r0, r1, r2, r3", 3647 0x7fff7fff, 0x00010001, 0x00000001, r0, r1, r2, r3, 0); 3648 TESTINST4("smlsd r0, r1, r2, r3", 3649 0x80008000, 0xffffffff, 0x0000001f, r0, r1, r2, r3, 0); 3650 TESTINST4("smlsd r0, r1, r2, r3", 3651 0x00640064, 0x00030003, 0x00000020, r0, r1, r2, r3, 0); 3652 TESTINST4("smlsd r0, r1, r2, r3", 3653 0xffffffff, 0xfffc0001, 0x000000ff, r0, r1, r2, r3, 0); 3654 TESTINST4("smlsd r0, r1, r2, r3", 3655 0xfff70fff, 0x00030003, 0x00000100, r0, r1, r2, r3, 0); 3656 TESTINST4("smlsd r0, r1, r2, r3", 3657 0xb8035b5b, 0xce0ce1ed, 0x5f986e68, r0, r1, r2, r3, 0); 3658 TESTINST4("smlsd r0, r1, r2, r3", 3659 0x35232047, 0x146275d8, 0xaae3433f, r0, r1, r2, r3, 0); 3660 TESTINST4("smlsd r0, r1, r2, r3", 3661 0xe7aa57b4, 0x1584bd74, 0x2c07a5b4, r0, r1, r2, r3, 0); 3662 TESTINST4("smlsd r0, r1, r2, r3", 3663 0x32fa0095, 0x36f26261, 0x89d2ef86, r0, r1, r2, r3, 0); 3664 TESTINST4("smlsd r0, r1, r2, r3", 3665 0x8ed8287c, 0x02c90120, 0xd4b64d54, r0, r1, r2, r3, 0); 3666 TESTINST4("smlsd r0, r1, r2, r3", 3667 0xc53aaba9, 0x29300837, 0x0b02c58a, r0, r1, r2, r3, 0); 3668 TESTINST4("smlsd r0, r1, r2, r3", 3669 0x216158cb, 0x57a50a01, 0xb0d20777, r0, r1, r2, r3, 0); 3670 TESTINST4("smlsd r0, r1, r2, r3", 3671 0x3e2e1bd7, 0x3cd6cd94, 0x7e376198, r0, r1, r2, r3, 0); 3672 TESTINST4("smlsd r0, r1, r2, r3", 3673 0xd5fe2dc4, 0xdd914bf7, 0xd5dc5407, r0, r1, r2, r3, 0); 3674 TESTINST4("smlsd r0, r1, r2, r3", 3675 0xf87b961e, 0x1d66879f, 0xf2b64835, r0, r1, r2, r3, 0); 3676 TESTINST4("smlsd r0, r1, r2, r3", 3677 0xd65db979, 0xc61b323b, 0xae930a1a, r0, r1, r2, r3, 0); 3678 TESTINST4("smlsd r0, r1, r2, r3", 3679 0x5ef1f1a8, 0xbf73f0a5, 0x2fb714c9, r0, r1, r2, r3, 0); 3680 TESTINST4("smlsd r0, r1, r2, r3", 3681 0x1ffe53d9, 0x815bb75b, 0xa3268abe, r0, r1, r2, r3, 0); 3682 TESTINST4("smlsd r0, r1, r2, r3", 3683 0xed2cbf78, 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, r3, 0); 3684 TESTINST4("smlsd r0, r1, r2, r3", 3685 0xeaa652c7, 0x137741f4, 0x3dba1164, r0, r1, r2, r3, 0); 3686 TESTINST4("smlsd r0, r1, r2, r3", 3687 0x3ada0280, 0x71fbde8b, 0xdba5bd25, r0, r1, r2, r3, 0); 3688 TESTINST4("smlsd r0, r1, r2, r3", 3689 0xda4ba05b, 0x90f9833d, 0x884c0ad8, r0, r1, r2, r3, 0); 3690 TESTINST4("smlsd r0, r1, r2, r3", 3691 0xc00b821a, 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, r3, 0); 3692 TESTINST4("smlsd r0, r1, r2, r3", 3693 0xe1bb8606, 0x58293969, 0x81616d13, r0, r1, r2, r3, 0); 3694 TESTINST4("smlsd r0, r1, r2, r3", 3695 0x51f31d95, 0xa3cfd624, 0x6077fb1f, r0, r1, r2, r3, 0); 3696 TESTINST4("smlsd r0, r1, r2, r3", 3697 0x0849a0c2, 0x0872f25a, 0x40b094e2, r0, r1, r2, r3, 0); 3698 TESTINST4("smlsd r0, r1, r2, r3", 3699 0x17913309, 0xf1e03d7e, 0x91edc21d, r0, r1, r2, r3, 0); 3700 TESTINST4("smlsd r0, r1, r2, r3", 3701 0x5388b5cd, 0x86582032, 0x6034078d, r0, r1, r2, r3, 0); 3702 TESTINST4("smlsd r0, r1, r2, r3", 3703 0x181c436b, 0x5de41558, 0xccfa1c7e, r0, r1, r2, r3, 0); 3704 TESTINST4("smlsd r0, r1, r2, r3", 3705 0x23ba1b46, 0x4437983c, 0x48d06549, r0, r1, r2, r3, 0); 3706 TESTINST4("smlsd r0, r1, r2, r3", 3707 0xa9085781, 0xc6b4ac58, 0xb2aead21, r0, r1, r2, r3, 0); 3708 TESTINST4("smlsd r0, r1, r2, r3", 3709 0xc2bdf597, 0xdde1e6a4, 0x852e3a72, r0, r1, r2, r3, 0); 3710 TESTINST4("smlsd r0, r1, r2, r3", 3711 0x157b0dea, 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, r3, 0); 3712 TESTINST4("smlsd r0, r1, r2, r3", 3713 0x3edad6b6, 0x82aceb7a, 0x0557c6fc, r0, r1, r2, r3, 0); 3714 TESTINST4("smlsd r0, r1, r2, r3", 3715 0x6cc9bfa8, 0x7f808c15, 0x81874a02, r0, r1, r2, r3, 0); 3716 TESTINST4("smlsd r0, r1, r2, r3", 3717 0x6b1422c7, 0x33921b00, 0x3ccad3f7, r0, r1, r2, r3, 0); 3718 TESTINST4("smlsd r0, r1, r2, r3", 3719 0xd7ce1909, 0x3e435701, 0x85fbf196, r0, r1, r2, r3, 0); 3720 TESTINST4("smlsd r0, r1, r2, r3", 3721 0xb4e16b6e, 0x6e13680a, 0x89436f88, r0, r1, r2, r3, 0); 3722 TESTINST4("smlsd r0, r1, r2, r3", 3723 0x44858efc, 0x9002bc30, 0x390d2c2f, r0, r1, r2, r3, 0); 3724 TESTINST4("smlsd r0, r1, r2, r3", 3725 0xbea121ab, 0x953ff6ec, 0x80657c40, r0, r1, r2, r3, 0); 3726 TESTINST4("smlsd r0, r1, r2, r3", 3727 0x6ffed89f, 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, r3, 0); 3728 TESTINST4("smlsd r0, r1, r2, r3", 3729 0x7795635d, 0x5e6e32dd, 0xe4999bf2, r0, r1, r2, r3, 0); 3730 TESTINST4("smlsd r0, r1, r2, r3", 3731 0xec0c2f30, 0x5736ed46, 0x231348c0, r0, r1, r2, r3, 0); 3732 TESTINST4("smlsd r0, r1, r2, r3", 3733 0x4f9ddd1b, 0x95bca5d8, 0x5765b203, r0, r1, r2, r3, 0); 3734 TESTINST4("smlsd r0, r1, r2, r3", 3735 0xc1553709, 0x0112b30a, 0x69ec0212, r0, r1, r2, r3, 0); 3736 TESTINST4("smlsd r0, r1, r2, r3", 3737 0x74bd0223, 0x03fa9bb5, 0x899d9192, r0, r1, r2, r3, 0); 3738 TESTINST4("smlsd r0, r1, r2, r3", 3739 0xf52e9fbf, 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, r3, 0); 3740 TESTINST4("smlsd r0, r1, r2, r3", 3741 0x64a365ef, 0x2dd01366, 0xf7b0b13e, r0, r1, r2, r3, 0); 3742 TESTINST4("smlsd r0, r1, r2, r3", 3743 0x5e4b1cbf, 0x44de5ca9, 0x464a21cc, r0, r1, r2, r3, 0); 3744 TESTINST4("smlsd r0, r1, r2, r3", 3745 0x299da970, 0xe8108f1b, 0xf5818cfb, r0, r1, r2, r3, 0); 3746 TESTINST4("smlsd r0, r1, r2, r3", 3747 0xcd90d604, 0xaa5e9444, 0x8217b7df, r0, r1, r2, r3, 0); 3748 TESTINST4("smlsd r0, r1, r2, r3", 3749 0xe60743c3, 0x7acb4de3, 0x73c29060, r0, r1, r2, r3, 0); 3750 TESTINST4("smlsd r0, r1, r2, r3", 3751 0x868e7c7d, 0x5f77532e, 0x1d133d3d, r0, r1, r2, r3, 0); 3752 TESTINST4("smlsd r0, r1, r2, r3", 3753 0x4e5e0760, 0x8f6d3264, 0x21ba2fb3, r0, r1, r2, r3, 0); 3754 TESTINST4("smlsd r0, r1, r2, r3", 3755 0xde99ac2f, 0x0be36f70, 0xeda5110c, r0, r1, r2, r3, 0); 3756 TESTINST4("smlsd r0, r1, r2, r3", 3757 0xc57243b7, 0xcf1e4487, 0xf20fb90f, r0, r1, r2, r3, 0); 3758 3759 printf("----------------- SMLSDX ----------------- \n"); 3760 TESTINST4("smlsdx r0, r1, r2, r3", 3761 0x80008000, 0x80008000, 0x00000000, r0, r1, r2, r3, 0); 3762 TESTINST4("smlsdx r0, r1, r2, r3", 3763 0x7fff7fff, 0x00000000, 0x00000000, r0, r1, r2, r3, 0); 3764 TESTINST4("smlsdx r0, r1, r2, r3", 3765 0x7fff7fff, 0x00010001, 0x00000001, r0, r1, r2, r3, 0); 3766 TESTINST4("smlsdx r0, r1, r2, r3", 3767 0x80008000, 0xffffffff, 0x0000001f, r0, r1, r2, r3, 0); 3768 TESTINST4("smlsdx r0, r1, r2, r3", 3769 0x00640064, 0x00030003, 0x00000020, r0, r1, r2, r3, 0); 3770 TESTINST4("smlsdx r0, r1, r2, r3", 3771 0xffffffff, 0xfffc0001, 0x000000ff, r0, r1, r2, r3, 0); 3772 TESTINST4("smlsdx r0, r1, r2, r3", 3773 0xfff70fff, 0x00030003, 0x00000100, r0, r1, r2, r3, 0); 3774 TESTINST4("smlsdx r0, r1, r2, r3", 3775 0xb8035b5b, 0xce0ce1ed, 0x5f986e68, r0, r1, r2, r3, 0); 3776 TESTINST4("smlsdx r0, r1, r2, r3", 3777 0x35232047, 0x146275d8, 0xaae3433f, r0, r1, r2, r3, 0); 3778 TESTINST4("smlsdx r0, r1, r2, r3", 3779 0xe7aa57b4, 0x1584bd74, 0x2c07a5b4, r0, r1, r2, r3, 0); 3780 3781 3782 printf("----------------- SMUSD ----------------- \n"); 3783 TESTINST3("smusd r0, r1, r2", 0x80008000, 0x80008000, r0, r1, r2, 0); 3784 TESTINST3("smusd r0, r1, r2", 0x7fff7fff, 0x00000000, r0, r1, r2, 0); 3785 TESTINST3("smusd r0, r1, r2", 0x7fff7fff, 0x00010001, r0, r1, r2, 0); 3786 TESTINST3("smusd r0, r1, r2", 0x80008000, 0xffffffff, r0, r1, r2, 0); 3787 TESTINST3("smusd r0, r1, r2", 0x00640064, 0x00030003, r0, r1, r2, 0); 3788 TESTINST3("smusd r0, r1, r2", 0xffffffff, 0xfffc0001, r0, r1, r2, 0); 3789 TESTINST3("smusd r0, r1, r2", 0xfff70fff, 0x00030003, r0, r1, r2, 0); 3790 TESTINST3("smusd r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 3791 TESTINST3("smusd r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 3792 TESTINST3("smusd r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 3793 TESTINST3("smusd r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 3794 TESTINST3("smusd r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 3795 TESTINST3("smusd r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 3796 TESTINST3("smusd r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 3797 TESTINST3("smusd r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 3798 TESTINST3("smusd r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 3799 TESTINST3("smusd r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 3800 TESTINST3("smusd r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 3801 TESTINST3("smusd r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 3802 TESTINST3("smusd r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 3803 TESTINST3("smusd r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 3804 TESTINST3("smusd r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 3805 TESTINST3("smusd r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 3806 TESTINST3("smusd r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 3807 TESTINST3("smusd r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 3808 TESTINST3("smusd r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 3809 TESTINST3("smusd r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 3810 TESTINST3("smusd r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 3811 TESTINST3("smusd r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 3812 TESTINST3("smusd r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 3813 TESTINST3("smusd r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 3814 TESTINST3("smusd r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 3815 TESTINST3("smusd r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 3816 TESTINST3("smusd r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 3817 TESTINST3("smusd r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 3818 TESTINST3("smusd r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 3819 TESTINST3("smusd r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 3820 TESTINST3("smusd r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 3821 TESTINST3("smusd r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 3822 TESTINST3("smusd r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 3823 TESTINST3("smusd r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 3824 TESTINST3("smusd r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 3825 TESTINST3("smusd r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 3826 TESTINST3("smusd r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 3827 TESTINST3("smusd r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 3828 TESTINST3("smusd r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 3829 TESTINST3("smusd r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 3830 TESTINST3("smusd r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 3831 TESTINST3("smusd r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 3832 TESTINST3("smusd r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 3833 TESTINST3("smusd r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 3834 TESTINST3("smusd r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 3835 TESTINST3("smusd r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 3836 TESTINST3("smusd r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 3837 TESTINST3("smusd r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 3838 TESTINST3("smusd r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 3839 TESTINST3("smusd r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 3840 printf("----------------- SMUSDX ---------------- \n"); 3841 TESTINST3("smusdx r0, r1, r2", 0x80008000, 0x80008000, r0, r1, r2, 0); 3842 TESTINST3("smusdx r0, r1, r2", 0x7fff7fff, 0x00000000, r0, r1, r2, 0); 3843 TESTINST3("smusdx r0, r1, r2", 0x7fff7fff, 0x00010001, r0, r1, r2, 0); 3844 TESTINST3("smusdx r0, r1, r2", 0x80008000, 0xffffffff, r0, r1, r2, 0); 3845 TESTINST3("smusdx r0, r1, r2", 0x00640064, 0x00030003, r0, r1, r2, 0); 3846 TESTINST3("smusdx r0, r1, r2", 0xffffffff, 0xfffc0001, r0, r1, r2, 0); 3847 TESTINST3("smusdx r0, r1, r2", 0xfff70fff, 0x00030003, r0, r1, r2, 0); 3848 TESTINST3("smusdx r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 3849 TESTINST3("smusdx r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 3850 TESTINST3("smusdx r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 3851 TESTINST3("smusdx r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 3852 TESTINST3("smusdx r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 3853 TESTINST3("smusdx r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 3854 TESTINST3("smusdx r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 3855 TESTINST3("smusdx r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 3856 TESTINST3("smusdx r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 3857 TESTINST3("smusdx r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 3858 TESTINST3("smusdx r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 3859 TESTINST3("smusdx r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 3860 TESTINST3("smusdx r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 3861 TESTINST3("smusdx r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 3862 TESTINST3("smusdx r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 3863 TESTINST3("smusdx r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 3864 TESTINST3("smusdx r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 3865 TESTINST3("smusdx r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 3866 TESTINST3("smusdx r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 3867 TESTINST3("smusdx r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 3868 TESTINST3("smusdx r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 3869 TESTINST3("smusdx r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 3870 TESTINST3("smusdx r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 3871 TESTINST3("smusdx r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 3872 TESTINST3("smusdx r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 3873 TESTINST3("smusdx r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 3874 TESTINST3("smusdx r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 3875 TESTINST3("smusdx r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 3876 TESTINST3("smusdx r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 3877 TESTINST3("smusdx r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 3878 TESTINST3("smusdx r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 3879 TESTINST3("smusdx r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 3880 TESTINST3("smusdx r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 3881 TESTINST3("smusdx r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 3882 TESTINST3("smusdx r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 3883 TESTINST3("smusdx r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 3884 TESTINST3("smusdx r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 3885 TESTINST3("smusdx r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 3886 TESTINST3("smusdx r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 3887 TESTINST3("smusdx r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 3888 TESTINST3("smusdx r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 3889 TESTINST3("smusdx r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 3890 TESTINST3("smusdx r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 3891 TESTINST3("smusdx r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 3892 TESTINST3("smusdx r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 3893 TESTINST3("smusdx r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 3894 TESTINST3("smusdx r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 3895 TESTINST3("smusdx r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 3896 TESTINST3("smusdx r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 3897 TESTINST3("smusdx r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 3898 3899 printf("----------------- USAD8 ---------------- \n"); 3900 TESTINST3("usad8 r0, r1, r2", 0x80008000, 0x80008000, r0, r1, r2, 0); 3901 TESTINST3("usad8 r0, r1, r2", 0x7fff7fff, 0x00000000, r0, r1, r2, 0); 3902 TESTINST3("usad8 r0, r1, r2", 0x7fff7fff, 0x00010001, r0, r1, r2, 0); 3903 TESTINST3("usad8 r0, r1, r2", 0x80008000, 0xffffffff, r0, r1, r2, 0); 3904 TESTINST3("usad8 r0, r1, r2", 0x00640064, 0x00030003, r0, r1, r2, 0); 3905 TESTINST3("usad8 r0, r1, r2", 0xffffffff, 0xfffc0001, r0, r1, r2, 0); 3906 TESTINST3("usad8 r0, r1, r2", 0xfff70fff, 0x00030003, r0, r1, r2, 0); 3907 TESTINST3("usad8 r0, r1, r2", 0xd83b849b, 0xca5e5605, r0, r1, r2, 0); 3908 TESTINST3("usad8 r0, r1, r2", 0x0cdafabe, 0x50865114, r0, r1, r2, 0); 3909 TESTINST3("usad8 r0, r1, r2", 0x2738f0ff, 0x6a228b19, r0, r1, r2, 0); 3910 TESTINST3("usad8 r0, r1, r2", 0xfaceab39, 0x2973c051, r0, r1, r2, 0); 3911 TESTINST3("usad8 r0, r1, r2", 0xa3e6f759, 0x557c7ba2, r0, r1, r2, 0); 3912 TESTINST3("usad8 r0, r1, r2", 0x72f33509, 0x9b41bfb1, r0, r1, r2, 0); 3913 TESTINST3("usad8 r0, r1, r2", 0xa5ec1aa8, 0x2b62ba5a, r0, r1, r2, 0); 3914 TESTINST3("usad8 r0, r1, r2", 0x6ebd04d9, 0x55ea3e4e, r0, r1, r2, 0); 3915 TESTINST3("usad8 r0, r1, r2", 0x2eaea305, 0xe79fd570, r0, r1, r2, 0); 3916 TESTINST3("usad8 r0, r1, r2", 0x22b65db1, 0xcdb7ed11, r0, r1, r2, 0); 3917 TESTINST3("usad8 r0, r1, r2", 0x776c41c7, 0x2eb68500, r0, r1, r2, 0); 3918 TESTINST3("usad8 r0, r1, r2", 0xe50dd77c, 0xd6f9a698, r0, r1, r2, 0); 3919 TESTINST3("usad8 r0, r1, r2", 0x0be36f70, 0xeda5110c, r0, r1, r2, 0); 3920 TESTINST3("usad8 r0, r1, r2", 0xebbff82b, 0xd759eb72, r0, r1, r2, 0); 3921 TESTINST3("usad8 r0, r1, r2", 0x50c28082, 0xd9c4b1f4, r0, r1, r2, 0); 3922 TESTINST3("usad8 r0, r1, r2", 0x17962e8f, 0xa29eb320, r0, r1, r2, 0); 3923 TESTINST3("usad8 r0, r1, r2", 0xc57243b7, 0xcf1e4487, r0, r1, r2, 0); 3924 TESTINST3("usad8 r0, r1, r2", 0x7eb226ac, 0xf20fb90f, r0, r1, r2, 0); 3925 TESTINST3("usad8 r0, r1, r2", 0xbce0f026, 0xbb151055, r0, r1, r2, 0); 3926 TESTINST3("usad8 r0, r1, r2", 0xa5757252, 0x957440d2, r0, r1, r2, 0); 3927 TESTINST3("usad8 r0, r1, r2", 0xf4a477c1, 0x728b7771, r0, r1, r2, 0); 3928 TESTINST3("usad8 r0, r1, r2", 0x76723a21, 0xf13c20f3, r0, r1, r2, 0); 3929 TESTINST3("usad8 r0, r1, r2", 0x74d01105, 0x86398371, r0, r1, r2, 0); 3930 TESTINST3("usad8 r0, r1, r2", 0xc1273e2c, 0x03d0fb78, r0, r1, r2, 0); 3931 TESTINST3("usad8 r0, r1, r2", 0xdd9b7653, 0xd0d49b7c, r0, r1, r2, 0); 3932 TESTINST3("usad8 r0, r1, r2", 0xdde62fd1, 0x76354a58, r0, r1, r2, 0); 3933 TESTINST3("usad8 r0, r1, r2", 0xc3fb4a96, 0x9fa45fb7, r0, r1, r2, 0); 3934 TESTINST3("usad8 r0, r1, r2", 0xa1a10f56, 0x7572bdec, r0, r1, r2, 0); 3935 TESTINST3("usad8 r0, r1, r2", 0x4b7d4fd9, 0xfea59eb6, r0, r1, r2, 0); 3936 TESTINST3("usad8 r0, r1, r2", 0x9d0ddffc, 0xf2669090, r0, r1, r2, 0); 3937 TESTINST3("usad8 r0, r1, r2", 0x4f82d17c, 0xbc1ff573, r0, r1, r2, 0); 3938 TESTINST3("usad8 r0, r1, r2", 0x08215ca2, 0x345f67e6, r0, r1, r2, 0); 3939 TESTINST3("usad8 r0, r1, r2", 0xf23595d0, 0x3f39d77e, r0, r1, r2, 0); 3940 TESTINST3("usad8 r0, r1, r2", 0xf244c158, 0xfb2db55b, r0, r1, r2, 0); 3941 TESTINST3("usad8 r0, r1, r2", 0x256bfdd6, 0x13aebedf, r0, r1, r2, 0); 3942 TESTINST3("usad8 r0, r1, r2", 0xc02a0c05, 0x5b013000, r0, r1, r2, 0); 3943 TESTINST3("usad8 r0, r1, r2", 0xee2fa46e, 0xed95b542, r0, r1, r2, 0); 3944 TESTINST3("usad8 r0, r1, r2", 0x97a7da20, 0x60bb5ee8, r0, r1, r2, 0); 3945 TESTINST3("usad8 r0, r1, r2", 0xa231d5e6, 0xd9000a64, r0, r1, r2, 0); 3946 TESTINST3("usad8 r0, r1, r2", 0x10e1968a, 0x624f9467, r0, r1, r2, 0); 3947 TESTINST3("usad8 r0, r1, r2", 0x0e089270, 0xa8c64d94, r0, r1, r2, 0); 3948 TESTINST3("usad8 r0, r1, r2", 0x9e8e0185, 0x6b4f637a, r0, r1, r2, 0); 3949 TESTINST3("usad8 r0, r1, r2", 0x3096f12e, 0x11f5f4b9, r0, r1, r2, 0); 3950 TESTINST3("usad8 r0, r1, r2", 0xffc134df, 0x0b02eb0c, r0, r1, r2, 0); 3951 TESTINST3("usad8 r0, r1, r2", 0xe444dc25, 0xd5eef620, r0, r1, r2, 0); 3952 TESTINST3("usad8 r0, r1, r2", 0x06ea9b2a, 0xa2108661, r0, r1, r2, 0); 3953 TESTINST3("usad8 r0, r1, r2", 0x448f3a5f, 0x17aecf57, r0, r1, r2, 0); 3954 TESTINST3("usad8 r0, r1, r2", 0x4b0c2337, 0xffa63d6c, r0, r1, r2, 0); 3955 TESTINST3("usad8 r0, r1, r2", 0xf91d5f56, 0x088bc0f9, r0, r1, r2, 0); 3956 TESTINST3("usad8 r0, r1, r2", 0xf808434e, 0xefeab836, r0, r1, r2, 0); 3957 3958 printf("----------------- USADA8 ----------------- \n"); 3959 TESTINST4("usada8 r0, r1, r2, r3", 3960 0x80008000, 0x80008000, 0x00000000, r0, r1, r2, r3, 0); 3961 TESTINST4("usada8 r0, r1, r2, r3", 3962 0x7fff7fff, 0x00000000, 0x00000000, r0, r1, r2, r3, 0); 3963 TESTINST4("usada8 r0, r1, r2, r3", 3964 0x7fff7fff, 0x00010001, 0x00000001, r0, r1, r2, r3, 0); 3965 TESTINST4("usada8 r0, r1, r2, r3", 3966 0x80008000, 0xffffffff, 0x0000001f, r0, r1, r2, r3, 0); 3967 TESTINST4("usada8 r0, r1, r2, r3", 3968 0x00640064, 0x00030003, 0x00000020, r0, r1, r2, r3, 0); 3969 TESTINST4("usada8 r0, r1, r2, r3", 3970 0xffffffff, 0xfffc0001, 0x000000ff, r0, r1, r2, r3, 0); 3971 TESTINST4("usada8 r0, r1, r2, r3", 3972 0xfff70fff, 0x00030003, 0x00000100, r0, r1, r2, r3, 0); 3973 TESTINST4("usada8 r0, r1, r2, r3", 3974 0xb8035b5b, 0xce0ce1ed, 0x5f986e68, r0, r1, r2, r3, 0); 3975 TESTINST4("usada8 r0, r1, r2, r3", 3976 0x35232047, 0x146275d8, 0xaae3433f, r0, r1, r2, r3, 0); 3977 TESTINST4("usada8 r0, r1, r2, r3", 3978 0xe7aa57b4, 0x1584bd74, 0x2c07a5b4, r0, r1, r2, r3, 0); 3979 TESTINST4("usada8 r0, r1, r2, r3", 3980 0x32fa0095, 0x36f26261, 0x89d2ef86, r0, r1, r2, r3, 0); 3981 TESTINST4("usada8 r0, r1, r2, r3", 3982 0x8ed8287c, 0x02c90120, 0xd4b64d54, r0, r1, r2, r3, 0); 3983 TESTINST4("usada8 r0, r1, r2, r3", 3984 0xc53aaba9, 0x29300837, 0x0b02c58a, r0, r1, r2, r3, 0); 3985 TESTINST4("usada8 r0, r1, r2, r3", 3986 0x216158cb, 0x57a50a01, 0xb0d20777, r0, r1, r2, r3, 0); 3987 TESTINST4("usada8 r0, r1, r2, r3", 3988 0x3e2e1bd7, 0x3cd6cd94, 0x7e376198, r0, r1, r2, r3, 0); 3989 TESTINST4("usada8 r0, r1, r2, r3", 3990 0xd5fe2dc4, 0xdd914bf7, 0xd5dc5407, r0, r1, r2, r3, 0); 3991 TESTINST4("usada8 r0, r1, r2, r3", 3992 0xf87b961e, 0x1d66879f, 0xf2b64835, r0, r1, r2, r3, 0); 3993 TESTINST4("usada8 r0, r1, r2, r3", 3994 0xd65db979, 0xc61b323b, 0xae930a1a, r0, r1, r2, r3, 0); 3995 TESTINST4("usada8 r0, r1, r2, r3", 3996 0x5ef1f1a8, 0xbf73f0a5, 0x2fb714c9, r0, r1, r2, r3, 0); 3997 TESTINST4("usada8 r0, r1, r2, r3", 3998 0x1ffe53d9, 0x815bb75b, 0xa3268abe, r0, r1, r2, r3, 0); 3999 TESTINST4("usada8 r0, r1, r2, r3", 4000 0xed2cbf78, 0xc6ffabb6, 0xef9e9fd9, r0, r1, r2, r3, 0); 4001 TESTINST4("usada8 r0, r1, r2, r3", 4002 0xeaa652c7, 0x137741f4, 0x3dba1164, r0, r1, r2, r3, 0); 4003 TESTINST4("usada8 r0, r1, r2, r3", 4004 0x3ada0280, 0x71fbde8b, 0xdba5bd25, r0, r1, r2, r3, 0); 4005 TESTINST4("usada8 r0, r1, r2, r3", 4006 0xda4ba05b, 0x90f9833d, 0x884c0ad8, r0, r1, r2, r3, 0); 4007 TESTINST4("usada8 r0, r1, r2, r3", 4008 0xc00b821a, 0x7fa1d5a6, 0x9a4ff1b8, r0, r1, r2, r3, 0); 4009 TESTINST4("usada8 r0, r1, r2, r3", 4010 0xe1bb8606, 0x58293969, 0x81616d13, r0, r1, r2, r3, 0); 4011 TESTINST4("usada8 r0, r1, r2, r3", 4012 0x51f31d95, 0xa3cfd624, 0x6077fb1f, r0, r1, r2, r3, 0); 4013 TESTINST4("usada8 r0, r1, r2, r3", 4014 0x0849a0c2, 0x0872f25a, 0x40b094e2, r0, r1, r2, r3, 0); 4015 TESTINST4("usada8 r0, r1, r2, r3", 4016 0x17913309, 0xf1e03d7e, 0x91edc21d, r0, r1, r2, r3, 0); 4017 TESTINST4("usada8 r0, r1, r2, r3", 4018 0x5388b5cd, 0x86582032, 0x6034078d, r0, r1, r2, r3, 0); 4019 TESTINST4("usada8 r0, r1, r2, r3", 4020 0x181c436b, 0x5de41558, 0xccfa1c7e, r0, r1, r2, r3, 0); 4021 TESTINST4("usada8 r0, r1, r2, r3", 4022 0x23ba1b46, 0x4437983c, 0x48d06549, r0, r1, r2, r3, 0); 4023 TESTINST4("usada8 r0, r1, r2, r3", 4024 0xa9085781, 0xc6b4ac58, 0xb2aead21, r0, r1, r2, r3, 0); 4025 TESTINST4("usada8 r0, r1, r2, r3", 4026 0xc2bdf597, 0xdde1e6a4, 0x852e3a72, r0, r1, r2, r3, 0); 4027 TESTINST4("usada8 r0, r1, r2, r3", 4028 0x157b0dea, 0xf0d5ff94, 0xe7b87e39, r0, r1, r2, r3, 0); 4029 TESTINST4("usada8 r0, r1, r2, r3", 4030 0x3edad6b6, 0x82aceb7a, 0x0557c6fc, r0, r1, r2, r3, 0); 4031 TESTINST4("usada8 r0, r1, r2, r3", 4032 0x6cc9bfa8, 0x7f808c15, 0x81874a02, r0, r1, r2, r3, 0); 4033 TESTINST4("usada8 r0, r1, r2, r3", 4034 0x6b1422c7, 0x33921b00, 0x3ccad3f7, r0, r1, r2, r3, 0); 4035 TESTINST4("usada8 r0, r1, r2, r3", 4036 0xd7ce1909, 0x3e435701, 0x85fbf196, r0, r1, r2, r3, 0); 4037 TESTINST4("usada8 r0, r1, r2, r3", 4038 0xb4e16b6e, 0x6e13680a, 0x89436f88, r0, r1, r2, r3, 0); 4039 TESTINST4("usada8 r0, r1, r2, r3", 4040 0x44858efc, 0x9002bc30, 0x390d2c2f, r0, r1, r2, r3, 0); 4041 TESTINST4("usada8 r0, r1, r2, r3", 4042 0xbea121ab, 0x953ff6ec, 0x80657c40, r0, r1, r2, r3, 0); 4043 TESTINST4("usada8 r0, r1, r2, r3", 4044 0x6ffed89f, 0x3e8c49b7, 0x11bd07d1, r0, r1, r2, r3, 0); 4045 TESTINST4("usada8 r0, r1, r2, r3", 4046 0x7795635d, 0x5e6e32dd, 0xe4999bf2, r0, r1, r2, r3, 0); 4047 TESTINST4("usada8 r0, r1, r2, r3", 4048 0xec0c2f30, 0x5736ed46, 0x231348c0, r0, r1, r2, r3, 0); 4049 TESTINST4("usada8 r0, r1, r2, r3", 4050 0x4f9ddd1b, 0x95bca5d8, 0x5765b203, r0, r1, r2, r3, 0); 4051 TESTINST4("usada8 r0, r1, r2, r3", 4052 0xc1553709, 0x0112b30a, 0x69ec0212, r0, r1, r2, r3, 0); 4053 TESTINST4("usada8 r0, r1, r2, r3", 4054 0x74bd0223, 0x03fa9bb5, 0x899d9192, r0, r1, r2, r3, 0); 4055 TESTINST4("usada8 r0, r1, r2, r3", 4056 0xf52e9fbf, 0xb4c510a7, 0x7fcbe5a9, r0, r1, r2, r3, 0); 4057 TESTINST4("usada8 r0, r1, r2, r3", 4058 0x64a365ef, 0x2dd01366, 0xf7b0b13e, r0, r1, r2, r3, 0); 4059 TESTINST4("usada8 r0, r1, r2, r3", 4060 0x5e4b1cbf, 0x44de5ca9, 0x464a21cc, r0, r1, r2, r3, 0); 4061 TESTINST4("usada8 r0, r1, r2, r3", 4062 0x299da970, 0xe8108f1b, 0xf5818cfb, r0, r1, r2, r3, 0); 4063 TESTINST4("usada8 r0, r1, r2, r3", 4064 0xcd90d604, 0xaa5e9444, 0x8217b7df, r0, r1, r2, r3, 0); 4065 TESTINST4("usada8 r0, r1, r2, r3", 4066 0xe60743c3, 0x7acb4de3, 0x73c29060, r0, r1, r2, r3, 0); 4067 TESTINST4("usada8 r0, r1, r2, r3", 4068 0x868e7c7d, 0x5f77532e, 0x1d133d3d, r0, r1, r2, r3, 0); 4069 TESTINST4("usada8 r0, r1, r2, r3", 4070 0x4e5e0760, 0x8f6d3264, 0x21ba2fb3, r0, r1, r2, r3, 0); 4071 TESTINST4("usada8 r0, r1, r2, r3", 4072 0xde99ac2f, 0x0be36f70, 0xeda5110c, r0, r1, r2, r3, 0); 4073 TESTINST4("usada8 r0, r1, r2, r3", 4074 0xc57243b7, 0xcf1e4487, 0xf20fb90f, r0, r1, r2, r3, 0); 4075 4076 4077 4078 4079 /* 4080 TESTINST3("theinsn", 0xf7b0b13e, 0x5e4b1cbf, r0, r1, r2, 0); 4081 TESTINST3("theinsn", 0x44de5ca9, 0x464a21cc, r0, r1, r2, 0); 4082 TESTINST3("theinsn", 0x299da970, 0xe8108f1b, r0, r1, r2, 0); 4083 TESTINST3("theinsn", 0xf5818cfb, 0xcd90d604, r0, r1, r2, 0); 4084 TESTINST3("theinsn", 0xaa5e9444, 0x8217b7df, r0, r1, r2, 0); 4085 TESTINST3("theinsn", 0xe60743c3, 0x7acb4de3, r0, r1, r2, 0); 4086 TESTINST3("theinsn", 0x73c29060, 0x868e7c7d, r0, r1, r2, 0); 4087 TESTINST3("theinsn", 0x5f77532e, 0x1d133d3d, r0, r1, r2, 0); 4088 TESTINST3("theinsn", 0x4e5e0760, 0x8f6d3264, r0, r1, r2, 0); 4089 TESTINST3("theinsn", 0x21ba2fb3, 0xde99ac2f, r0, r1, r2, 0); 4090 */ 4091 4092 return 0; 4093 } 4094