1 #include <stdio.h> 2 3 #define TESTINST(instruction, in, in1, pos, size) \ 4 { \ 5 unsigned long long out; \ 6 __asm__ __volatile__( \ 7 "move $t0, %2" "\n\t" \ 8 "move $t1, %1" "\n\t" \ 9 instruction" $t0, $t1, "#pos", "#size "\n\t" \ 10 "move %0, $t0" "\n\t" \ 11 : "=r" (out) \ 12 : "r" (in), "r" (in1) \ 13 : "t0", "t1" \ 14 ); \ 15 printf("%s :: in 0x%llx, in1 0x%llx, out 0x%llx, pos: %d, size: %d\n", \ 16 instruction, (long long) in, (long long) in1, out, pos, size); \ 17 } 18 19 int main() 20 { 21 #if (__mips == 64) && (__mips_isa_rev >= 2) 22 printf("--- INS ---\n"); 23 /* The values of pos and size must satisfy all of the following relations: 24 0 <= pos < 32 25 0 < size <= 32 26 0 < pos+size <= 32 */ 27 TESTINST("ins", 0x0, 0x0, 0, 1); 28 TESTINST("ins", 0x0, 0xffffffffffffffff, 0, 1); 29 TESTINST("ins", 0x0, 0x98765432, 0, 1); 30 TESTINST("ins", 0x0, 0xffffffffff865421, 0, 1); 31 TESTINST("ins", 0xffffffffffffffff, 0x0, 0, 1); 32 TESTINST("ins", 0xffffffffffffffff, 0xffffffffffffffff, 0, 1); 33 TESTINST("ins", 0xffffffffffffffff, 0x98765432, 0, 1); 34 TESTINST("ins", 0xffffffffffffffff, 0xffffffffff865421, 0, 1); 35 TESTINST("ins", 0x98765432, 0x0, 0, 1); 36 TESTINST("ins", 0x98765432, 0xffffffffffffffff, 0, 1); 37 TESTINST("ins", 0x98765432, 0x98765432, 0, 1); 38 TESTINST("ins", 0x98765432, 0xffffffffff865421, 0, 1); 39 TESTINST("ins", 0xffffffffff865421, 0x0, 0, 1); 40 TESTINST("ins", 0xffffffffff865421, 0xffffffffffffffff, 0, 1); 41 TESTINST("ins", 0xffffffffff865421, 0x98765432, 0, 1); 42 TESTINST("ins", 0xffffffffff865421, 0xffffffffff865421, 0, 1); 43 TESTINST("ins", 0x0, 0x0, 0, 4); 44 TESTINST("ins", 0x0, 0xffffffffffffffff, 0, 4); 45 TESTINST("ins", 0x0, 0x98765432, 0, 4); 46 TESTINST("ins", 0x0, 0xffffffffff865421, 0, 4); 47 TESTINST("ins", 0xffffffffffffffff, 0x0, 0, 4); 48 TESTINST("ins", 0xffffffffffffffff, 0xffffffffffffffff, 0, 4); 49 TESTINST("ins", 0xffffffffffffffff, 0x98765432, 0, 4); 50 TESTINST("ins", 0xffffffffffffffff, 0xffffffffff865421, 0, 4); 51 TESTINST("ins", 0x98765432, 0x0, 0, 4); 52 TESTINST("ins", 0x98765432, 0xffffffffffffffff, 0, 4); 53 TESTINST("ins", 0x98765432, 0x98765432, 0, 4); 54 TESTINST("ins", 0x98765432, 0xffffffffff865421, 0, 4); 55 TESTINST("ins", 0xffffffffff865421, 0x0, 0, 4); 56 TESTINST("ins", 0xffffffffff865421, 0xffffffffffffffff, 0, 4); 57 TESTINST("ins", 0xffffffffff865421, 0x98765432, 0, 4); 58 TESTINST("ins", 0xffffffffff865421, 0xffffffffff865421, 0, 4); 59 TESTINST("ins", 0x0, 0x0, 0, 16); 60 TESTINST("ins", 0x0, 0xffffffffffffffff, 0, 16); 61 TESTINST("ins", 0x0, 0x98765432, 0, 16); 62 TESTINST("ins", 0x0, 0xffffffffff865421, 0, 16); 63 TESTINST("ins", 0xffffffffffffffff, 0x0, 0, 16); 64 TESTINST("ins", 0xffffffffffffffff, 0xffffffffffffffff, 0, 16); 65 TESTINST("ins", 0xffffffffffffffff, 0x98765432, 0, 16); 66 TESTINST("ins", 0xffffffffffffffff, 0xffffffffff865421, 0, 16); 67 TESTINST("ins", 0x98765432, 0x0, 0, 16); 68 TESTINST("ins", 0x98765432, 0xffffffffffffffff, 0, 16); 69 TESTINST("ins", 0x98765432, 0x98765432, 0, 16); 70 TESTINST("ins", 0x98765432, 0xffffffffff865421, 0, 16); 71 TESTINST("ins", 0xffffffffff865421, 0x0, 0, 16); 72 TESTINST("ins", 0xffffffffff865421, 0xffffffffffffffff, 0, 16); 73 TESTINST("ins", 0xffffffffff865421, 0x98765432, 0, 16); 74 TESTINST("ins", 0xffffffffff865421, 0xffffffffff865421, 0, 16); 75 TESTINST("ins", 0x0, 0x0, 0, 32); 76 TESTINST("ins", 0x0, 0xffffffffffffffff, 0, 32); 77 TESTINST("ins", 0x0, 0x98765432, 0, 32); 78 TESTINST("ins", 0x0, 0xffffffffff865421, 0, 32); 79 TESTINST("ins", 0xffffffffffffffff, 0x0, 0, 32); 80 TESTINST("ins", 0xffffffffffffffff, 0xffffffffffffffff, 0, 32); 81 TESTINST("ins", 0xffffffffffffffff, 0x98765432, 0, 32); 82 TESTINST("ins", 0xffffffffffffffff, 0xffffffffff865421, 0, 32); 83 TESTINST("ins", 0x98765432, 0x0, 0, 32); 84 TESTINST("ins", 0x98765432, 0xffffffffffffffff, 0, 32); 85 TESTINST("ins", 0x98765432, 0x98765432, 0, 32); 86 TESTINST("ins", 0x98765432, 0xffffffffff865421, 0, 32); 87 TESTINST("ins", 0xffffffffff865421, 0x0, 0, 32); 88 TESTINST("ins", 0xffffffffff865421, 0xffffffffffffffff, 0, 32); 89 TESTINST("ins", 0xffffffffff865421, 0x98765432, 0, 32); 90 TESTINST("ins", 0xffffffffff865421, 0xffffffffff865421, 0, 32); 91 92 TESTINST("ins", 0x0, 0x0, 4, 1); 93 TESTINST("ins", 0x0, 0xffffffffffffffff, 4, 1); 94 TESTINST("ins", 0x0, 0x98765432, 4, 1); 95 TESTINST("ins", 0x0, 0xffffffffff865421, 4, 1); 96 TESTINST("ins", 0xffffffffffffffff, 0x0, 4, 1); 97 TESTINST("ins", 0xffffffffffffffff, 0xffffffffffffffff, 4, 1); 98 TESTINST("ins", 0xffffffffffffffff, 0x98765432, 4, 1); 99 TESTINST("ins", 0xffffffffffffffff, 0xffffffffff865421, 4, 1); 100 TESTINST("ins", 0x98765432, 0x0, 4, 1); 101 TESTINST("ins", 0x98765432, 0xffffffffffffffff, 4, 1); 102 TESTINST("ins", 0x98765432, 0x98765432, 4, 1); 103 TESTINST("ins", 0x98765432, 0xffffffffff865421, 4, 1); 104 TESTINST("ins", 0xffffffffff865421, 0x0, 4, 1); 105 TESTINST("ins", 0xffffffffff865421, 0xffffffffffffffff, 4, 1); 106 TESTINST("ins", 0xffffffffff865421, 0x98765432, 4, 1); 107 TESTINST("ins", 0xffffffffff865421, 0xffffffffff865421, 4, 1); 108 TESTINST("ins", 0x0, 0x0, 4, 4); 109 TESTINST("ins", 0x0, 0xffffffffffffffff, 4, 4); 110 TESTINST("ins", 0x0, 0x98765432, 4, 4); 111 TESTINST("ins", 0x0, 0xffffffffff865421, 4, 4); 112 TESTINST("ins", 0xffffffffffffffff, 0x0, 4, 4); 113 TESTINST("ins", 0xffffffffffffffff, 0xffffffffffffffff, 4, 4); 114 TESTINST("ins", 0xffffffffffffffff, 0x98765432, 4, 4); 115 TESTINST("ins", 0xffffffffffffffff, 0xffffffffff865421, 4, 4); 116 TESTINST("ins", 0x98765432, 0x0, 4, 4); 117 TESTINST("ins", 0x98765432, 0xffffffffffffffff, 4, 4); 118 TESTINST("ins", 0x98765432, 0x98765432, 4, 4); 119 TESTINST("ins", 0x98765432, 0xffffffffff865421, 4, 4); 120 TESTINST("ins", 0xffffffffff865421, 0x0, 4, 4); 121 TESTINST("ins", 0xffffffffff865421, 0xffffffffffffffff, 4, 4); 122 TESTINST("ins", 0xffffffffff865421, 0x98765432, 4, 4); 123 TESTINST("ins", 0xffffffffff865421, 0xffffffffff865421, 4, 4); 124 TESTINST("ins", 0x0, 0x0, 4, 16); 125 TESTINST("ins", 0x0, 0xffffffffffffffff, 4, 16); 126 TESTINST("ins", 0x0, 0x98765432, 4, 16); 127 TESTINST("ins", 0x0, 0xffffffffff865421, 4, 16); 128 TESTINST("ins", 0xffffffffffffffff, 0x0, 4, 16); 129 TESTINST("ins", 0xffffffffffffffff, 0xffffffffffffffff, 4, 16); 130 TESTINST("ins", 0xffffffffffffffff, 0x98765432, 4, 16); 131 TESTINST("ins", 0xffffffffffffffff, 0xffffffffff865421, 4, 16); 132 TESTINST("ins", 0x98765432, 0x0, 4, 16); 133 TESTINST("ins", 0x98765432, 0xffffffffffffffff, 4, 16); 134 TESTINST("ins", 0x98765432, 0x98765432, 4, 16); 135 TESTINST("ins", 0x98765432, 0xffffffffff865421, 4, 16); 136 TESTINST("ins", 0xffffffffff865421, 0x0, 4, 16); 137 TESTINST("ins", 0xffffffffff865421, 0xffffffffffffffff, 4, 16); 138 TESTINST("ins", 0xffffffffff865421, 0x98765432, 4, 16); 139 TESTINST("ins", 0xffffffffff865421, 0xffffffffff865421, 4, 16); 140 TESTINST("ins", 0x0, 0x0, 4, 28); 141 TESTINST("ins", 0x0, 0xffffffffffffffff, 4, 28); 142 TESTINST("ins", 0x0, 0x98765432, 4, 28); 143 TESTINST("ins", 0x0, 0xffffffffff865421, 4, 28); 144 TESTINST("ins", 0xffffffffffffffff, 0x0, 4, 28); 145 TESTINST("ins", 0xffffffffffffffff, 0xffffffffffffffff, 4, 28); 146 TESTINST("ins", 0xffffffffffffffff, 0x98765432, 4, 28); 147 TESTINST("ins", 0xffffffffffffffff, 0xffffffffff865421, 4, 28); 148 TESTINST("ins", 0x98765432, 0x0, 4, 28); 149 TESTINST("ins", 0x98765432, 0xffffffffffffffff, 4, 28); 150 TESTINST("ins", 0x98765432, 0x98765432, 4, 28); 151 TESTINST("ins", 0x98765432, 0xffffffffff865421, 4, 28); 152 TESTINST("ins", 0xffffffffff865421, 0x0, 4, 28); 153 TESTINST("ins", 0xffffffffff865421, 0xffffffffffffffff, 4, 28); 154 TESTINST("ins", 0xffffffffff865421, 0x98765432, 4, 28); 155 TESTINST("ins", 0xffffffffff865421, 0xffffffffff865421, 4, 28); 156 157 TESTINST("ins", 0x0, 0x0, 16, 1); 158 TESTINST("ins", 0x0, 0xffffffffffffffff, 16, 1); 159 TESTINST("ins", 0x0, 0x98765432, 16, 1); 160 TESTINST("ins", 0x0, 0xffffffffff865421, 16, 1); 161 TESTINST("ins", 0xffffffffffffffff, 0x0, 16, 1); 162 TESTINST("ins", 0xffffffffffffffff, 0xffffffffffffffff, 16, 1); 163 TESTINST("ins", 0xffffffffffffffff, 0x98765432, 16, 1); 164 TESTINST("ins", 0xffffffffffffffff, 0xffffffffff865421, 16, 1); 165 TESTINST("ins", 0x98765432, 0x0, 16, 1); 166 TESTINST("ins", 0x98765432, 0xffffffffffffffff, 16, 1); 167 TESTINST("ins", 0x98765432, 0x98765432, 16, 1); 168 TESTINST("ins", 0x98765432, 0xffffffffff865421, 16, 1); 169 TESTINST("ins", 0xffffffffff865421, 0x0, 16, 1); 170 TESTINST("ins", 0xffffffffff865421, 0xffffffffffffffff, 16, 1); 171 TESTINST("ins", 0xffffffffff865421, 0x98765432, 16, 1); 172 TESTINST("ins", 0xffffffffff865421, 0xffffffffff865421, 16, 1); 173 TESTINST("ins", 0x0, 0x0, 16, 4); 174 TESTINST("ins", 0x0, 0xffffffffffffffff, 16, 4); 175 TESTINST("ins", 0x0, 0x98765432, 16, 4); 176 TESTINST("ins", 0x0, 0xffffffffff865421, 16, 4); 177 TESTINST("ins", 0xffffffffffffffff, 0x0, 16, 4); 178 TESTINST("ins", 0xffffffffffffffff, 0xffffffffffffffff, 16, 4); 179 TESTINST("ins", 0xffffffffffffffff, 0x98765432, 16, 4); 180 TESTINST("ins", 0xffffffffffffffff, 0xffffffffff865421, 16, 4); 181 TESTINST("ins", 0x98765432, 0x0, 16, 4); 182 TESTINST("ins", 0x98765432, 0xffffffffffffffff, 16, 4); 183 TESTINST("ins", 0x98765432, 0x98765432, 16, 4); 184 TESTINST("ins", 0x98765432, 0xffffffffff865421, 16, 4); 185 TESTINST("ins", 0xffffffffff865421, 0x0, 16, 4); 186 TESTINST("ins", 0xffffffffff865421, 0xffffffffffffffff, 16, 4); 187 TESTINST("ins", 0xffffffffff865421, 0x98765432, 16, 4); 188 TESTINST("ins", 0xffffffffff865421, 0xffffffffff865421, 16, 4); 189 TESTINST("ins", 0x0, 0x0, 16, 16); 190 TESTINST("ins", 0x0, 0xffffffffffffffff, 16, 16); 191 TESTINST("ins", 0x0, 0x98765432, 16, 16); 192 TESTINST("ins", 0x0, 0xffffffffff865421, 16, 16); 193 TESTINST("ins", 0xffffffffffffffff, 0x0, 16, 16); 194 TESTINST("ins", 0xffffffffffffffff, 0xffffffffffffffff, 16, 16); 195 TESTINST("ins", 0xffffffffffffffff, 0x98765432, 16, 16); 196 TESTINST("ins", 0xffffffffffffffff, 0xffffffffff865421, 16, 16); 197 TESTINST("ins", 0x98765432, 0x0, 16, 16); 198 TESTINST("ins", 0x98765432, 0xffffffffffffffff, 16, 16); 199 TESTINST("ins", 0x98765432, 0x98765432, 16, 16); 200 TESTINST("ins", 0x98765432, 0xffffffffff865421, 16, 16); 201 TESTINST("ins", 0xffffffffff865421, 0x0, 16, 16); 202 TESTINST("ins", 0xffffffffff865421, 0xffffffffffffffff, 16, 16); 203 TESTINST("ins", 0xffffffffff865421, 0x98765432, 16, 16); 204 TESTINST("ins", 0xffffffffff865421, 0xffffffffff865421, 16, 16); 205 206 TESTINST("ins", 0x0, 0x0, 31, 1); 207 TESTINST("ins", 0x0, 0xffffffffffffffff, 31, 1); 208 TESTINST("ins", 0x0, 0x98765432, 31, 1); 209 TESTINST("ins", 0x0, 0xffffffffff865421, 31, 1); 210 TESTINST("ins", 0xffffffffffffffff, 0x0, 31, 1); 211 TESTINST("ins", 0xffffffffffffffff, 0xffffffffffffffff, 31, 1); 212 TESTINST("ins", 0xffffffffffffffff, 0x98765432, 31, 1); 213 TESTINST("ins", 0xffffffffffffffff, 0xffffffffff865421, 31, 1); 214 TESTINST("ins", 0x98765432, 0x0, 31, 1); 215 TESTINST("ins", 0x98765432, 0xffffffffffffffff, 31, 1); 216 TESTINST("ins", 0x98765432, 0x98765432, 31, 1); 217 TESTINST("ins", 0x98765432, 0xffffffffff865421, 31, 1); 218 TESTINST("ins", 0xffffffffff865421, 0x0, 31, 1); 219 TESTINST("ins", 0xffffffffff865421, 0xffffffffffffffff, 31, 1); 220 TESTINST("ins", 0xffffffffff865421, 0x98765432, 31, 1); 221 TESTINST("ins", 0xffffffffff865421, 0xffffffffff865421, 31, 1); 222 223 printf("--- EXT ---\n"); 224 /* The values of pos and size must satisfy all of the following relations: 225 0 <= pos < 32 226 0 < size <= 32 227 0 < pos+size <= 32 */ 228 TESTINST("ext", 0x0, 0x0, 0, 1); 229 TESTINST("ext", 0x0, 0xffffffffffffffff, 0, 1); 230 TESTINST("ext", 0x0, 0x98765432, 0, 1); 231 TESTINST("ext", 0x0, 0xffffffffff865421, 0, 1); 232 TESTINST("ext", 0xffffffffffffffff, 0x0, 0, 1); 233 TESTINST("ext", 0xffffffffffffffff, 0xffffffffffffffff, 0, 1); 234 TESTINST("ext", 0xffffffffffffffff, 0x98765432, 0, 1); 235 TESTINST("ext", 0xffffffffffffffff, 0xffffffffff865421, 0, 1); 236 TESTINST("ext", 0x98765432, 0x0, 0, 1); 237 TESTINST("ext", 0x98765432, 0xffffffffffffffff, 0, 1); 238 TESTINST("ext", 0x98765432, 0x98765432, 0, 1); 239 TESTINST("ext", 0x98765432, 0xffffffffff865421, 0, 1); 240 TESTINST("ext", 0xffffffffff865421, 0x0, 0, 1); 241 TESTINST("ext", 0xffffffffff865421, 0xffffffffffffffff, 0, 1); 242 TESTINST("ext", 0xffffffffff865421, 0x98765432, 0, 1); 243 TESTINST("ext", 0xffffffffff865421, 0xffffffffff865421, 0, 1); 244 TESTINST("ext", 0x0, 0x0, 0, 4); 245 TESTINST("ext", 0x0, 0xffffffffffffffff, 0, 4); 246 TESTINST("ext", 0x0, 0x98765432, 0, 4); 247 TESTINST("ext", 0x0, 0xffffffffff865421, 0, 4); 248 TESTINST("ext", 0xffffffffffffffff, 0x0, 0, 4); 249 TESTINST("ext", 0xffffffffffffffff, 0xffffffffffffffff, 0, 4); 250 TESTINST("ext", 0xffffffffffffffff, 0x98765432, 0, 4); 251 TESTINST("ext", 0xffffffffffffffff, 0xffffffffff865421, 0, 4); 252 TESTINST("ext", 0x98765432, 0x0, 0, 4); 253 TESTINST("ext", 0x98765432, 0xffffffffffffffff, 0, 4); 254 TESTINST("ext", 0x98765432, 0x98765432, 0, 4); 255 TESTINST("ext", 0x98765432, 0xffffffffff865421, 0, 4); 256 TESTINST("ext", 0xffffffffff865421, 0x0, 0, 4); 257 TESTINST("ext", 0xffffffffff865421, 0xffffffffffffffff, 0, 4); 258 TESTINST("ext", 0xffffffffff865421, 0x98765432, 0, 4); 259 TESTINST("ext", 0xffffffffff865421, 0xffffffffff865421, 0, 4); 260 TESTINST("ext", 0x0, 0x0, 0, 16); 261 TESTINST("ext", 0x0, 0xffffffffffffffff, 0, 16); 262 TESTINST("ext", 0x0, 0x98765432, 0, 16); 263 TESTINST("ext", 0x0, 0xffffffffff865421, 0, 16); 264 TESTINST("ext", 0xffffffffffffffff, 0x0, 0, 16); 265 TESTINST("ext", 0xffffffffffffffff, 0xffffffffffffffff, 0, 16); 266 TESTINST("ext", 0xffffffffffffffff, 0x98765432, 0, 16); 267 TESTINST("ext", 0xffffffffffffffff, 0xffffffffff865421, 0, 16); 268 TESTINST("ext", 0x98765432, 0x0, 0, 16); 269 TESTINST("ext", 0x98765432, 0xffffffffffffffff, 0, 16); 270 TESTINST("ext", 0x98765432, 0x98765432, 0, 16); 271 TESTINST("ext", 0x98765432, 0xffffffffff865421, 0, 16); 272 TESTINST("ext", 0xffffffffff865421, 0x0, 0, 16); 273 TESTINST("ext", 0xffffffffff865421, 0xffffffffffffffff, 0, 16); 274 TESTINST("ext", 0xffffffffff865421, 0x98765432, 0, 16); 275 TESTINST("ext", 0xffffffffff865421, 0xffffffffff865421, 0, 16); 276 TESTINST("ext", 0x0, 0x0, 0, 32); 277 TESTINST("ext", 0x0, 0xffffffffffffffff, 0, 32); 278 TESTINST("ext", 0x0, 0x98765432, 0, 32); 279 TESTINST("ext", 0x0, 0xffffffffff865421, 0, 32); 280 TESTINST("ext", 0xffffffffffffffff, 0x0, 0, 32); 281 TESTINST("ext", 0xffffffffffffffff, 0xffffffffffffffff, 0, 32); 282 TESTINST("ext", 0xffffffffffffffff, 0x98765432, 0, 32); 283 TESTINST("ext", 0xffffffffffffffff, 0xffffffffff865421, 0, 32); 284 TESTINST("ext", 0x98765432, 0x0, 0, 32); 285 TESTINST("ext", 0x98765432, 0xffffffffffffffff, 0, 32); 286 TESTINST("ext", 0x98765432, 0x98765432, 0, 32); 287 TESTINST("ext", 0x98765432, 0xffffffffff865421, 0, 32); 288 TESTINST("ext", 0xffffffffff865421, 0x0, 0, 32); 289 TESTINST("ext", 0xffffffffff865421, 0xffffffffffffffff, 0, 32); 290 TESTINST("ext", 0xffffffffff865421, 0x98765432, 0, 32); 291 TESTINST("ext", 0xffffffffff865421, 0xffffffffff865421, 0, 32); 292 293 TESTINST("ext", 0x0, 0x0, 4, 1); 294 TESTINST("ext", 0x0, 0xffffffffffffffff, 4, 1); 295 TESTINST("ext", 0x0, 0x98765432, 4, 1); 296 TESTINST("ext", 0x0, 0xffffffffff865421, 4, 1); 297 TESTINST("ext", 0xffffffffffffffff, 0x0, 4, 1); 298 TESTINST("ext", 0xffffffffffffffff, 0xffffffffffffffff, 4, 1); 299 TESTINST("ext", 0xffffffffffffffff, 0x98765432, 4, 1); 300 TESTINST("ext", 0xffffffffffffffff, 0xffffffffff865421, 4, 1); 301 TESTINST("ext", 0x98765432, 0x0, 4, 1); 302 TESTINST("ext", 0x98765432, 0xffffffffffffffff, 4, 1); 303 TESTINST("ext", 0x98765432, 0x98765432, 4, 1); 304 TESTINST("ext", 0x98765432, 0xffffffffff865421, 4, 1); 305 TESTINST("ext", 0xffffffffff865421, 0x0, 4, 1); 306 TESTINST("ext", 0xffffffffff865421, 0xffffffffffffffff, 4, 1); 307 TESTINST("ext", 0xffffffffff865421, 0x98765432, 4, 1); 308 TESTINST("ext", 0xffffffffff865421, 0xffffffffff865421, 4, 1); 309 TESTINST("ext", 0x0, 0x0, 4, 4); 310 TESTINST("ext", 0x0, 0xffffffffffffffff, 4, 4); 311 TESTINST("ext", 0x0, 0x98765432, 4, 4); 312 TESTINST("ext", 0x0, 0xffffffffff865421, 4, 4); 313 TESTINST("ext", 0xffffffffffffffff, 0x0, 4, 4); 314 TESTINST("ext", 0xffffffffffffffff, 0xffffffffffffffff, 4, 4); 315 TESTINST("ext", 0xffffffffffffffff, 0x98765432, 4, 4); 316 TESTINST("ext", 0xffffffffffffffff, 0xffffffffff865421, 4, 4); 317 TESTINST("ext", 0x98765432, 0x0, 4, 4); 318 TESTINST("ext", 0x98765432, 0xffffffffffffffff, 4, 4); 319 TESTINST("ext", 0x98765432, 0x98765432, 4, 4); 320 TESTINST("ext", 0x98765432, 0xffffffffff865421, 4, 4); 321 TESTINST("ext", 0xffffffffff865421, 0x0, 4, 4); 322 TESTINST("ext", 0xffffffffff865421, 0xffffffffffffffff, 4, 4); 323 TESTINST("ext", 0xffffffffff865421, 0x98765432, 4, 4); 324 TESTINST("ext", 0xffffffffff865421, 0xffffffffff865421, 4, 4); 325 TESTINST("ext", 0x0, 0x0, 4, 16); 326 TESTINST("ext", 0x0, 0xffffffffffffffff, 4, 16); 327 TESTINST("ext", 0x0, 0x98765432, 4, 16); 328 TESTINST("ext", 0x0, 0xffffffffff865421, 4, 16); 329 TESTINST("ext", 0xffffffffffffffff, 0x0, 4, 16); 330 TESTINST("ext", 0xffffffffffffffff, 0xffffffffffffffff, 4, 16); 331 TESTINST("ext", 0xffffffffffffffff, 0x98765432, 4, 16); 332 TESTINST("ext", 0xffffffffffffffff, 0xffffffffff865421, 4, 16); 333 TESTINST("ext", 0x98765432, 0x0, 4, 16); 334 TESTINST("ext", 0x98765432, 0xffffffffffffffff, 4, 16); 335 TESTINST("ext", 0x98765432, 0x98765432, 4, 16); 336 TESTINST("ext", 0x98765432, 0xffffffffff865421, 4, 16); 337 TESTINST("ext", 0xffffffffff865421, 0x0, 4, 16); 338 TESTINST("ext", 0xffffffffff865421, 0xffffffffffffffff, 4, 16); 339 TESTINST("ext", 0xffffffffff865421, 0x98765432, 4, 16); 340 TESTINST("ext", 0xffffffffff865421, 0xffffffffff865421, 4, 16); 341 TESTINST("ext", 0x0, 0x0, 4, 28); 342 TESTINST("ext", 0x0, 0xffffffffffffffff, 4, 28); 343 TESTINST("ext", 0x0, 0x98765432, 4, 28); 344 TESTINST("ext", 0x0, 0xffffffffff865421, 4, 28); 345 TESTINST("ext", 0xffffffffffffffff, 0x0, 4, 28); 346 TESTINST("ext", 0xffffffffffffffff, 0xffffffffffffffff, 4, 28); 347 TESTINST("ext", 0xffffffffffffffff, 0x98765432, 4, 28); 348 TESTINST("ext", 0xffffffffffffffff, 0xffffffffff865421, 4, 28); 349 TESTINST("ext", 0x98765432, 0x0, 4, 28); 350 TESTINST("ext", 0x98765432, 0xffffffffffffffff, 4, 28); 351 TESTINST("ext", 0x98765432, 0x98765432, 4, 28); 352 TESTINST("ext", 0x98765432, 0xffffffffff865421, 4, 28); 353 TESTINST("ext", 0xffffffffff865421, 0x0, 4, 28); 354 TESTINST("ext", 0xffffffffff865421, 0xffffffffffffffff, 4, 28); 355 TESTINST("ext", 0xffffffffff865421, 0x98765432, 4, 28); 356 TESTINST("ext", 0xffffffffff865421, 0xffffffffff865421, 4, 28); 357 358 TESTINST("ext", 0x0, 0x0, 16, 1); 359 TESTINST("ext", 0x0, 0xffffffffffffffff, 16, 1); 360 TESTINST("ext", 0x0, 0x98765432, 16, 1); 361 TESTINST("ext", 0x0, 0xffffffffff865421, 16, 1); 362 TESTINST("ext", 0xffffffffffffffff, 0x0, 16, 1); 363 TESTINST("ext", 0xffffffffffffffff, 0xffffffffffffffff, 16, 1); 364 TESTINST("ext", 0xffffffffffffffff, 0x98765432, 16, 1); 365 TESTINST("ext", 0xffffffffffffffff, 0xffffffffff865421, 16, 1); 366 TESTINST("ext", 0x98765432, 0x0, 16, 1); 367 TESTINST("ext", 0x98765432, 0xffffffffffffffff, 16, 1); 368 TESTINST("ext", 0x98765432, 0x98765432, 16, 1); 369 TESTINST("ext", 0x98765432, 0xffffffffff865421, 16, 1); 370 TESTINST("ext", 0xffffffffff865421, 0x0, 16, 1); 371 TESTINST("ext", 0xffffffffff865421, 0xffffffffffffffff, 16, 1); 372 TESTINST("ext", 0xffffffffff865421, 0x98765432, 16, 1); 373 TESTINST("ext", 0xffffffffff865421, 0xffffffffff865421, 16, 1); 374 TESTINST("ext", 0x0, 0x0, 16, 4); 375 TESTINST("ext", 0x0, 0xffffffffffffffff, 16, 4); 376 TESTINST("ext", 0x0, 0x98765432, 16, 4); 377 TESTINST("ext", 0x0, 0xffffffffff865421, 16, 4); 378 TESTINST("ext", 0xffffffffffffffff, 0x0, 16, 4); 379 TESTINST("ext", 0xffffffffffffffff, 0xffffffffffffffff, 16, 4); 380 TESTINST("ext", 0xffffffffffffffff, 0x98765432, 16, 4); 381 TESTINST("ext", 0xffffffffffffffff, 0xffffffffff865421, 16, 4); 382 TESTINST("ext", 0x98765432, 0x0, 16, 4); 383 TESTINST("ext", 0x98765432, 0xffffffffffffffff, 16, 4); 384 TESTINST("ext", 0x98765432, 0x98765432, 16, 4); 385 TESTINST("ext", 0x98765432, 0xffffffffff865421, 16, 4); 386 TESTINST("ext", 0xffffffffff865421, 0x0, 16, 4); 387 TESTINST("ext", 0xffffffffff865421, 0xffffffffffffffff, 16, 4); 388 TESTINST("ext", 0xffffffffff865421, 0x98765432, 16, 4); 389 TESTINST("ext", 0xffffffffff865421, 0xffffffffff865421, 16, 4); 390 TESTINST("ext", 0x0, 0x0, 16, 16); 391 TESTINST("ext", 0x0, 0xffffffffffffffff, 16, 16); 392 TESTINST("ext", 0x0, 0x98765432, 16, 16); 393 TESTINST("ext", 0x0, 0xffffffffff865421, 16, 16); 394 TESTINST("ext", 0xffffffffffffffff, 0x0, 16, 16); 395 TESTINST("ext", 0xffffffffffffffff, 0xffffffffffffffff, 16, 16); 396 TESTINST("ext", 0xffffffffffffffff, 0x98765432, 16, 16); 397 TESTINST("ext", 0xffffffffffffffff, 0xffffffffff865421, 16, 16); 398 TESTINST("ext", 0x98765432, 0x0, 16, 16); 399 TESTINST("ext", 0x98765432, 0xffffffffffffffff, 16, 16); 400 TESTINST("ext", 0x98765432, 0x98765432, 16, 16); 401 TESTINST("ext", 0x98765432, 0xffffffffff865421, 16, 16); 402 TESTINST("ext", 0xffffffffff865421, 0x0, 16, 16); 403 TESTINST("ext", 0xffffffffff865421, 0xffffffffffffffff, 16, 16); 404 TESTINST("ext", 0xffffffffff865421, 0x98765432, 16, 16); 405 TESTINST("ext", 0xffffffffff865421, 0xffffffffff865421, 16, 16); 406 407 TESTINST("ext", 0x0, 0x0, 31, 1); 408 TESTINST("ext", 0x0, 0xffffffffffffffff, 31, 1); 409 TESTINST("ext", 0x0, 0x98765432, 31, 1); 410 TESTINST("ext", 0x0, 0xffffffffff865421, 31, 1); 411 TESTINST("ext", 0xffffffffffffffff, 0x0, 31, 1); 412 TESTINST("ext", 0xffffffffffffffff, 0xffffffffffffffff, 31, 1); 413 TESTINST("ext", 0xffffffffffffffff, 0x98765432, 31, 1); 414 TESTINST("ext", 0xffffffffffffffff, 0xffffffffff865421, 31, 1); 415 TESTINST("ext", 0x98765432, 0x0, 31, 1); 416 TESTINST("ext", 0x98765432, 0xffffffffffffffff, 31, 1); 417 TESTINST("ext", 0x98765432, 0x98765432, 31, 1); 418 TESTINST("ext", 0x98765432, 0xffffffffff865421, 31, 1); 419 TESTINST("ext", 0xffffffffff865421, 0x0, 31, 1); 420 TESTINST("ext", 0xffffffffff865421, 0xffffffffffffffff, 31, 1); 421 TESTINST("ext", 0xffffffffff865421, 0x98765432, 31, 1); 422 TESTINST("ext", 0xffffffffff865421, 0xffffffffff865421, 31, 1); 423 424 printf("--- DEXT ---\n"); 425 /* The values of pos and size must satisfy all of the following relations: 426 0 <= pos < 32 427 0 < size <= 32 428 0 < pos+size <= 63 */ 429 TESTINST("dext", 0x0, 0x0, 0, 1); 430 TESTINST("dext", 0x0, 0xffffffffffffffff, 0, 1); 431 TESTINST("dext", 0x0, 0x98765432, 0, 1); 432 TESTINST("dext", 0x0, 0xffffffffff865421, 0, 1); 433 TESTINST("dext", 0xffffffffffffffff, 0x0, 0, 1); 434 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 0, 1); 435 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 0, 1); 436 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 0, 1); 437 TESTINST("dext", 0x98765432, 0x0, 0, 1); 438 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 0, 1); 439 TESTINST("dext", 0x98765432, 0x98765432, 0, 1); 440 TESTINST("dext", 0x98765432, 0xffffffffff865421, 0, 1); 441 TESTINST("dext", 0xffffffffff865421, 0x0, 0, 1); 442 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 0, 1); 443 TESTINST("dext", 0xffffffffff865421, 0x98765432, 0, 1); 444 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 0, 1); 445 TESTINST("dext", 0x0, 0x0, 0, 4); 446 TESTINST("dext", 0x0, 0xffffffffffffffff, 0, 4); 447 TESTINST("dext", 0x0, 0x98765432, 0, 4); 448 TESTINST("dext", 0x0, 0xffffffffff865421, 0, 4); 449 TESTINST("dext", 0xffffffffffffffff, 0x0, 0, 4); 450 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 0, 4); 451 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 0, 4); 452 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 0, 4); 453 TESTINST("dext", 0x98765432, 0x0, 0, 4); 454 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 0, 4); 455 TESTINST("dext", 0x98765432, 0x98765432, 0, 4); 456 TESTINST("dext", 0x98765432, 0xffffffffff865421, 0, 4); 457 TESTINST("dext", 0xffffffffff865421, 0x0, 0, 4); 458 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 0, 4); 459 TESTINST("dext", 0xffffffffff865421, 0x98765432, 0, 4); 460 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 0, 4); 461 TESTINST("dext", 0x0, 0x0, 0, 16); 462 TESTINST("dext", 0x0, 0xffffffffffffffff, 0, 16); 463 TESTINST("dext", 0x0, 0x98765432, 0, 16); 464 TESTINST("dext", 0x0, 0xffffffffff865421, 0, 16); 465 TESTINST("dext", 0xffffffffffffffff, 0x0, 0, 16); 466 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 0, 16); 467 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 0, 16); 468 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 0, 16); 469 TESTINST("dext", 0x98765432, 0x0, 0, 16); 470 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 0, 16); 471 TESTINST("dext", 0x98765432, 0x98765432, 0, 16); 472 TESTINST("dext", 0x98765432, 0xffffffffff865421, 0, 16); 473 TESTINST("dext", 0xffffffffff865421, 0x0, 0, 16); 474 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 0, 16); 475 TESTINST("dext", 0xffffffffff865421, 0x98765432, 0, 16); 476 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 0, 16); 477 TESTINST("dext", 0x0, 0x0, 0, 32); 478 TESTINST("dext", 0x0, 0xffffffffffffffff, 0, 32); 479 TESTINST("dext", 0x0, 0x98765432, 0, 32); 480 TESTINST("dext", 0x0, 0xffffffffff865421, 0, 32); 481 TESTINST("dext", 0xffffffffffffffff, 0x0, 0, 32); 482 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 0, 32); 483 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 0, 32); 484 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 0, 32); 485 TESTINST("dext", 0x98765432, 0x0, 0, 32); 486 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 0, 32); 487 TESTINST("dext", 0x98765432, 0x98765432, 0, 32); 488 TESTINST("dext", 0x98765432, 0xffffffffff865421, 0, 32); 489 TESTINST("dext", 0xffffffffff865421, 0x0, 0, 32); 490 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 0, 32); 491 TESTINST("dext", 0xffffffffff865421, 0x98765432, 0, 32); 492 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 0, 32); 493 494 TESTINST("dext", 0x0, 0x0, 4, 1); 495 TESTINST("dext", 0x0, 0xffffffffffffffff, 4, 1); 496 TESTINST("dext", 0x0, 0x98765432, 4, 1); 497 TESTINST("dext", 0x0, 0xffffffffff865421, 4, 1); 498 TESTINST("dext", 0xffffffffffffffff, 0x0, 4, 1); 499 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 4, 1); 500 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 4, 1); 501 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 4, 1); 502 TESTINST("dext", 0x98765432, 0x0, 4, 1); 503 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 4, 1); 504 TESTINST("dext", 0x98765432, 0x98765432, 4, 1); 505 TESTINST("dext", 0x98765432, 0xffffffffff865421, 4, 1); 506 TESTINST("dext", 0xffffffffff865421, 0x0, 4, 1); 507 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 4, 1); 508 TESTINST("dext", 0xffffffffff865421, 0x98765432, 4, 1); 509 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 4, 1); 510 TESTINST("dext", 0x0, 0x0, 4, 4); 511 TESTINST("dext", 0x0, 0xffffffffffffffff, 4, 4); 512 TESTINST("dext", 0x0, 0x98765432, 4, 4); 513 TESTINST("dext", 0x0, 0xffffffffff865421, 4, 4); 514 TESTINST("dext", 0xffffffffffffffff, 0x0, 4, 4); 515 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 4, 4); 516 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 4, 4); 517 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 4, 4); 518 TESTINST("dext", 0x98765432, 0x0, 4, 4); 519 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 4, 4); 520 TESTINST("dext", 0x98765432, 0x98765432, 4, 4); 521 TESTINST("dext", 0x98765432, 0xffffffffff865421, 4, 4); 522 TESTINST("dext", 0xffffffffff865421, 0x0, 4, 4); 523 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 4, 4); 524 TESTINST("dext", 0xffffffffff865421, 0x98765432, 4, 4); 525 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 4, 4); 526 TESTINST("dext", 0x0, 0x0, 4, 16); 527 TESTINST("dext", 0x0, 0xffffffffffffffff, 4, 16); 528 TESTINST("dext", 0x0, 0x98765432, 4, 16); 529 TESTINST("dext", 0x0, 0xffffffffff865421, 4, 16); 530 TESTINST("dext", 0xffffffffffffffff, 0x0, 4, 16); 531 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 4, 16); 532 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 4, 16); 533 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 4, 16); 534 TESTINST("dext", 0x98765432, 0x0, 4, 16); 535 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 4, 16); 536 TESTINST("dext", 0x98765432, 0x98765432, 4, 16); 537 TESTINST("dext", 0x98765432, 0xffffffffff865421, 4, 16); 538 TESTINST("dext", 0xffffffffff865421, 0x0, 4, 16); 539 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 4, 16); 540 TESTINST("dext", 0xffffffffff865421, 0x98765432, 4, 16); 541 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 4, 16); 542 TESTINST("dext", 0x0, 0x0, 4, 32); 543 TESTINST("dext", 0x0, 0xffffffffffffffff, 4, 32); 544 TESTINST("dext", 0x0, 0x98765432, 4, 32); 545 TESTINST("dext", 0x0, 0xffffffffff865421, 4, 32); 546 TESTINST("dext", 0xffffffffffffffff, 0x0, 4, 32); 547 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 4, 32); 548 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 4, 32); 549 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 4, 32); 550 TESTINST("dext", 0x98765432, 0x0, 4, 32); 551 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 4, 32); 552 TESTINST("dext", 0x98765432, 0x98765432, 4, 32); 553 TESTINST("dext", 0x98765432, 0xffffffffff865421, 4, 32); 554 TESTINST("dext", 0xffffffffff865421, 0x0, 4, 32); 555 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 4, 32); 556 TESTINST("dext", 0xffffffffff865421, 0x98765432, 4, 32); 557 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 4, 32); 558 559 TESTINST("dext", 0x0, 0x0, 16, 1); 560 TESTINST("dext", 0x0, 0xffffffffffffffff, 16, 1); 561 TESTINST("dext", 0x0, 0x98765432, 16, 1); 562 TESTINST("dext", 0x0, 0xffffffffff865421, 16, 1); 563 TESTINST("dext", 0xffffffffffffffff, 0x0, 16, 1); 564 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 16, 1); 565 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 16, 1); 566 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 16, 1); 567 TESTINST("dext", 0x98765432, 0x0, 16, 1); 568 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 16, 1); 569 TESTINST("dext", 0x98765432, 0x98765432, 16, 1); 570 TESTINST("dext", 0x98765432, 0xffffffffff865421, 16, 1); 571 TESTINST("dext", 0xffffffffff865421, 0x0, 16, 1); 572 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 16, 1); 573 TESTINST("dext", 0xffffffffff865421, 0x98765432, 16, 1); 574 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 16, 1); 575 TESTINST("dext", 0x0, 0x0, 16, 4); 576 TESTINST("dext", 0x0, 0xffffffffffffffff, 16, 4); 577 TESTINST("dext", 0x0, 0x98765432, 16, 4); 578 TESTINST("dext", 0x0, 0xffffffffff865421, 16, 4); 579 TESTINST("dext", 0xffffffffffffffff, 0x0, 16, 4); 580 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 16, 4); 581 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 16, 4); 582 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 16, 4); 583 TESTINST("dext", 0x98765432, 0x0, 16, 4); 584 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 16, 4); 585 TESTINST("dext", 0x98765432, 0x98765432, 16, 4); 586 TESTINST("dext", 0x98765432, 0xffffffffff865421, 16, 4); 587 TESTINST("dext", 0xffffffffff865421, 0x0, 16, 4); 588 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 16, 4); 589 TESTINST("dext", 0xffffffffff865421, 0x98765432, 16, 4); 590 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 16, 4); 591 TESTINST("dext", 0x0, 0x0, 16, 16); 592 TESTINST("dext", 0x0, 0xffffffffffffffff, 16, 16); 593 TESTINST("dext", 0x0, 0x98765432, 16, 16); 594 TESTINST("dext", 0x0, 0xffffffffff865421, 16, 16); 595 TESTINST("dext", 0xffffffffffffffff, 0x0, 16, 16); 596 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 16, 16); 597 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 16, 16); 598 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 16, 16); 599 TESTINST("dext", 0x98765432, 0x0, 16, 16); 600 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 16, 16); 601 TESTINST("dext", 0x98765432, 0x98765432, 16, 16); 602 TESTINST("dext", 0x98765432, 0xffffffffff865421, 16, 16); 603 TESTINST("dext", 0xffffffffff865421, 0x0, 16, 16); 604 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 16, 16); 605 TESTINST("dext", 0xffffffffff865421, 0x98765432, 16, 16); 606 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 16, 16); 607 TESTINST("dext", 0x0, 0x0, 16, 32); 608 TESTINST("dext", 0x0, 0xffffffffffffffff, 16, 32); 609 TESTINST("dext", 0x0, 0x98765432, 16, 32); 610 TESTINST("dext", 0x0, 0xffffffffff865421, 16, 32); 611 TESTINST("dext", 0xffffffffffffffff, 0x0, 16, 32); 612 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 16, 32); 613 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 16, 32); 614 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 16, 32); 615 TESTINST("dext", 0x98765432, 0x0, 16, 32); 616 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 16, 32); 617 TESTINST("dext", 0x98765432, 0x98765432, 16, 32); 618 TESTINST("dext", 0x98765432, 0xffffffffff865421, 16, 32); 619 TESTINST("dext", 0xffffffffff865421, 0x0, 16, 32); 620 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 16, 32); 621 TESTINST("dext", 0xffffffffff865421, 0x98765432, 16, 32); 622 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 16, 32); 623 624 TESTINST("dext", 0x0, 0x0, 31, 1); 625 TESTINST("dext", 0x0, 0xffffffffffffffff, 31, 1); 626 TESTINST("dext", 0x0, 0x98765432, 31, 1); 627 TESTINST("dext", 0x0, 0xffffffffff865421, 31, 1); 628 TESTINST("dext", 0xffffffffffffffff, 0x0, 31, 1); 629 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 31, 1); 630 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 31, 1); 631 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 31, 1); 632 TESTINST("dext", 0x98765432, 0x0, 31, 1); 633 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 31, 1); 634 TESTINST("dext", 0x98765432, 0x98765432, 31, 1); 635 TESTINST("dext", 0x98765432, 0xffffffffff865421, 31, 1); 636 TESTINST("dext", 0xffffffffff865421, 0x0, 31, 1); 637 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 31, 1); 638 TESTINST("dext", 0xffffffffff865421, 0x98765432, 31, 1); 639 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 31, 1); 640 TESTINST("dext", 0x0, 0x0, 31, 4); 641 TESTINST("dext", 0x0, 0xffffffffffffffff, 31, 4); 642 TESTINST("dext", 0x0, 0x98765432, 31, 4); 643 TESTINST("dext", 0x0, 0xffffffffff865421, 31, 4); 644 TESTINST("dext", 0xffffffffffffffff, 0x0, 31, 4); 645 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 31, 4); 646 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 31, 4); 647 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 31, 4); 648 TESTINST("dext", 0x98765432, 0x0, 31, 4); 649 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 31, 4); 650 TESTINST("dext", 0x98765432, 0x98765432, 31, 4); 651 TESTINST("dext", 0x98765432, 0xffffffffff865421, 31, 4); 652 TESTINST("dext", 0xffffffffff865421, 0x0, 31, 4); 653 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 31, 4); 654 TESTINST("dext", 0xffffffffff865421, 0x98765432, 31, 4); 655 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 31, 4); 656 TESTINST("dext", 0x0, 0x0, 31, 16); 657 TESTINST("dext", 0x0, 0xffffffffffffffff, 31, 16); 658 TESTINST("dext", 0x0, 0x98765432, 31, 16); 659 TESTINST("dext", 0x0, 0xffffffffff865421, 31, 16); 660 TESTINST("dext", 0xffffffffffffffff, 0x0, 31, 16); 661 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 31, 16); 662 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 31, 16); 663 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 31, 16); 664 TESTINST("dext", 0x98765432, 0x0, 31, 16); 665 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 31, 16); 666 TESTINST("dext", 0x98765432, 0x98765432, 31, 16); 667 TESTINST("dext", 0x98765432, 0xffffffffff865421, 31, 16); 668 TESTINST("dext", 0xffffffffff865421, 0x0, 31, 16); 669 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 31, 16); 670 TESTINST("dext", 0xffffffffff865421, 0x98765432, 31, 16); 671 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 31, 16); 672 TESTINST("dext", 0x0, 0x0, 31, 32); 673 TESTINST("dext", 0x0, 0xffffffffffffffff, 31, 32); 674 TESTINST("dext", 0x0, 0x98765432, 31, 32); 675 TESTINST("dext", 0x0, 0xffffffffff865421, 31, 32); 676 TESTINST("dext", 0xffffffffffffffff, 0x0, 31, 32); 677 TESTINST("dext", 0xffffffffffffffff, 0xffffffffffffffff, 31, 32); 678 TESTINST("dext", 0xffffffffffffffff, 0x98765432, 31, 32); 679 TESTINST("dext", 0xffffffffffffffff, 0xffffffffff865421, 31, 32); 680 TESTINST("dext", 0x98765432, 0x0, 31, 32); 681 TESTINST("dext", 0x98765432, 0xffffffffffffffff, 31, 32); 682 TESTINST("dext", 0x98765432, 0x98765432, 31, 32); 683 TESTINST("dext", 0x98765432, 0xffffffffff865421, 31, 32); 684 TESTINST("dext", 0xffffffffff865421, 0x0, 31, 32); 685 TESTINST("dext", 0xffffffffff865421, 0xffffffffffffffff, 31, 32); 686 TESTINST("dext", 0xffffffffff865421, 0x98765432, 31, 32); 687 TESTINST("dext", 0xffffffffff865421, 0xffffffffff865421, 31, 32); 688 689 TESTINST("dext", 0x2002ffffffffffff, 0xfffffffff0000fff, 4, 4); 690 TESTINST("dext", 0xffff0000ffffffff, 0xff0000ffffffffff, 8, 4); 691 TESTINST("dext", 0x2000ffffffffffff, 0xffff0000ffffffff, 16, 4); 692 TESTINST("dext", 0x2000ffffffddddff, 0xffffffffffff0008, 24, 2); 693 TESTINST("dext", 0x2000ffffffffeeee, 0xfffffff31415927f, 24, 4); 694 TESTINST("dext", 0x31415927ffffffff, 0x2000ffffffffffff, 9, 2); 695 TESTINST("dext", 0x2000ffffffffaaaa, 0x2000ffffffff2222, 16, 4); 696 TESTINST("dext", 0x2000ffffffbbbbff, 0x7fffffffddddffff, 16, 4); 697 TESTINST("dext", 0xeeeeff33ff22ffff, 0x2000ffffffffffff, 7, 4); 698 TESTINST("dext", 0x2000ffffffffffff, 0x2000ffffffffbbbb, 5, 4); 699 TESTINST("dext", 0x2000ffffffffbbbb, 0xfffffffff0000fff, 3, 4); 700 TESTINST("dext", 0x2000ffffffffffff, 0xffff0000ffffffff, 16, 16); 701 TESTINST("dext", 0x7fffffffddddffff, 0xffffffffffff0008, 16, 32); 702 TESTINST("dext", 0x2000ffffffff2222, 0xfffffff31415927f, 2, 60); 703 TESTINST("dext", 0x2000ffffffffffff, 0x2000ffffffffffff, 16, 6); 704 TESTINST("dext", 0xfffffff31415927f, 0x2000ffffffff2222, 31, 32); 705 TESTINST("dext", 0xffffffffffff0008, 0x7fffffffddddffff, 8, 2); 706 TESTINST("dext", 0xffff0000ffffffff, 0x2000ffffffffffff, 16, 4); 707 TESTINST("dext", 0xff0000ffffffffff, 0, 8, 4); 708 TESTINST("dext", 0xfffffffff0000fff, 0, 16, 4); 709 710 printf("--- DEXTM ---\n"); 711 /* The values of pos and size must satisfy all of the following relations: 712 0 <= pos < 32 713 32 < size <= 64 714 32 < pos+size <= 64 */ 715 TESTINST("dextm", 0x0, 0x0, 0, 33); 716 TESTINST("dextm", 0x0, 0xffffffffffffffff, 0, 33); 717 TESTINST("dextm", 0x0, 0x98765432, 0, 33); 718 TESTINST("dextm", 0x0, 0xffffffffff865421, 0, 33); 719 TESTINST("dextm", 0xffffffffffffffff, 0x0, 0, 33); 720 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffffffffff, 0, 33); 721 TESTINST("dextm", 0xffffffffffffffff, 0x98765432, 0, 33); 722 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffff865421, 0, 33); 723 TESTINST("dextm", 0x98765432, 0x0, 0, 33); 724 TESTINST("dextm", 0x98765432, 0xffffffffffffffff, 0, 33); 725 TESTINST("dextm", 0x98765432, 0x98765432, 0, 33); 726 TESTINST("dextm", 0x98765432, 0xffffffffff865421, 0, 33); 727 TESTINST("dextm", 0xffffffffff865421, 0x0, 0, 33); 728 TESTINST("dextm", 0xffffffffff865421, 0xffffffffffffffff, 0, 33); 729 TESTINST("dextm", 0xffffffffff865421, 0x98765432, 0, 33); 730 TESTINST("dextm", 0xffffffffff865421, 0xffffffffff865421, 0, 33); 731 TESTINST("dextm", 0x0, 0x0, 0, 37); 732 TESTINST("dextm", 0x0, 0xffffffffffffffff, 0, 37); 733 TESTINST("dextm", 0x0, 0x98765432, 0, 37); 734 TESTINST("dextm", 0x0, 0xffffffffff865421, 0, 37); 735 TESTINST("dextm", 0xffffffffffffffff, 0x0, 0, 37); 736 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffffffffff, 0, 37); 737 TESTINST("dextm", 0xffffffffffffffff, 0x98765432, 0, 37); 738 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffff865421, 0, 37); 739 TESTINST("dextm", 0x98765432, 0x0, 0, 37); 740 TESTINST("dextm", 0x98765432, 0xffffffffffffffff, 0, 37); 741 TESTINST("dextm", 0x98765432, 0x98765432, 0, 37); 742 TESTINST("dextm", 0x98765432, 0xffffffffff865421, 0, 37); 743 TESTINST("dextm", 0xffffffffff865421, 0x0, 0, 37); 744 TESTINST("dextm", 0xffffffffff865421, 0xffffffffffffffff, 0, 37); 745 TESTINST("dextm", 0xffffffffff865421, 0x98765432, 0, 37); 746 TESTINST("dextm", 0xffffffffff865421, 0xffffffffff865421, 0, 37); 747 TESTINST("dextm", 0x0, 0x0, 0, 48); 748 TESTINST("dextm", 0x0, 0xffffffffffffffff, 0, 48); 749 TESTINST("dextm", 0x0, 0x98765432, 0, 48); 750 TESTINST("dextm", 0x0, 0xffffffffff865421, 0, 48); 751 TESTINST("dextm", 0xffffffffffffffff, 0x0, 0, 48); 752 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffffffffff, 0, 48); 753 TESTINST("dextm", 0xffffffffffffffff, 0x98765432, 0, 48); 754 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffff865421, 0, 48); 755 TESTINST("dextm", 0x98765432, 0x0, 0, 48); 756 TESTINST("dextm", 0x98765432, 0xffffffffffffffff, 0, 48); 757 TESTINST("dextm", 0x98765432, 0x98765432, 0, 48); 758 TESTINST("dextm", 0x98765432, 0xffffffffff865421, 0, 48); 759 TESTINST("dextm", 0xffffffffff865421, 0x0, 0, 48); 760 TESTINST("dextm", 0xffffffffff865421, 0xffffffffffffffff, 0, 48); 761 TESTINST("dextm", 0xffffffffff865421, 0x98765432, 0, 48); 762 TESTINST("dextm", 0xffffffffff865421, 0xffffffffff865421, 0, 48); 763 TESTINST("dextm", 0x0, 0x0, 0, 64); 764 TESTINST("dextm", 0x0, 0xffffffffffffffff, 0, 64); 765 TESTINST("dextm", 0x0, 0x98765432, 0, 64); 766 TESTINST("dextm", 0x0, 0xffffffffff865421, 0, 64); 767 TESTINST("dextm", 0xffffffffffffffff, 0x0, 0, 64); 768 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffffffffff, 0, 64); 769 TESTINST("dextm", 0xffffffffffffffff, 0x98765432, 0, 64); 770 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffff865421, 0, 64); 771 TESTINST("dextm", 0x98765432, 0x0, 0, 64); 772 TESTINST("dextm", 0x98765432, 0xffffffffffffffff, 0, 64); 773 TESTINST("dextm", 0x98765432, 0x98765432, 0, 64); 774 TESTINST("dextm", 0x98765432, 0xffffffffff865421, 0, 64); 775 TESTINST("dextm", 0xffffffffff865421, 0x0, 0, 64); 776 TESTINST("dextm", 0xffffffffff865421, 0xffffffffffffffff, 0, 64); 777 TESTINST("dextm", 0xffffffffff865421, 0x98765432, 0, 64); 778 TESTINST("dextm", 0xffffffffff865421, 0xffffffffff865421, 0, 64); 779 780 TESTINST("dextm", 0x0, 0x0, 4, 33); 781 TESTINST("dextm", 0x0, 0xffffffffffffffff, 4, 33); 782 TESTINST("dextm", 0x0, 0x98765432, 4, 33); 783 TESTINST("dextm", 0x0, 0xffffffffff865421, 4, 33); 784 TESTINST("dextm", 0xffffffffffffffff, 0x0, 4, 33); 785 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffffffffff, 4, 33); 786 TESTINST("dextm", 0xffffffffffffffff, 0x98765432, 4, 33); 787 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffff865421, 4, 33); 788 TESTINST("dextm", 0x98765432, 0x0, 4, 33); 789 TESTINST("dextm", 0x98765432, 0xffffffffffffffff, 4, 33); 790 TESTINST("dextm", 0x98765432, 0x98765432, 4, 33); 791 TESTINST("dextm", 0x98765432, 0xffffffffff865421, 4, 33); 792 TESTINST("dextm", 0xffffffffff865421, 0x0, 4, 33); 793 TESTINST("dextm", 0xffffffffff865421, 0xffffffffffffffff, 4, 33); 794 TESTINST("dextm", 0xffffffffff865421, 0x98765432, 4, 33); 795 TESTINST("dextm", 0xffffffffff865421, 0xffffffffff865421, 4, 33); 796 TESTINST("dextm", 0x0, 0x0, 4, 37); 797 TESTINST("dextm", 0x0, 0xffffffffffffffff, 4, 37); 798 TESTINST("dextm", 0x0, 0x98765432, 4, 37); 799 TESTINST("dextm", 0x0, 0xffffffffff865421, 4, 37); 800 TESTINST("dextm", 0xffffffffffffffff, 0x0, 4, 37); 801 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffffffffff, 4, 37); 802 TESTINST("dextm", 0xffffffffffffffff, 0x98765432, 4, 37); 803 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffff865421, 4, 37); 804 TESTINST("dextm", 0x98765432, 0x0, 4, 37); 805 TESTINST("dextm", 0x98765432, 0xffffffffffffffff, 4, 37); 806 TESTINST("dextm", 0x98765432, 0x98765432, 4, 37); 807 TESTINST("dextm", 0x98765432, 0xffffffffff865421, 4, 37); 808 TESTINST("dextm", 0xffffffffff865421, 0x0, 4, 37); 809 TESTINST("dextm", 0xffffffffff865421, 0xffffffffffffffff, 4, 37); 810 TESTINST("dextm", 0xffffffffff865421, 0x98765432, 4, 37); 811 TESTINST("dextm", 0xffffffffff865421, 0xffffffffff865421, 4, 37); 812 TESTINST("dextm", 0x0, 0x0, 4, 48); 813 TESTINST("dextm", 0x0, 0xffffffffffffffff, 4, 48); 814 TESTINST("dextm", 0x0, 0x98765432, 4, 48); 815 TESTINST("dextm", 0x0, 0xffffffffff865421, 4, 48); 816 TESTINST("dextm", 0xffffffffffffffff, 0x0, 4, 48); 817 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffffffffff, 4, 48); 818 TESTINST("dextm", 0xffffffffffffffff, 0x98765432, 4, 48); 819 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffff865421, 4, 48); 820 TESTINST("dextm", 0x98765432, 0x0, 4, 48); 821 TESTINST("dextm", 0x98765432, 0xffffffffffffffff, 4, 48); 822 TESTINST("dextm", 0x98765432, 0x98765432, 4, 48); 823 TESTINST("dextm", 0x98765432, 0xffffffffff865421, 4, 48); 824 TESTINST("dextm", 0xffffffffff865421, 0x0, 4, 48); 825 TESTINST("dextm", 0xffffffffff865421, 0xffffffffffffffff, 4, 48); 826 TESTINST("dextm", 0xffffffffff865421, 0x98765432, 4, 48); 827 TESTINST("dextm", 0xffffffffff865421, 0xffffffffff865421, 4, 48); 828 TESTINST("dextm", 0x0, 0x0, 4, 60); 829 TESTINST("dextm", 0x0, 0xffffffffffffffff, 4, 60); 830 TESTINST("dextm", 0x0, 0x98765432, 4, 60); 831 TESTINST("dextm", 0x0, 0xffffffffff865421, 4, 60); 832 TESTINST("dextm", 0xffffffffffffffff, 0x0, 4, 60); 833 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffffffffff, 4, 60); 834 TESTINST("dextm", 0xffffffffffffffff, 0x98765432, 4, 60); 835 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffff865421, 4, 60); 836 TESTINST("dextm", 0x98765432, 0x0, 4, 60); 837 TESTINST("dextm", 0x98765432, 0xffffffffffffffff, 4, 60); 838 TESTINST("dextm", 0x98765432, 0x98765432, 4, 60); 839 TESTINST("dextm", 0x98765432, 0xffffffffff865421, 4, 60); 840 TESTINST("dextm", 0xffffffffff865421, 0x0, 4, 60); 841 TESTINST("dextm", 0xffffffffff865421, 0xffffffffffffffff, 4, 60); 842 TESTINST("dextm", 0xffffffffff865421, 0x98765432, 4, 60); 843 TESTINST("dextm", 0xffffffffff865421, 0xffffffffff865421, 4, 60); 844 845 TESTINST("dextm", 0x0, 0x0, 16, 33); 846 TESTINST("dextm", 0x0, 0xffffffffffffffff, 16, 33); 847 TESTINST("dextm", 0x0, 0x98765432, 16, 33); 848 TESTINST("dextm", 0x0, 0xffffffffff865421, 16, 33); 849 TESTINST("dextm", 0xffffffffffffffff, 0x0, 16, 33); 850 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffffffffff, 16, 33); 851 TESTINST("dextm", 0xffffffffffffffff, 0x98765432, 16, 33); 852 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffff865421, 16, 33); 853 TESTINST("dextm", 0x98765432, 0x0, 16, 33); 854 TESTINST("dextm", 0x98765432, 0xffffffffffffffff, 16, 33); 855 TESTINST("dextm", 0x98765432, 0x98765432, 16, 33); 856 TESTINST("dextm", 0x98765432, 0xffffffffff865421, 16, 33); 857 TESTINST("dextm", 0xffffffffff865421, 0x0, 16, 33); 858 TESTINST("dextm", 0xffffffffff865421, 0xffffffffffffffff, 16, 33); 859 TESTINST("dextm", 0xffffffffff865421, 0x98765432, 16, 33); 860 TESTINST("dextm", 0xffffffffff865421, 0xffffffffff865421, 16, 33); 861 TESTINST("dextm", 0x0, 0x0, 16, 37); 862 TESTINST("dextm", 0x0, 0xffffffffffffffff, 16, 37); 863 TESTINST("dextm", 0x0, 0x98765432, 16, 37); 864 TESTINST("dextm", 0x0, 0xffffffffff865421, 16, 37); 865 TESTINST("dextm", 0xffffffffffffffff, 0x0, 16, 37); 866 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffffffffff, 16, 37); 867 TESTINST("dextm", 0xffffffffffffffff, 0x98765432, 16, 37); 868 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffff865421, 16, 37); 869 TESTINST("dextm", 0x98765432, 0x0, 16, 37); 870 TESTINST("dextm", 0x98765432, 0xffffffffffffffff, 16, 37); 871 TESTINST("dextm", 0x98765432, 0x98765432, 16, 37); 872 TESTINST("dextm", 0x98765432, 0xffffffffff865421, 16, 37); 873 TESTINST("dextm", 0xffffffffff865421, 0x0, 16, 37); 874 TESTINST("dextm", 0xffffffffff865421, 0xffffffffffffffff, 16, 37); 875 TESTINST("dextm", 0xffffffffff865421, 0x98765432, 16, 37); 876 TESTINST("dextm", 0xffffffffff865421, 0xffffffffff865421, 16, 37); 877 TESTINST("dextm", 0x0, 0x0, 16, 48); 878 TESTINST("dextm", 0x0, 0xffffffffffffffff, 16, 48); 879 TESTINST("dextm", 0x0, 0x98765432, 16, 48); 880 TESTINST("dextm", 0x0, 0xffffffffff865421, 16, 48); 881 TESTINST("dextm", 0xffffffffffffffff, 0x0, 16, 48); 882 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffffffffff, 16, 48); 883 TESTINST("dextm", 0xffffffffffffffff, 0x98765432, 16, 48); 884 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffff865421, 16, 48); 885 TESTINST("dextm", 0x98765432, 0x0, 16, 48); 886 TESTINST("dextm", 0x98765432, 0xffffffffffffffff, 16, 48); 887 TESTINST("dextm", 0x98765432, 0x98765432, 16, 48); 888 TESTINST("dextm", 0x98765432, 0xffffffffff865421, 16, 48); 889 TESTINST("dextm", 0xffffffffff865421, 0x0, 16, 48); 890 TESTINST("dextm", 0xffffffffff865421, 0xffffffffffffffff, 16, 48); 891 TESTINST("dextm", 0xffffffffff865421, 0x98765432, 16, 48); 892 TESTINST("dextm", 0xffffffffff865421, 0xffffffffff865421, 16, 48); 893 894 TESTINST("dextm", 0x0, 0x0, 31, 33); 895 TESTINST("dextm", 0x0, 0xffffffffffffffff, 31, 33); 896 TESTINST("dextm", 0x0, 0x98765432, 31, 33); 897 TESTINST("dextm", 0x0, 0xffffffffff865421, 31, 33); 898 TESTINST("dextm", 0xffffffffffffffff, 0x0, 31, 33); 899 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffffffffff, 31, 33); 900 TESTINST("dextm", 0xffffffffffffffff, 0x98765432, 31, 33); 901 TESTINST("dextm", 0xffffffffffffffff, 0xffffffffff865421, 31, 33); 902 TESTINST("dextm", 0x98765432, 0x0, 31, 33); 903 TESTINST("dextm", 0x98765432, 0xffffffffffffffff, 31, 33); 904 TESTINST("dextm", 0x98765432, 0x98765432, 31, 33); 905 TESTINST("dextm", 0x98765432, 0xffffffffff865421, 31, 33); 906 TESTINST("dextm", 0xffffffffff865421, 0x0, 31, 33); 907 TESTINST("dextm", 0xffffffffff865421, 0xffffffffffffffff, 31, 33); 908 TESTINST("dextm", 0xffffffffff865421, 0x98765432, 31, 33); 909 TESTINST("dextm", 0xffffffffff865421, 0xffffffffff865421, 31, 33); 910 911 TESTINST("dextm", 0x2002ffffffffffff, 0xfffffffff0000fff, 4, 35); 912 TESTINST("dextm", 0xffff0000ffffffff, 0xff0000ffffffffff, 8, 33); 913 TESTINST("dextm", 0x2000ffffffffffff, 0xffff0000ffffffff, 16, 34); 914 TESTINST("dextm", 0x2000ffffffddddff, 0xffffffffffff0008, 4, 46); 915 TESTINST("dextm", 0x2000ffffffffeeee, 0xfffffff31415927f, 3, 56); 916 TESTINST("dextm", 0x31415927ffffffff, 0x2000ffffffffffff, 0, 64); 917 TESTINST("dextm", 0x2000ffffffffaaaa, 0x2000ffffffff2222, 16, 40); 918 TESTINST("dextm", 0x2000ffffffbbbbff, 0x7fffffffddddffff, 16, 42); 919 TESTINST("dextm", 0xeeeeff33ff22ffff, 0x2000ffffffffffff, 7, 43); 920 TESTINST("dextm", 0x2000ffffffffffff, 0x2000ffffffffbbbb, 5, 48); 921 TESTINST("dextm", 0x2000ffffffffbbbb, 0x2000ffffffffffff, 3, 52); 922 TESTINST("dextm", 0x2000ffffffffffff, 0xeeeeff33ff22ffff, 1, 54); 923 TESTINST("dextm", 0x7fffffffddddffff, 0x2000ffffffbbbbff, 2, 54); 924 TESTINST("dextm", 0x2000ffffffff2222, 0x2000ffffffffaaaa, 2, 48); 925 TESTINST("dextm", 0x2000ffffffffffff, 0x31415927ffffffff, 5, 53); 926 TESTINST("dextm", 0xfffffff31415927f, 0x2000ffffffffeeee, 2, 60); 927 TESTINST("dextm", 0xffffffffffff0008, 0x2000ffffffddddff, 3, 61); 928 TESTINST("dextm", 0xffff0000ffffffff, 0x2000ffffffffffff, 1, 62); 929 TESTINST("dextm", 0xff0000ffffffffff, 0, 8, 38); 930 TESTINST("dextm", 0xfffffffff0000fff, 0, 16, 39); 931 932 printf("--- DEXTU ---\n"); 933 /* The values of pos and size must satisfy all of the following relations: 934 32 <= pos < 64 935 0 < size <= 32 936 32 < pos+size <= 64 */ 937 TESTINST("dextu", 0x0, 0x0, 32, 1); 938 TESTINST("dextu", 0x0, 0xffffffffffffffff, 32, 1); 939 TESTINST("dextu", 0x0, 0x98765432, 32, 1); 940 TESTINST("dextu", 0x0, 0xffffffffff865421, 32, 1); 941 TESTINST("dextu", 0xffffffffffffffff, 0x0, 32, 1); 942 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffffffffff, 32, 1); 943 TESTINST("dextu", 0xffffffffffffffff, 0x98765432, 32, 1); 944 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffff865421, 32, 1); 945 TESTINST("dextu", 0x98765432, 0x0, 32, 1); 946 TESTINST("dextu", 0x98765432, 0xffffffffffffffff, 32, 1); 947 TESTINST("dextu", 0x98765432, 0x98765432, 32, 1); 948 TESTINST("dextu", 0x98765432, 0xffffffffff865421, 32, 1); 949 TESTINST("dextu", 0xffffffffff865421, 0x0, 32, 1); 950 TESTINST("dextu", 0xffffffffff865421, 0xffffffffffffffff, 32, 1); 951 TESTINST("dextu", 0xffffffffff865421, 0x98765432, 32, 1); 952 TESTINST("dextu", 0xffffffffff865421, 0xffffffffff865421, 32, 1); 953 TESTINST("dextu", 0x0, 0x0, 32, 4); 954 TESTINST("dextu", 0x0, 0xffffffffffffffff, 32, 4); 955 TESTINST("dextu", 0x0, 0x98765432, 32, 4); 956 TESTINST("dextu", 0x0, 0xffffffffff865421, 32, 4); 957 TESTINST("dextu", 0xffffffffffffffff, 0x0, 32, 4); 958 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffffffffff, 32, 4); 959 TESTINST("dextu", 0xffffffffffffffff, 0x98765432, 32, 4); 960 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffff865421, 32, 4); 961 TESTINST("dextu", 0x98765432, 0x0, 32, 4); 962 TESTINST("dextu", 0x98765432, 0xffffffffffffffff, 32, 4); 963 TESTINST("dextu", 0x98765432, 0x98765432, 32, 4); 964 TESTINST("dextu", 0x98765432, 0xffffffffff865421, 32, 4); 965 TESTINST("dextu", 0xffffffffff865421, 0x0, 32, 4); 966 TESTINST("dextu", 0xffffffffff865421, 0xffffffffffffffff, 32, 4); 967 TESTINST("dextu", 0xffffffffff865421, 0x98765432, 32, 4); 968 TESTINST("dextu", 0xffffffffff865421, 0xffffffffff865421, 32, 4); 969 TESTINST("dextu", 0x0, 0x0, 32, 16); 970 TESTINST("dextu", 0x0, 0xffffffffffffffff, 32, 16); 971 TESTINST("dextu", 0x0, 0x98765432, 32, 16); 972 TESTINST("dextu", 0x0, 0xffffffffff865421, 32, 16); 973 TESTINST("dextu", 0xffffffffffffffff, 0x0, 32, 16); 974 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffffffffff, 32, 16); 975 TESTINST("dextu", 0xffffffffffffffff, 0x98765432, 32, 16); 976 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffff865421, 32, 16); 977 TESTINST("dextu", 0x98765432, 0x0, 32, 16); 978 TESTINST("dextu", 0x98765432, 0xffffffffffffffff, 32, 16); 979 TESTINST("dextu", 0x98765432, 0x98765432, 32, 16); 980 TESTINST("dextu", 0x98765432, 0xffffffffff865421, 32, 16); 981 TESTINST("dextu", 0xffffffffff865421, 0x0, 32, 16); 982 TESTINST("dextu", 0xffffffffff865421, 0xffffffffffffffff, 32, 16); 983 TESTINST("dextu", 0xffffffffff865421, 0x98765432, 32, 16); 984 TESTINST("dextu", 0xffffffffff865421, 0xffffffffff865421, 32, 16); 985 TESTINST("dextu", 0x0, 0x0, 32, 32); 986 TESTINST("dextu", 0x0, 0xffffffffffffffff, 32, 32); 987 TESTINST("dextu", 0x0, 0x98765432, 32, 32); 988 TESTINST("dextu", 0x0, 0xffffffffff865421, 32, 32); 989 TESTINST("dextu", 0xffffffffffffffff, 0x0, 32, 32); 990 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffffffffff, 32, 32); 991 TESTINST("dextu", 0xffffffffffffffff, 0x98765432, 32, 32); 992 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffff865421, 32, 32); 993 TESTINST("dextu", 0x98765432, 0x0, 32, 32); 994 TESTINST("dextu", 0x98765432, 0xffffffffffffffff, 32, 32); 995 TESTINST("dextu", 0x98765432, 0x98765432, 32, 32); 996 TESTINST("dextu", 0x98765432, 0xffffffffff865421, 32, 32); 997 TESTINST("dextu", 0xffffffffff865421, 0x0, 32, 32); 998 TESTINST("dextu", 0xffffffffff865421, 0xffffffffffffffff, 32, 32); 999 TESTINST("dextu", 0xffffffffff865421, 0x98765432, 32, 32); 1000 TESTINST("dextu", 0xffffffffff865421, 0xffffffffff865421, 32, 32); 1001 1002 TESTINST("dextu", 0x0, 0x0, 36, 1); 1003 TESTINST("dextu", 0x0, 0xffffffffffffffff, 36, 1); 1004 TESTINST("dextu", 0x0, 0x98765432, 36, 1); 1005 TESTINST("dextu", 0x0, 0xffffffffff865421, 36, 1); 1006 TESTINST("dextu", 0xffffffffffffffff, 0x0, 36, 1); 1007 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffffffffff, 36, 1); 1008 TESTINST("dextu", 0xffffffffffffffff, 0x98765432, 36, 1); 1009 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffff865421, 36, 1); 1010 TESTINST("dextu", 0x98765432, 0x0, 36, 1); 1011 TESTINST("dextu", 0x98765432, 0xffffffffffffffff, 36, 1); 1012 TESTINST("dextu", 0x98765432, 0x98765432, 36, 1); 1013 TESTINST("dextu", 0x98765432, 0xffffffffff865421, 36, 1); 1014 TESTINST("dextu", 0xffffffffff865421, 0x0, 36, 1); 1015 TESTINST("dextu", 0xffffffffff865421, 0xffffffffffffffff, 36, 1); 1016 TESTINST("dextu", 0xffffffffff865421, 0x98765432, 36, 1); 1017 TESTINST("dextu", 0xffffffffff865421, 0xffffffffff865421, 36, 1); 1018 TESTINST("dextu", 0x0, 0x0, 36, 4); 1019 TESTINST("dextu", 0x0, 0xffffffffffffffff, 36, 4); 1020 TESTINST("dextu", 0x0, 0x98765432, 36, 4); 1021 TESTINST("dextu", 0x0, 0xffffffffff865421, 36, 4); 1022 TESTINST("dextu", 0xffffffffffffffff, 0x0, 36, 4); 1023 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffffffffff, 36, 4); 1024 TESTINST("dextu", 0xffffffffffffffff, 0x98765432, 36, 4); 1025 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffff865421, 36, 4); 1026 TESTINST("dextu", 0x98765432, 0x0, 36, 4); 1027 TESTINST("dextu", 0x98765432, 0xffffffffffffffff, 36, 4); 1028 TESTINST("dextu", 0x98765432, 0x98765432, 36, 4); 1029 TESTINST("dextu", 0x98765432, 0xffffffffff865421, 36, 4); 1030 TESTINST("dextu", 0xffffffffff865421, 0x0, 36, 4); 1031 TESTINST("dextu", 0xffffffffff865421, 0xffffffffffffffff, 36, 4); 1032 TESTINST("dextu", 0xffffffffff865421, 0x98765432, 36, 4); 1033 TESTINST("dextu", 0xffffffffff865421, 0xffffffffff865421, 36, 4); 1034 TESTINST("dextu", 0x0, 0x0, 36, 16); 1035 TESTINST("dextu", 0x0, 0xffffffffffffffff, 36, 16); 1036 TESTINST("dextu", 0x0, 0x98765432, 36, 16); 1037 TESTINST("dextu", 0x0, 0xffffffffff865421, 36, 16); 1038 TESTINST("dextu", 0xffffffffffffffff, 0x0, 36, 16); 1039 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffffffffff, 36, 16); 1040 TESTINST("dextu", 0xffffffffffffffff, 0x98765432, 36, 16); 1041 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffff865421, 36, 16); 1042 TESTINST("dextu", 0x98765432, 0x0, 36, 16); 1043 TESTINST("dextu", 0x98765432, 0xffffffffffffffff, 36, 16); 1044 TESTINST("dextu", 0x98765432, 0x98765432, 36, 16); 1045 TESTINST("dextu", 0x98765432, 0xffffffffff865421, 36, 16); 1046 TESTINST("dextu", 0xffffffffff865421, 0x0, 36, 16); 1047 TESTINST("dextu", 0xffffffffff865421, 0xffffffffffffffff, 36, 16); 1048 TESTINST("dextu", 0xffffffffff865421, 0x98765432, 36, 16); 1049 TESTINST("dextu", 0xffffffffff865421, 0xffffffffff865421, 36, 16); 1050 TESTINST("dextu", 0x0, 0x0, 36, 28); 1051 TESTINST("dextu", 0x0, 0xffffffffffffffff, 36, 28); 1052 TESTINST("dextu", 0x0, 0x98765432, 36, 28); 1053 TESTINST("dextu", 0x0, 0xffffffffff865421, 36, 28); 1054 TESTINST("dextu", 0xffffffffffffffff, 0x0, 36, 28); 1055 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffffffffff, 36, 28); 1056 TESTINST("dextu", 0xffffffffffffffff, 0x98765432, 36, 28); 1057 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffff865421, 36, 28); 1058 TESTINST("dextu", 0x98765432, 0x0, 36, 28); 1059 TESTINST("dextu", 0x98765432, 0xffffffffffffffff, 36, 28); 1060 TESTINST("dextu", 0x98765432, 0x98765432, 36, 28); 1061 TESTINST("dextu", 0x98765432, 0xffffffffff865421, 36, 28); 1062 TESTINST("dextu", 0xffffffffff865421, 0x0, 36, 28); 1063 TESTINST("dextu", 0xffffffffff865421, 0xffffffffffffffff, 36, 28); 1064 TESTINST("dextu", 0xffffffffff865421, 0x98765432, 36, 28); 1065 TESTINST("dextu", 0xffffffffff865421, 0xffffffffff865421, 36, 28); 1066 1067 TESTINST("dextu", 0x0, 0x0, 48, 1); 1068 TESTINST("dextu", 0x0, 0xffffffffffffffff, 48, 1); 1069 TESTINST("dextu", 0x0, 0x98765432, 48, 1); 1070 TESTINST("dextu", 0x0, 0xffffffffff865421, 48, 1); 1071 TESTINST("dextu", 0xffffffffffffffff, 0x0, 48, 1); 1072 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffffffffff, 48, 1); 1073 TESTINST("dextu", 0xffffffffffffffff, 0x98765432, 48, 1); 1074 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffff865421, 48, 1); 1075 TESTINST("dextu", 0x98765432, 0x0, 48, 1); 1076 TESTINST("dextu", 0x98765432, 0xffffffffffffffff, 48, 1); 1077 TESTINST("dextu", 0x98765432, 0x98765432, 48, 1); 1078 TESTINST("dextu", 0x98765432, 0xffffffffff865421, 48, 1); 1079 TESTINST("dextu", 0xffffffffff865421, 0x0, 48, 1); 1080 TESTINST("dextu", 0xffffffffff865421, 0xffffffffffffffff, 48, 1); 1081 TESTINST("dextu", 0xffffffffff865421, 0x98765432, 48, 1); 1082 TESTINST("dextu", 0xffffffffff865421, 0xffffffffff865421, 48, 1); 1083 TESTINST("dextu", 0x0, 0x0, 48, 4); 1084 TESTINST("dextu", 0x0, 0xffffffffffffffff, 48, 4); 1085 TESTINST("dextu", 0x0, 0x98765432, 48, 4); 1086 TESTINST("dextu", 0x0, 0xffffffffff865421, 48, 4); 1087 TESTINST("dextu", 0xffffffffffffffff, 0x0, 48, 4); 1088 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffffffffff, 48, 4); 1089 TESTINST("dextu", 0xffffffffffffffff, 0x98765432, 48, 4); 1090 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffff865421, 48, 4); 1091 TESTINST("dextu", 0x98765432, 0x0, 48, 4); 1092 TESTINST("dextu", 0x98765432, 0xffffffffffffffff, 48, 4); 1093 TESTINST("dextu", 0x98765432, 0x98765432, 48, 4); 1094 TESTINST("dextu", 0x98765432, 0xffffffffff865421, 48, 4); 1095 TESTINST("dextu", 0xffffffffff865421, 0x0, 48, 4); 1096 TESTINST("dextu", 0xffffffffff865421, 0xffffffffffffffff, 48, 4); 1097 TESTINST("dextu", 0xffffffffff865421, 0x98765432, 48, 4); 1098 TESTINST("dextu", 0xffffffffff865421, 0xffffffffff865421, 48, 4); 1099 TESTINST("dextu", 0x0, 0x0, 48, 16); 1100 TESTINST("dextu", 0x0, 0xffffffffffffffff, 48, 16); 1101 TESTINST("dextu", 0x0, 0x98765432, 48, 16); 1102 TESTINST("dextu", 0x0, 0xffffffffff865421, 48, 16); 1103 TESTINST("dextu", 0xffffffffffffffff, 0x0, 48, 16); 1104 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffffffffff, 48, 16); 1105 TESTINST("dextu", 0xffffffffffffffff, 0x98765432, 48, 16); 1106 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffff865421, 48, 16); 1107 TESTINST("dextu", 0x98765432, 0x0, 48, 16); 1108 TESTINST("dextu", 0x98765432, 0xffffffffffffffff, 48, 16); 1109 TESTINST("dextu", 0x98765432, 0x98765432, 48, 16); 1110 TESTINST("dextu", 0x98765432, 0xffffffffff865421, 48, 16); 1111 TESTINST("dextu", 0xffffffffff865421, 0x0, 48, 16); 1112 TESTINST("dextu", 0xffffffffff865421, 0xffffffffffffffff, 48, 16); 1113 TESTINST("dextu", 0xffffffffff865421, 0x98765432, 48, 16); 1114 TESTINST("dextu", 0xffffffffff865421, 0xffffffffff865421, 48, 16); 1115 1116 TESTINST("dextu", 0x0, 0x0, 63, 1); 1117 TESTINST("dextu", 0x0, 0xffffffffffffffff, 63, 1); 1118 TESTINST("dextu", 0x0, 0x98765432, 63, 1); 1119 TESTINST("dextu", 0x0, 0xffffffffff865421, 63, 1); 1120 TESTINST("dextu", 0xffffffffffffffff, 0x0, 63, 1); 1121 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffffffffff, 63, 1); 1122 TESTINST("dextu", 0xffffffffffffffff, 0x98765432, 63, 1); 1123 TESTINST("dextu", 0xffffffffffffffff, 0xffffffffff865421, 63, 1); 1124 TESTINST("dextu", 0x98765432, 0x0, 63, 1); 1125 TESTINST("dextu", 0x98765432, 0xffffffffffffffff, 63, 1); 1126 TESTINST("dextu", 0x98765432, 0x98765432, 63, 1); 1127 TESTINST("dextu", 0x98765432, 0xffffffffff865421, 63, 1); 1128 TESTINST("dextu", 0xffffffffff865421, 0x0, 63, 1); 1129 TESTINST("dextu", 0xffffffffff865421, 0xffffffffffffffff, 63, 1); 1130 TESTINST("dextu", 0xffffffffff865421, 0x98765432, 63, 1); 1131 TESTINST("dextu", 0xffffffffff865421, 0xffffffffff865421, 63, 1); 1132 1133 TESTINST("dextu", 0x2002ffffffffffff, 0xfffffffff0000fff, 33, 4); 1134 TESTINST("dextu", 0xffff0000ffffffff, 0xff0000ffffffffff, 60, 4); 1135 TESTINST("dextu", 0x2000ffffffffffff, 0xffff0000ffffffff, 54, 4); 1136 TESTINST("dextu", 0x2000ffffffddddff, 0xffffffffffff0008, 56, 2); 1137 TESTINST("dextu", 0x2000ffffffffeeee, 0xfffffff31415927f, 40, 4); 1138 TESTINST("dextu", 0x31415927ffffffff, 0x2000ffffffffffff, 51, 2); 1139 TESTINST("dextu", 0x2000ffffffffaaaa, 0x2000ffffffff2222, 48, 4); 1140 TESTINST("dextu", 0x2000ffffffbbbbff, 0x7fffffffddddffff, 38, 4); 1141 TESTINST("dextu", 0xeeeeff33ff22ffff, 0x2000ffffffffffff, 35, 4); 1142 TESTINST("dextu", 0x2000ffffffffffff, 0x2000ffffffffbbbb, 36, 4); 1143 TESTINST("dextu", 0x2000ffffffffbbbb, 0x2000ffffffffffff, 45, 1); 1144 TESTINST("dextu", 0x2000ffffffffffff, 0xeeeeff33ff22ffff, 46, 4); 1145 TESTINST("dextu", 0x7fffffffddddffff, 0x2000ffffffbbbbff, 52, 4); 1146 TESTINST("dextu", 0x2000ffffffff2222, 0x2000ffffffffaaaa, 40, 8); 1147 TESTINST("dextu", 0x2000ffffffffffff, 0x31415927ffffffff, 39, 4); 1148 TESTINST("dextu", 0xfffffff31415927f, 0x2000ffffffffeeee, 60, 4); 1149 TESTINST("dextu", 0xffffffffffff0008, 0x2000ffffffddddff, 63, 1); 1150 TESTINST("dextu", 0xffff0000ffffffff, 0x2000ffffffffffff, 50, 4); 1151 TESTINST("dextu", 0xff0000ffffffffff, 0, 36, 4); 1152 TESTINST("dextu", 0xfffffffff0000fff, 0, 46, 4); 1153 1154 printf("--- DINS ---\n"); 1155 /* The values of pos and size must satisfy all of the following relations: 1156 0 <= pos < 32 1157 0 < size <= 32 1158 0 < pos+size <= 32 */ 1159 TESTINST("dins", 0x0, 0x0, 0, 1); 1160 TESTINST("dins", 0x0, 0xffffffffffffffff, 0, 1); 1161 TESTINST("dins", 0x0, 0x98765432, 0, 1); 1162 TESTINST("dins", 0x0, 0xffffffffff865421, 0, 1); 1163 TESTINST("dins", 0xffffffffffffffff, 0x0, 0, 1); 1164 TESTINST("dins", 0xffffffffffffffff, 0xffffffffffffffff, 0, 1); 1165 TESTINST("dins", 0xffffffffffffffff, 0x98765432, 0, 1); 1166 TESTINST("dins", 0xffffffffffffffff, 0xffffffffff865421, 0, 1); 1167 TESTINST("dins", 0x98765432, 0x0, 0, 1); 1168 TESTINST("dins", 0x98765432, 0xffffffffffffffff, 0, 1); 1169 TESTINST("dins", 0x98765432, 0x98765432, 0, 1); 1170 TESTINST("dins", 0x98765432, 0xffffffffff865421, 0, 1); 1171 TESTINST("dins", 0xffffffffff865421, 0x0, 0, 1); 1172 TESTINST("dins", 0xffffffffff865421, 0xffffffffffffffff, 0, 1); 1173 TESTINST("dins", 0xffffffffff865421, 0x98765432, 0, 1); 1174 TESTINST("dins", 0xffffffffff865421, 0xffffffffff865421, 0, 1); 1175 TESTINST("dins", 0x0, 0x0, 0, 4); 1176 TESTINST("dins", 0x0, 0xffffffffffffffff, 0, 4); 1177 TESTINST("dins", 0x0, 0x98765432, 0, 4); 1178 TESTINST("dins", 0x0, 0xffffffffff865421, 0, 4); 1179 TESTINST("dins", 0xffffffffffffffff, 0x0, 0, 4); 1180 TESTINST("dins", 0xffffffffffffffff, 0xffffffffffffffff, 0, 4); 1181 TESTINST("dins", 0xffffffffffffffff, 0x98765432, 0, 4); 1182 TESTINST("dins", 0xffffffffffffffff, 0xffffffffff865421, 0, 4); 1183 TESTINST("dins", 0x98765432, 0x0, 0, 4); 1184 TESTINST("dins", 0x98765432, 0xffffffffffffffff, 0, 4); 1185 TESTINST("dins", 0x98765432, 0x98765432, 0, 4); 1186 TESTINST("dins", 0x98765432, 0xffffffffff865421, 0, 4); 1187 TESTINST("dins", 0xffffffffff865421, 0x0, 0, 4); 1188 TESTINST("dins", 0xffffffffff865421, 0xffffffffffffffff, 0, 4); 1189 TESTINST("dins", 0xffffffffff865421, 0x98765432, 0, 4); 1190 TESTINST("dins", 0xffffffffff865421, 0xffffffffff865421, 0, 4); 1191 TESTINST("dins", 0x0, 0x0, 0, 16); 1192 TESTINST("dins", 0x0, 0xffffffffffffffff, 0, 16); 1193 TESTINST("dins", 0x0, 0x98765432, 0, 16); 1194 TESTINST("dins", 0x0, 0xffffffffff865421, 0, 16); 1195 TESTINST("dins", 0xffffffffffffffff, 0x0, 0, 16); 1196 TESTINST("dins", 0xffffffffffffffff, 0xffffffffffffffff, 0, 16); 1197 TESTINST("dins", 0xffffffffffffffff, 0x98765432, 0, 16); 1198 TESTINST("dins", 0xffffffffffffffff, 0xffffffffff865421, 0, 16); 1199 TESTINST("dins", 0x98765432, 0x0, 0, 16); 1200 TESTINST("dins", 0x98765432, 0xffffffffffffffff, 0, 16); 1201 TESTINST("dins", 0x98765432, 0x98765432, 0, 16); 1202 TESTINST("dins", 0x98765432, 0xffffffffff865421, 0, 16); 1203 TESTINST("dins", 0xffffffffff865421, 0x0, 0, 16); 1204 TESTINST("dins", 0xffffffffff865421, 0xffffffffffffffff, 0, 16); 1205 TESTINST("dins", 0xffffffffff865421, 0x98765432, 0, 16); 1206 TESTINST("dins", 0xffffffffff865421, 0xffffffffff865421, 0, 16); 1207 TESTINST("dins", 0x0, 0x0, 0, 32); 1208 TESTINST("dins", 0x0, 0xffffffffffffffff, 0, 32); 1209 TESTINST("dins", 0x0, 0x98765432, 0, 32); 1210 TESTINST("dins", 0x0, 0xffffffffff865421, 0, 32); 1211 TESTINST("dins", 0xffffffffffffffff, 0x0, 0, 32); 1212 TESTINST("dins", 0xffffffffffffffff, 0xffffffffffffffff, 0, 32); 1213 TESTINST("dins", 0xffffffffffffffff, 0x98765432, 0, 32); 1214 TESTINST("dins", 0xffffffffffffffff, 0xffffffffff865421, 0, 32); 1215 TESTINST("dins", 0x98765432, 0x0, 0, 32); 1216 TESTINST("dins", 0x98765432, 0xffffffffffffffff, 0, 32); 1217 TESTINST("dins", 0x98765432, 0x98765432, 0, 32); 1218 TESTINST("dins", 0x98765432, 0xffffffffff865421, 0, 32); 1219 TESTINST("dins", 0xffffffffff865421, 0x0, 0, 32); 1220 TESTINST("dins", 0xffffffffff865421, 0xffffffffffffffff, 0, 32); 1221 TESTINST("dins", 0xffffffffff865421, 0x98765432, 0, 32); 1222 TESTINST("dins", 0xffffffffff865421, 0xffffffffff865421, 0, 32); 1223 1224 TESTINST("dins", 0x0, 0x0, 4, 1); 1225 TESTINST("dins", 0x0, 0xffffffffffffffff, 4, 1); 1226 TESTINST("dins", 0x0, 0x98765432, 4, 1); 1227 TESTINST("dins", 0x0, 0xffffffffff865421, 4, 1); 1228 TESTINST("dins", 0xffffffffffffffff, 0x0, 4, 1); 1229 TESTINST("dins", 0xffffffffffffffff, 0xffffffffffffffff, 4, 1); 1230 TESTINST("dins", 0xffffffffffffffff, 0x98765432, 4, 1); 1231 TESTINST("dins", 0xffffffffffffffff, 0xffffffffff865421, 4, 1); 1232 TESTINST("dins", 0x98765432, 0x0, 4, 1); 1233 TESTINST("dins", 0x98765432, 0xffffffffffffffff, 4, 1); 1234 TESTINST("dins", 0x98765432, 0x98765432, 4, 1); 1235 TESTINST("dins", 0x98765432, 0xffffffffff865421, 4, 1); 1236 TESTINST("dins", 0xffffffffff865421, 0x0, 4, 1); 1237 TESTINST("dins", 0xffffffffff865421, 0xffffffffffffffff, 4, 1); 1238 TESTINST("dins", 0xffffffffff865421, 0x98765432, 4, 1); 1239 TESTINST("dins", 0xffffffffff865421, 0xffffffffff865421, 4, 1); 1240 TESTINST("dins", 0x0, 0x0, 4, 4); 1241 TESTINST("dins", 0x0, 0xffffffffffffffff, 4, 4); 1242 TESTINST("dins", 0x0, 0x98765432, 4, 4); 1243 TESTINST("dins", 0x0, 0xffffffffff865421, 4, 4); 1244 TESTINST("dins", 0xffffffffffffffff, 0x0, 4, 4); 1245 TESTINST("dins", 0xffffffffffffffff, 0xffffffffffffffff, 4, 4); 1246 TESTINST("dins", 0xffffffffffffffff, 0x98765432, 4, 4); 1247 TESTINST("dins", 0xffffffffffffffff, 0xffffffffff865421, 4, 4); 1248 TESTINST("dins", 0x98765432, 0x0, 4, 4); 1249 TESTINST("dins", 0x98765432, 0xffffffffffffffff, 4, 4); 1250 TESTINST("dins", 0x98765432, 0x98765432, 4, 4); 1251 TESTINST("dins", 0x98765432, 0xffffffffff865421, 4, 4); 1252 TESTINST("dins", 0xffffffffff865421, 0x0, 4, 4); 1253 TESTINST("dins", 0xffffffffff865421, 0xffffffffffffffff, 4, 4); 1254 TESTINST("dins", 0xffffffffff865421, 0x98765432, 4, 4); 1255 TESTINST("dins", 0xffffffffff865421, 0xffffffffff865421, 4, 4); 1256 TESTINST("dins", 0x0, 0x0, 4, 16); 1257 TESTINST("dins", 0x0, 0xffffffffffffffff, 4, 16); 1258 TESTINST("dins", 0x0, 0x98765432, 4, 16); 1259 TESTINST("dins", 0x0, 0xffffffffff865421, 4, 16); 1260 TESTINST("dins", 0xffffffffffffffff, 0x0, 4, 16); 1261 TESTINST("dins", 0xffffffffffffffff, 0xffffffffffffffff, 4, 16); 1262 TESTINST("dins", 0xffffffffffffffff, 0x98765432, 4, 16); 1263 TESTINST("dins", 0xffffffffffffffff, 0xffffffffff865421, 4, 16); 1264 TESTINST("dins", 0x98765432, 0x0, 4, 16); 1265 TESTINST("dins", 0x98765432, 0xffffffffffffffff, 4, 16); 1266 TESTINST("dins", 0x98765432, 0x98765432, 4, 16); 1267 TESTINST("dins", 0x98765432, 0xffffffffff865421, 4, 16); 1268 TESTINST("dins", 0xffffffffff865421, 0x0, 4, 16); 1269 TESTINST("dins", 0xffffffffff865421, 0xffffffffffffffff, 4, 16); 1270 TESTINST("dins", 0xffffffffff865421, 0x98765432, 4, 16); 1271 TESTINST("dins", 0xffffffffff865421, 0xffffffffff865421, 4, 16); 1272 TESTINST("dins", 0x0, 0x0, 4, 28); 1273 TESTINST("dins", 0x0, 0xffffffffffffffff, 4, 28); 1274 TESTINST("dins", 0x0, 0x98765432, 4, 28); 1275 TESTINST("dins", 0x0, 0xffffffffff865421, 4, 28); 1276 TESTINST("dins", 0xffffffffffffffff, 0x0, 4, 28); 1277 TESTINST("dins", 0xffffffffffffffff, 0xffffffffffffffff, 4, 28); 1278 TESTINST("dins", 0xffffffffffffffff, 0x98765432, 4, 28); 1279 TESTINST("dins", 0xffffffffffffffff, 0xffffffffff865421, 4, 28); 1280 TESTINST("dins", 0x98765432, 0x0, 4, 28); 1281 TESTINST("dins", 0x98765432, 0xffffffffffffffff, 4, 28); 1282 TESTINST("dins", 0x98765432, 0x98765432, 4, 28); 1283 TESTINST("dins", 0x98765432, 0xffffffffff865421, 4, 28); 1284 TESTINST("dins", 0xffffffffff865421, 0x0, 4, 28); 1285 TESTINST("dins", 0xffffffffff865421, 0xffffffffffffffff, 4, 28); 1286 TESTINST("dins", 0xffffffffff865421, 0x98765432, 4, 28); 1287 TESTINST("dins", 0xffffffffff865421, 0xffffffffff865421, 4, 28); 1288 1289 TESTINST("dins", 0x0, 0x0, 16, 1); 1290 TESTINST("dins", 0x0, 0xffffffffffffffff, 16, 1); 1291 TESTINST("dins", 0x0, 0x98765432, 16, 1); 1292 TESTINST("dins", 0x0, 0xffffffffff865421, 16, 1); 1293 TESTINST("dins", 0xffffffffffffffff, 0x0, 16, 1); 1294 TESTINST("dins", 0xffffffffffffffff, 0xffffffffffffffff, 16, 1); 1295 TESTINST("dins", 0xffffffffffffffff, 0x98765432, 16, 1); 1296 TESTINST("dins", 0xffffffffffffffff, 0xffffffffff865421, 16, 1); 1297 TESTINST("dins", 0x98765432, 0x0, 16, 1); 1298 TESTINST("dins", 0x98765432, 0xffffffffffffffff, 16, 1); 1299 TESTINST("dins", 0x98765432, 0x98765432, 16, 1); 1300 TESTINST("dins", 0x98765432, 0xffffffffff865421, 16, 1); 1301 TESTINST("dins", 0xffffffffff865421, 0x0, 16, 1); 1302 TESTINST("dins", 0xffffffffff865421, 0xffffffffffffffff, 16, 1); 1303 TESTINST("dins", 0xffffffffff865421, 0x98765432, 16, 1); 1304 TESTINST("dins", 0xffffffffff865421, 0xffffffffff865421, 16, 1); 1305 TESTINST("dins", 0x0, 0x0, 16, 4); 1306 TESTINST("dins", 0x0, 0xffffffffffffffff, 16, 4); 1307 TESTINST("dins", 0x0, 0x98765432, 16, 4); 1308 TESTINST("dins", 0x0, 0xffffffffff865421, 16, 4); 1309 TESTINST("dins", 0xffffffffffffffff, 0x0, 16, 4); 1310 TESTINST("dins", 0xffffffffffffffff, 0xffffffffffffffff, 16, 4); 1311 TESTINST("dins", 0xffffffffffffffff, 0x98765432, 16, 4); 1312 TESTINST("dins", 0xffffffffffffffff, 0xffffffffff865421, 16, 4); 1313 TESTINST("dins", 0x98765432, 0x0, 16, 4); 1314 TESTINST("dins", 0x98765432, 0xffffffffffffffff, 16, 4); 1315 TESTINST("dins", 0x98765432, 0x98765432, 16, 4); 1316 TESTINST("dins", 0x98765432, 0xffffffffff865421, 16, 4); 1317 TESTINST("dins", 0xffffffffff865421, 0x0, 16, 4); 1318 TESTINST("dins", 0xffffffffff865421, 0xffffffffffffffff, 16, 4); 1319 TESTINST("dins", 0xffffffffff865421, 0x98765432, 16, 4); 1320 TESTINST("dins", 0xffffffffff865421, 0xffffffffff865421, 16, 4); 1321 TESTINST("dins", 0x0, 0x0, 16, 16); 1322 TESTINST("dins", 0x0, 0xffffffffffffffff, 16, 16); 1323 TESTINST("dins", 0x0, 0x98765432, 16, 16); 1324 TESTINST("dins", 0x0, 0xffffffffff865421, 16, 16); 1325 TESTINST("dins", 0xffffffffffffffff, 0x0, 16, 16); 1326 TESTINST("dins", 0xffffffffffffffff, 0xffffffffffffffff, 16, 16); 1327 TESTINST("dins", 0xffffffffffffffff, 0x98765432, 16, 16); 1328 TESTINST("dins", 0xffffffffffffffff, 0xffffffffff865421, 16, 16); 1329 TESTINST("dins", 0x98765432, 0x0, 16, 16); 1330 TESTINST("dins", 0x98765432, 0xffffffffffffffff, 16, 16); 1331 TESTINST("dins", 0x98765432, 0x98765432, 16, 16); 1332 TESTINST("dins", 0x98765432, 0xffffffffff865421, 16, 16); 1333 TESTINST("dins", 0xffffffffff865421, 0x0, 16, 16); 1334 TESTINST("dins", 0xffffffffff865421, 0xffffffffffffffff, 16, 16); 1335 TESTINST("dins", 0xffffffffff865421, 0x98765432, 16, 16); 1336 TESTINST("dins", 0xffffffffff865421, 0xffffffffff865421, 16, 16); 1337 1338 TESTINST("dins", 0x0, 0x0, 31, 1); 1339 TESTINST("dins", 0x0, 0xffffffffffffffff, 31, 1); 1340 TESTINST("dins", 0x0, 0x98765432, 31, 1); 1341 TESTINST("dins", 0x0, 0xffffffffff865421, 31, 1); 1342 TESTINST("dins", 0xffffffffffffffff, 0x0, 31, 1); 1343 TESTINST("dins", 0xffffffffffffffff, 0xffffffffffffffff, 31, 1); 1344 TESTINST("dins", 0xffffffffffffffff, 0x98765432, 31, 1); 1345 TESTINST("dins", 0xffffffffffffffff, 0xffffffffff865421, 31, 1); 1346 TESTINST("dins", 0x98765432, 0x0, 31, 1); 1347 TESTINST("dins", 0x98765432, 0xffffffffffffffff, 31, 1); 1348 TESTINST("dins", 0x98765432, 0x98765432, 31, 1); 1349 TESTINST("dins", 0x98765432, 0xffffffffff865421, 31, 1); 1350 TESTINST("dins", 0xffffffffff865421, 0x0, 31, 1); 1351 TESTINST("dins", 0xffffffffff865421, 0xffffffffffffffff, 31, 1); 1352 TESTINST("dins", 0xffffffffff865421, 0x98765432, 31, 1); 1353 TESTINST("dins", 0xffffffffff865421, 0xffffffffff865421, 31, 1); 1354 1355 TESTINST("dins", 0x2002ffffffffffff, 0xfffffffff0000fff, 4, 4); 1356 TESTINST("dins", 0xffff0000ffffffff, 0xff0000ffffffffff, 8, 4); 1357 TESTINST("dins", 0x2000ffffffffffff, 0xffff0000ffffffff, 16, 4); 1358 TESTINST("dins", 0x2000ffffffddddff, 0xffffffffffff0008, 24, 2); 1359 TESTINST("dins", 0x2000ffffffffeeee, 0xfffffff31415927f, 24, 4); 1360 TESTINST("dins", 0x31415927ffffffff, 0x2000ffffffffffff, 9, 2); 1361 TESTINST("dins", 0x2000ffffffffaaaa, 0x2000ffffffff2222, 16, 4); 1362 TESTINST("dins", 0x2000ffffffbbbbff, 0x7fffffffddddffff, 16, 4); 1363 TESTINST("dins", 0xeeeeff33ff22ffff, 0x2000ffffffffffff, 7, 4); 1364 TESTINST("dins", 0x2000ffffffffffff, 0x2000ffffffffbbbb, 5, 4); 1365 TESTINST("dins", 0x2000ffffffffbbbb, 0x2000ffffffffffff, 3, 4); 1366 TESTINST("dins", 0x2000ffffffffffff, 0xeeeeff33ff22ffff, 16, 4); 1367 TESTINST("dins", 0x7fffffffddddffff, 0x2000ffffffbbbbff, 16, 2); 1368 TESTINST("dins", 0x2000ffffffff2222, 0x2000ffffffffaaaa, 2, 8); 1369 TESTINST("dins", 0x2000ffffffffffff, 0x2000ffffffffeeee, 0, 32); 1370 TESTINST("dins", 0xfffffff31415927f, 0x2000ffffffddddff, 16, 16); 1371 TESTINST("dins", 0xffffffffffff0008, 0x2000ffffffddddff, 8, 2); 1372 TESTINST("dins", 0xffff0000ffffffff, 0x2000ffffffffffff, 16, 4); 1373 TESTINST("dins", 0xff0000ffffffffff, 0xffff0000ffffffff, 8, 4); 1374 TESTINST("dins", 0xfffffffff0000fff, 0, 0, 31); 1375 1376 printf("--- DINSM ---\n"); 1377 /* The values of pos and size must satisfy all of the following relations: 1378 0 <= pos < 32 1379 2 <= size <= 64 1380 32 < pos+size <= 64 */ 1381 TESTINST("dinsm", 0x0, 0x0, 0, 33); 1382 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 0, 33); 1383 TESTINST("dinsm", 0x0, 0x98765432, 0, 33); 1384 TESTINST("dinsm", 0x0, 0xffffffffff865421, 0, 33); 1385 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 0, 33); 1386 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 0, 33); 1387 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 0, 33); 1388 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 0, 33); 1389 TESTINST("dinsm", 0x98765432, 0x0, 0, 33); 1390 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 0, 33); 1391 TESTINST("dinsm", 0x98765432, 0x98765432, 0, 33); 1392 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 0, 33); 1393 TESTINST("dinsm", 0xffffffffff865421, 0x0, 0, 33); 1394 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 0, 33); 1395 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 0, 33); 1396 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 0, 33); 1397 TESTINST("dinsm", 0x0, 0x0, 0, 37); 1398 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 0, 37); 1399 TESTINST("dinsm", 0x0, 0x98765432, 0, 37); 1400 TESTINST("dinsm", 0x0, 0xffffffffff865421, 0, 37); 1401 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 0, 37); 1402 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 0, 37); 1403 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 0, 37); 1404 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 0, 37); 1405 TESTINST("dinsm", 0x98765432, 0x0, 0, 37); 1406 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 0, 37); 1407 TESTINST("dinsm", 0x98765432, 0x98765432, 0, 37); 1408 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 0, 37); 1409 TESTINST("dinsm", 0xffffffffff865421, 0x0, 0, 37); 1410 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 0, 37); 1411 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 0, 37); 1412 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 0, 37); 1413 TESTINST("dinsm", 0x0, 0x0, 0, 48); 1414 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 0, 48); 1415 TESTINST("dinsm", 0x0, 0x98765432, 0, 48); 1416 TESTINST("dinsm", 0x0, 0xffffffffff865421, 0, 48); 1417 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 0, 48); 1418 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 0, 48); 1419 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 0, 48); 1420 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 0, 48); 1421 TESTINST("dinsm", 0x98765432, 0x0, 0, 48); 1422 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 0, 48); 1423 TESTINST("dinsm", 0x98765432, 0x98765432, 0, 48); 1424 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 0, 48); 1425 TESTINST("dinsm", 0xffffffffff865421, 0x0, 0, 48); 1426 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 0, 48); 1427 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 0, 48); 1428 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 0, 48); 1429 TESTINST("dinsm", 0x0, 0x0, 0, 64); 1430 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 0, 64); 1431 TESTINST("dinsm", 0x0, 0x98765432, 0, 64); 1432 TESTINST("dinsm", 0x0, 0xffffffffff865421, 0, 64); 1433 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 0, 64); 1434 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 0, 64); 1435 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 0, 64); 1436 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 0, 64); 1437 TESTINST("dinsm", 0x98765432, 0x0, 0, 64); 1438 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 0, 64); 1439 TESTINST("dinsm", 0x98765432, 0x98765432, 0, 64); 1440 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 0, 64); 1441 TESTINST("dinsm", 0xffffffffff865421, 0x0, 0, 64); 1442 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 0, 64); 1443 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 0, 64); 1444 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 0, 64); 1445 1446 TESTINST("dinsm", 0x0, 0x0, 4, 29); 1447 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 4, 29); 1448 TESTINST("dinsm", 0x0, 0x98765432, 4, 29); 1449 TESTINST("dinsm", 0x0, 0xffffffffff865421, 4, 29); 1450 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 4, 29); 1451 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 4, 29); 1452 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 4, 29); 1453 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 4, 29); 1454 TESTINST("dinsm", 0x98765432, 0x0, 4, 29); 1455 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 4, 29); 1456 TESTINST("dinsm", 0x98765432, 0x98765432, 4, 29); 1457 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 4, 29); 1458 TESTINST("dinsm", 0xffffffffff865421, 0x0, 4, 29); 1459 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 4, 29); 1460 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 4, 29); 1461 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 4, 29); 1462 TESTINST("dinsm", 0x0, 0x0, 4, 32); 1463 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 4, 32); 1464 TESTINST("dinsm", 0x0, 0x98765432, 4, 32); 1465 TESTINST("dinsm", 0x0, 0xffffffffff865421, 4, 32); 1466 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 4, 32); 1467 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 4, 32); 1468 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 4, 32); 1469 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 4, 32); 1470 TESTINST("dinsm", 0x98765432, 0x0, 4, 32); 1471 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 4, 32); 1472 TESTINST("dinsm", 0x98765432, 0x98765432, 4, 32); 1473 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 4, 32); 1474 TESTINST("dinsm", 0xffffffffff865421, 0x0, 4, 32); 1475 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 4, 32); 1476 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 4, 32); 1477 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 4, 32); 1478 TESTINST("dinsm", 0x0, 0x0, 4, 37); 1479 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 4, 37); 1480 TESTINST("dinsm", 0x0, 0x98765432, 4, 37); 1481 TESTINST("dinsm", 0x0, 0xffffffffff865421, 4, 37); 1482 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 4, 37); 1483 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 4, 37); 1484 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 4, 37); 1485 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 4, 37); 1486 TESTINST("dinsm", 0x98765432, 0x0, 4, 37); 1487 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 4, 37); 1488 TESTINST("dinsm", 0x98765432, 0x98765432, 4, 37); 1489 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 4, 37); 1490 TESTINST("dinsm", 0xffffffffff865421, 0x0, 4, 37); 1491 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 4, 37); 1492 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 4, 37); 1493 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 4, 37); 1494 TESTINST("dinsm", 0x0, 0x0, 4, 48); 1495 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 4, 48); 1496 TESTINST("dinsm", 0x0, 0x98765432, 4, 48); 1497 TESTINST("dinsm", 0x0, 0xffffffffff865421, 4, 48); 1498 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 4, 48); 1499 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 4, 48); 1500 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 4, 48); 1501 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 4, 48); 1502 TESTINST("dinsm", 0x98765432, 0x0, 4, 48); 1503 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 4, 48); 1504 TESTINST("dinsm", 0x98765432, 0x98765432, 4, 48); 1505 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 4, 48); 1506 TESTINST("dinsm", 0xffffffffff865421, 0x0, 4, 48); 1507 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 4, 48); 1508 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 4, 48); 1509 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 4, 48); 1510 TESTINST("dinsm", 0x0, 0x0, 4, 60); 1511 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 4, 60); 1512 TESTINST("dinsm", 0x0, 0x98765432, 4, 60); 1513 TESTINST("dinsm", 0x0, 0xffffffffff865421, 4, 60); 1514 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 4, 60); 1515 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 4, 60); 1516 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 4, 60); 1517 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 4, 60); 1518 TESTINST("dinsm", 0x98765432, 0x0, 4, 60); 1519 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 4, 60); 1520 TESTINST("dinsm", 0x98765432, 0x98765432, 4, 60); 1521 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 4, 60); 1522 TESTINST("dinsm", 0xffffffffff865421, 0x0, 4, 60); 1523 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 4, 60); 1524 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 4, 60); 1525 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 4, 60); 1526 1527 TESTINST("dinsm", 0x0, 0x0, 16, 17); 1528 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 16, 17); 1529 TESTINST("dinsm", 0x0, 0x98765432, 16, 17); 1530 TESTINST("dinsm", 0x0, 0xffffffffff865421, 16, 17); 1531 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 16, 17); 1532 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 16, 17); 1533 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 16, 17); 1534 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 16, 17); 1535 TESTINST("dinsm", 0x98765432, 0x0, 16, 17); 1536 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 16, 17); 1537 TESTINST("dinsm", 0x98765432, 0x98765432, 16, 17); 1538 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 16, 17); 1539 TESTINST("dinsm", 0xffffffffff865421, 0x0, 16, 17); 1540 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 16, 17); 1541 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 16, 17); 1542 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 16, 17); 1543 TESTINST("dinsm", 0x0, 0x0, 16, 32); 1544 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 16, 32); 1545 TESTINST("dinsm", 0x0, 0x98765432, 16, 32); 1546 TESTINST("dinsm", 0x0, 0xffffffffff865421, 16, 32); 1547 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 16, 32); 1548 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 16, 32); 1549 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 16, 32); 1550 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 16, 32); 1551 TESTINST("dinsm", 0x98765432, 0x0, 16, 32); 1552 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 16, 32); 1553 TESTINST("dinsm", 0x98765432, 0x98765432, 16, 32); 1554 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 16, 32); 1555 TESTINST("dinsm", 0xffffffffff865421, 0x0, 16, 32); 1556 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 16, 32); 1557 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 16, 32); 1558 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 16, 32); 1559 TESTINST("dinsm", 0x0, 0x0, 16, 37); 1560 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 16, 37); 1561 TESTINST("dinsm", 0x0, 0x98765432, 16, 37); 1562 TESTINST("dinsm", 0x0, 0xffffffffff865421, 16, 37); 1563 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 16, 37); 1564 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 16, 37); 1565 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 16, 37); 1566 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 16, 37); 1567 TESTINST("dinsm", 0x98765432, 0x0, 16, 37); 1568 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 16, 37); 1569 TESTINST("dinsm", 0x98765432, 0x98765432, 16, 37); 1570 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 16, 37); 1571 TESTINST("dinsm", 0xffffffffff865421, 0x0, 16, 37); 1572 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 16, 37); 1573 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 16, 37); 1574 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 16, 37); 1575 TESTINST("dinsm", 0x0, 0x0, 16, 48); 1576 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 16, 48); 1577 TESTINST("dinsm", 0x0, 0x98765432, 16, 48); 1578 TESTINST("dinsm", 0x0, 0xffffffffff865421, 16, 48); 1579 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 16, 48); 1580 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 16, 48); 1581 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 16, 48); 1582 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 16, 48); 1583 TESTINST("dinsm", 0x98765432, 0x0, 16, 48); 1584 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 16, 48); 1585 TESTINST("dinsm", 0x98765432, 0x98765432, 16, 48); 1586 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 16, 48); 1587 TESTINST("dinsm", 0xffffffffff865421, 0x0, 16, 48); 1588 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 16, 48); 1589 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 16, 48); 1590 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 16, 48); 1591 1592 TESTINST("dinsm", 0x0, 0x0, 31, 2); 1593 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 31, 2); 1594 TESTINST("dinsm", 0x0, 0x98765432, 31, 2); 1595 TESTINST("dinsm", 0x0, 0xffffffffff865421, 31, 2); 1596 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 31, 2); 1597 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 31, 2); 1598 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 31, 2); 1599 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 31, 2); 1600 TESTINST("dinsm", 0x98765432, 0x0, 31, 2); 1601 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 31, 2); 1602 TESTINST("dinsm", 0x98765432, 0x98765432, 31, 2); 1603 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 31, 2); 1604 TESTINST("dinsm", 0xffffffffff865421, 0x0, 31, 2); 1605 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 31, 2); 1606 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 31, 2); 1607 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 31, 2); 1608 TESTINST("dinsm", 0x0, 0x0, 31, 16); 1609 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 31, 16); 1610 TESTINST("dinsm", 0x0, 0x98765432, 31, 16); 1611 TESTINST("dinsm", 0x0, 0xffffffffff865421, 31, 16); 1612 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 31, 16); 1613 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 31, 16); 1614 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 31, 16); 1615 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 31, 16); 1616 TESTINST("dinsm", 0x98765432, 0x0, 31, 16); 1617 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 31, 16); 1618 TESTINST("dinsm", 0x98765432, 0x98765432, 31, 16); 1619 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 31, 16); 1620 TESTINST("dinsm", 0xffffffffff865421, 0x0, 31, 16); 1621 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 31, 16); 1622 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 31, 16); 1623 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 31, 16); 1624 TESTINST("dinsm", 0x0, 0x0, 31, 32); 1625 TESTINST("dinsm", 0x0, 0xffffffffffffffff, 31, 32); 1626 TESTINST("dinsm", 0x0, 0x98765432, 31, 32); 1627 TESTINST("dinsm", 0x0, 0xffffffffff865421, 31, 32); 1628 TESTINST("dinsm", 0xffffffffffffffff, 0x0, 31, 32); 1629 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffffffffff, 31, 32); 1630 TESTINST("dinsm", 0xffffffffffffffff, 0x98765432, 31, 32); 1631 TESTINST("dinsm", 0xffffffffffffffff, 0xffffffffff865421, 31, 32); 1632 TESTINST("dinsm", 0x98765432, 0x0, 31, 32); 1633 TESTINST("dinsm", 0x98765432, 0xffffffffffffffff, 31, 32); 1634 TESTINST("dinsm", 0x98765432, 0x98765432, 31, 32); 1635 TESTINST("dinsm", 0x98765432, 0xffffffffff865421, 31, 32); 1636 TESTINST("dinsm", 0xffffffffff865421, 0x0, 31, 32); 1637 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffffffffff, 31, 32); 1638 TESTINST("dinsm", 0xffffffffff865421, 0x98765432, 31, 32); 1639 TESTINST("dinsm", 0xffffffffff865421, 0xffffffffff865421, 31, 32); 1640 1641 TESTINST("dinsm", 0x2002ffffffffffff, 0xfffffffff0000fff, 4, 35); 1642 TESTINST("dinsm", 0xffff0000ffffffff, 0xff0000ffffffffff, 8, 33); 1643 TESTINST("dinsm", 0x2000ffffffffffff, 0xffff0000ffffffff, 16, 34); 1644 TESTINST("dinsm", 0x2000ffffffddddff, 0xffffffffffff0008, 4, 46); 1645 TESTINST("dinsm", 0x2000ffffffffeeee, 0xfffffff31415927f, 3, 56); 1646 TESTINST("dinsm", 0x31415927ffffffff, 0x2000ffffffffffff, 0, 64); 1647 TESTINST("dinsm", 0x2000ffffffffaaaa, 0x2000ffffffff2222, 16, 40); 1648 TESTINST("dinsm", 0x2000ffffffbbbbff, 0x7fffffffddddffff, 16, 42); 1649 TESTINST("dinsm", 0xeeeeff33ff22ffff, 0x2000ffffffffffff, 7, 43); 1650 TESTINST("dinsm", 0x2000ffffffffffff, 0x2000ffffffffbbbb, 5, 48); 1651 TESTINST("dinsm", 0x2000ffffffffbbbb, 0x2000ffffffffffff, 3, 52); 1652 TESTINST("dinsm", 0x2000ffffffffffff, 0xeeeeff33ff22ffff, 1, 54); 1653 TESTINST("dinsm", 0x7fffffffddddffff, 0x2000ffffffbbbbff, 2, 54); 1654 TESTINST("dinsm", 0x2000ffffffff2222, 0x2000ffffffffaaaa, 2, 48); 1655 TESTINST("dinsm", 0x2000ffffffffffff, 0x31415927ffffffff, 5, 53); 1656 TESTINST("dinsm", 0xfffffff31415927f, 0x2000ffffffffeeee, 2, 60); 1657 TESTINST("dinsm", 0xffffffffffff0008, 0x2000ffffffddddff, 3, 61); 1658 TESTINST("dinsm", 0xffff0000ffffffff, 0x2000ffffffffffff, 1, 62); 1659 TESTINST("dinsm", 0xff0000ffffffffff, 0, 8, 38); 1660 TESTINST("dinsm", 0xfffffffff0000fff, 0, 16, 39); 1661 1662 printf("--- DINSU ---\n"); 1663 /* The values of pos and size must satisfy all of the following relations: 1664 32 <= pos < 64 1665 1 <= size <= 32 1666 32 < pos+size <= 64 */ 1667 TESTINST("dinsu", 0x0, 0x0, 32, 1); 1668 TESTINST("dinsu", 0x0, 0xffffffffffffffff, 32, 1); 1669 TESTINST("dinsu", 0x0, 0x98765432, 32, 1); 1670 TESTINST("dinsu", 0x0, 0xffffffffff865421, 32, 1); 1671 TESTINST("dinsu", 0xffffffffffffffff, 0x0, 32, 1); 1672 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffffffffff, 32, 1); 1673 TESTINST("dinsu", 0xffffffffffffffff, 0x98765432, 32, 1); 1674 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffff865421, 32, 1); 1675 TESTINST("dinsu", 0x98765432, 0x0, 32, 1); 1676 TESTINST("dinsu", 0x98765432, 0xffffffffffffffff, 32, 1); 1677 TESTINST("dinsu", 0x98765432, 0x98765432, 32, 1); 1678 TESTINST("dinsu", 0x98765432, 0xffffffffff865421, 32, 1); 1679 TESTINST("dinsu", 0xffffffffff865421, 0x0, 32, 1); 1680 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffffffffff, 32, 1); 1681 TESTINST("dinsu", 0xffffffffff865421, 0x98765432, 32, 1); 1682 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffff865421, 32, 1); 1683 TESTINST("dinsu", 0x0, 0x0, 32, 4); 1684 TESTINST("dinsu", 0x0, 0xffffffffffffffff, 32, 4); 1685 TESTINST("dinsu", 0x0, 0x98765432, 32, 4); 1686 TESTINST("dinsu", 0x0, 0xffffffffff865421, 32, 4); 1687 TESTINST("dinsu", 0xffffffffffffffff, 0x0, 32, 4); 1688 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffffffffff, 32, 4); 1689 TESTINST("dinsu", 0xffffffffffffffff, 0x98765432, 32, 4); 1690 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffff865421, 32, 4); 1691 TESTINST("dinsu", 0x98765432, 0x0, 32, 4); 1692 TESTINST("dinsu", 0x98765432, 0xffffffffffffffff, 32, 4); 1693 TESTINST("dinsu", 0x98765432, 0x98765432, 32, 4); 1694 TESTINST("dinsu", 0x98765432, 0xffffffffff865421, 32, 4); 1695 TESTINST("dinsu", 0xffffffffff865421, 0x0, 32, 4); 1696 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffffffffff, 32, 4); 1697 TESTINST("dinsu", 0xffffffffff865421, 0x98765432, 32, 4); 1698 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffff865421, 32, 4); 1699 TESTINST("dinsu", 0x0, 0x0, 32, 16); 1700 TESTINST("dinsu", 0x0, 0xffffffffffffffff, 32, 16); 1701 TESTINST("dinsu", 0x0, 0x98765432, 32, 16); 1702 TESTINST("dinsu", 0x0, 0xffffffffff865421, 32, 16); 1703 TESTINST("dinsu", 0xffffffffffffffff, 0x0, 32, 16); 1704 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffffffffff, 32, 16); 1705 TESTINST("dinsu", 0xffffffffffffffff, 0x98765432, 32, 16); 1706 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffff865421, 32, 16); 1707 TESTINST("dinsu", 0x98765432, 0x0, 32, 16); 1708 TESTINST("dinsu", 0x98765432, 0xffffffffffffffff, 32, 16); 1709 TESTINST("dinsu", 0x98765432, 0x98765432, 32, 16); 1710 TESTINST("dinsu", 0x98765432, 0xffffffffff865421, 32, 16); 1711 TESTINST("dinsu", 0xffffffffff865421, 0x0, 32, 16); 1712 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffffffffff, 32, 16); 1713 TESTINST("dinsu", 0xffffffffff865421, 0x98765432, 32, 16); 1714 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffff865421, 32, 16); 1715 TESTINST("dinsu", 0x0, 0x0, 32, 32); 1716 TESTINST("dinsu", 0x0, 0xffffffffffffffff, 32, 32); 1717 TESTINST("dinsu", 0x0, 0x98765432, 32, 32); 1718 TESTINST("dinsu", 0x0, 0xffffffffff865421, 32, 32); 1719 TESTINST("dinsu", 0xffffffffffffffff, 0x0, 32, 32); 1720 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffffffffff, 32, 32); 1721 TESTINST("dinsu", 0xffffffffffffffff, 0x98765432, 32, 32); 1722 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffff865421, 32, 32); 1723 TESTINST("dinsu", 0x98765432, 0x0, 32, 32); 1724 TESTINST("dinsu", 0x98765432, 0xffffffffffffffff, 32, 32); 1725 TESTINST("dinsu", 0x98765432, 0x98765432, 32, 32); 1726 TESTINST("dinsu", 0x98765432, 0xffffffffff865421, 32, 32); 1727 TESTINST("dinsu", 0xffffffffff865421, 0x0, 32, 32); 1728 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffffffffff, 32, 32); 1729 TESTINST("dinsu", 0xffffffffff865421, 0x98765432, 32, 32); 1730 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffff865421, 32, 32); 1731 1732 TESTINST("dinsu", 0x0, 0x0, 36, 1); 1733 TESTINST("dinsu", 0x0, 0xffffffffffffffff, 36, 1); 1734 TESTINST("dinsu", 0x0, 0x98765432, 36, 1); 1735 TESTINST("dinsu", 0x0, 0xffffffffff865421, 36, 1); 1736 TESTINST("dinsu", 0xffffffffffffffff, 0x0, 36, 1); 1737 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffffffffff, 36, 1); 1738 TESTINST("dinsu", 0xffffffffffffffff, 0x98765432, 36, 1); 1739 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffff865421, 36, 1); 1740 TESTINST("dinsu", 0x98765432, 0x0, 36, 1); 1741 TESTINST("dinsu", 0x98765432, 0xffffffffffffffff, 36, 1); 1742 TESTINST("dinsu", 0x98765432, 0x98765432, 36, 1); 1743 TESTINST("dinsu", 0x98765432, 0xffffffffff865421, 36, 1); 1744 TESTINST("dinsu", 0xffffffffff865421, 0x0, 36, 1); 1745 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffffffffff, 36, 1); 1746 TESTINST("dinsu", 0xffffffffff865421, 0x98765432, 36, 1); 1747 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffff865421, 36, 1); 1748 TESTINST("dinsu", 0x0, 0x0, 36, 4); 1749 TESTINST("dinsu", 0x0, 0xffffffffffffffff, 36, 4); 1750 TESTINST("dinsu", 0x0, 0x98765432, 36, 4); 1751 TESTINST("dinsu", 0x0, 0xffffffffff865421, 36, 4); 1752 TESTINST("dinsu", 0xffffffffffffffff, 0x0, 36, 4); 1753 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffffffffff, 36, 4); 1754 TESTINST("dinsu", 0xffffffffffffffff, 0x98765432, 36, 4); 1755 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffff865421, 36, 4); 1756 TESTINST("dinsu", 0x98765432, 0x0, 36, 4); 1757 TESTINST("dinsu", 0x98765432, 0xffffffffffffffff, 36, 4); 1758 TESTINST("dinsu", 0x98765432, 0x98765432, 36, 4); 1759 TESTINST("dinsu", 0x98765432, 0xffffffffff865421, 36, 4); 1760 TESTINST("dinsu", 0xffffffffff865421, 0x0, 36, 4); 1761 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffffffffff, 36, 4); 1762 TESTINST("dinsu", 0xffffffffff865421, 0x98765432, 36, 4); 1763 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffff865421, 36, 4); 1764 TESTINST("dinsu", 0x0, 0x0, 36, 16); 1765 TESTINST("dinsu", 0x0, 0xffffffffffffffff, 36, 16); 1766 TESTINST("dinsu", 0x0, 0x98765432, 36, 16); 1767 TESTINST("dinsu", 0x0, 0xffffffffff865421, 36, 16); 1768 TESTINST("dinsu", 0xffffffffffffffff, 0x0, 36, 16); 1769 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffffffffff, 36, 16); 1770 TESTINST("dinsu", 0xffffffffffffffff, 0x98765432, 36, 16); 1771 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffff865421, 36, 16); 1772 TESTINST("dinsu", 0x98765432, 0x0, 36, 16); 1773 TESTINST("dinsu", 0x98765432, 0xffffffffffffffff, 36, 16); 1774 TESTINST("dinsu", 0x98765432, 0x98765432, 36, 16); 1775 TESTINST("dinsu", 0x98765432, 0xffffffffff865421, 36, 16); 1776 TESTINST("dinsu", 0xffffffffff865421, 0x0, 36, 16); 1777 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffffffffff, 36, 16); 1778 TESTINST("dinsu", 0xffffffffff865421, 0x98765432, 36, 16); 1779 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffff865421, 36, 16); 1780 TESTINST("dinsu", 0x0, 0x0, 36, 28); 1781 TESTINST("dinsu", 0x0, 0xffffffffffffffff, 36, 28); 1782 TESTINST("dinsu", 0x0, 0x98765432, 36, 28); 1783 TESTINST("dinsu", 0x0, 0xffffffffff865421, 36, 28); 1784 TESTINST("dinsu", 0xffffffffffffffff, 0x0, 36, 28); 1785 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffffffffff, 36, 28); 1786 TESTINST("dinsu", 0xffffffffffffffff, 0x98765432, 36, 28); 1787 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffff865421, 36, 28); 1788 TESTINST("dinsu", 0x98765432, 0x0, 36, 28); 1789 TESTINST("dinsu", 0x98765432, 0xffffffffffffffff, 36, 28); 1790 TESTINST("dinsu", 0x98765432, 0x98765432, 36, 28); 1791 TESTINST("dinsu", 0x98765432, 0xffffffffff865421, 36, 28); 1792 TESTINST("dinsu", 0xffffffffff865421, 0x0, 36, 28); 1793 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffffffffff, 36, 28); 1794 TESTINST("dinsu", 0xffffffffff865421, 0x98765432, 36, 28); 1795 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffff865421, 36, 28); 1796 1797 TESTINST("dinsu", 0x0, 0x0, 48, 1); 1798 TESTINST("dinsu", 0x0, 0xffffffffffffffff, 48, 1); 1799 TESTINST("dinsu", 0x0, 0x98765432, 48, 1); 1800 TESTINST("dinsu", 0x0, 0xffffffffff865421, 48, 1); 1801 TESTINST("dinsu", 0xffffffffffffffff, 0x0, 48, 1); 1802 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffffffffff, 48, 1); 1803 TESTINST("dinsu", 0xffffffffffffffff, 0x98765432, 48, 1); 1804 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffff865421, 48, 1); 1805 TESTINST("dinsu", 0x98765432, 0x0, 48, 1); 1806 TESTINST("dinsu", 0x98765432, 0xffffffffffffffff, 48, 1); 1807 TESTINST("dinsu", 0x98765432, 0x98765432, 48, 1); 1808 TESTINST("dinsu", 0x98765432, 0xffffffffff865421, 48, 1); 1809 TESTINST("dinsu", 0xffffffffff865421, 0x0, 48, 1); 1810 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffffffffff, 48, 1); 1811 TESTINST("dinsu", 0xffffffffff865421, 0x98765432, 48, 1); 1812 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffff865421, 48, 1); 1813 TESTINST("dinsu", 0x0, 0x0, 48, 4); 1814 TESTINST("dinsu", 0x0, 0xffffffffffffffff, 48, 4); 1815 TESTINST("dinsu", 0x0, 0x98765432, 48, 4); 1816 TESTINST("dinsu", 0x0, 0xffffffffff865421, 48, 4); 1817 TESTINST("dinsu", 0xffffffffffffffff, 0x0, 48, 4); 1818 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffffffffff, 48, 4); 1819 TESTINST("dinsu", 0xffffffffffffffff, 0x98765432, 48, 4); 1820 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffff865421, 48, 4); 1821 TESTINST("dinsu", 0x98765432, 0x0, 48, 4); 1822 TESTINST("dinsu", 0x98765432, 0xffffffffffffffff, 48, 4); 1823 TESTINST("dinsu", 0x98765432, 0x98765432, 48, 4); 1824 TESTINST("dinsu", 0x98765432, 0xffffffffff865421, 48, 4); 1825 TESTINST("dinsu", 0xffffffffff865421, 0x0, 48, 4); 1826 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffffffffff, 48, 4); 1827 TESTINST("dinsu", 0xffffffffff865421, 0x98765432, 48, 4); 1828 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffff865421, 48, 4); 1829 TESTINST("dinsu", 0x0, 0x0, 48, 16); 1830 TESTINST("dinsu", 0x0, 0xffffffffffffffff, 48, 16); 1831 TESTINST("dinsu", 0x0, 0x98765432, 48, 16); 1832 TESTINST("dinsu", 0x0, 0xffffffffff865421, 48, 16); 1833 TESTINST("dinsu", 0xffffffffffffffff, 0x0, 48, 16); 1834 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffffffffff, 48, 16); 1835 TESTINST("dinsu", 0xffffffffffffffff, 0x98765432, 48, 16); 1836 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffff865421, 48, 16); 1837 TESTINST("dinsu", 0x98765432, 0x0, 48, 16); 1838 TESTINST("dinsu", 0x98765432, 0xffffffffffffffff, 48, 16); 1839 TESTINST("dinsu", 0x98765432, 0x98765432, 48, 16); 1840 TESTINST("dinsu", 0x98765432, 0xffffffffff865421, 48, 16); 1841 TESTINST("dinsu", 0xffffffffff865421, 0x0, 48, 16); 1842 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffffffffff, 48, 16); 1843 TESTINST("dinsu", 0xffffffffff865421, 0x98765432, 48, 16); 1844 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffff865421, 48, 16); 1845 1846 TESTINST("dinsu", 0x0, 0x0, 63, 1); 1847 TESTINST("dinsu", 0x0, 0xffffffffffffffff, 63, 1); 1848 TESTINST("dinsu", 0x0, 0x98765432, 63, 1); 1849 TESTINST("dinsu", 0x0, 0xffffffffff865421, 63, 1); 1850 TESTINST("dinsu", 0xffffffffffffffff, 0x0, 63, 1); 1851 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffffffffff, 63, 1); 1852 TESTINST("dinsu", 0xffffffffffffffff, 0x98765432, 63, 1); 1853 TESTINST("dinsu", 0xffffffffffffffff, 0xffffffffff865421, 63, 1); 1854 TESTINST("dinsu", 0x98765432, 0x0, 63, 1); 1855 TESTINST("dinsu", 0x98765432, 0xffffffffffffffff, 63, 1); 1856 TESTINST("dinsu", 0x98765432, 0x98765432, 63, 1); 1857 TESTINST("dinsu", 0x98765432, 0xffffffffff865421, 63, 1); 1858 TESTINST("dinsu", 0xffffffffff865421, 0x0, 63, 1); 1859 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffffffffff, 63, 1); 1860 TESTINST("dinsu", 0xffffffffff865421, 0x98765432, 63, 1); 1861 TESTINST("dinsu", 0xffffffffff865421, 0xffffffffff865421, 63, 1); 1862 1863 TESTINST("dinsu", 0x2002ffffffffffff, 0xfffffffff0000fff, 33, 4); 1864 TESTINST("dinsu", 0xffff0000ffffffff, 0xff0000ffffffffff, 60, 4); 1865 TESTINST("dinsu", 0x2000ffffffffffff, 0xffff0000ffffffff, 54, 4); 1866 TESTINST("dinsu", 0x2000ffffffddddff, 0xffffffffffff0008, 56, 2); 1867 TESTINST("dinsu", 0x2000ffffffffeeee, 0xfffffff31415927f, 40, 4); 1868 TESTINST("dinsu", 0x31415927ffffffff, 0x2000ffffffffffff, 51, 2); 1869 TESTINST("dinsu", 0x2000ffffffffaaaa, 0x2000ffffffff2222, 48, 4); 1870 TESTINST("dinsu", 0x2000ffffffbbbbff, 0x7fffffffddddffff, 38, 4); 1871 TESTINST("dinsu", 0xeeeeff33ff22ffff, 0x2000ffffffffffff, 35, 4); 1872 TESTINST("dinsu", 0x2000ffffffffffff, 0x2000ffffffffbbbb, 36, 4); 1873 TESTINST("dinsu", 0x2000ffffffffbbbb, 0x2000ffffffffffff, 45, 1); 1874 TESTINST("dinsu", 0x2000ffffffffffff, 0xeeeeff33ff22ffff, 46, 4); 1875 TESTINST("dinsu", 0x7fffffffddddffff, 0x2000ffffffbbbbff, 52, 4); 1876 TESTINST("dinsu", 0x2000ffffffff2222, 0x2000ffffffffaaaa, 40, 8); 1877 TESTINST("dinsu", 0x2000ffffffffffff, 0x31415927ffffffff, 39, 4); 1878 TESTINST("dinsu", 0xfffffff31415927f, 0x31415927ffffffff, 60, 4); 1879 TESTINST("dinsu", 0xffffffffffff0008, 0x2000ffffffddddff, 63, 1); 1880 TESTINST("dinsu", 0xffff0000ffffffff, 0x2000ffffffffffff, 50, 4); 1881 TESTINST("dinsu", 0xff0000ffffffffff, 0, 36, 4); 1882 TESTINST("dinsu", 0xfffffffff0000fff, 0, 46, 4); 1883 #else 1884 printf("This test is testing mips64r2 instructions.\n"); 1885 #endif 1886 1887 return 0; 1888 } 1889