1# frv testcase for mcut $ACC40i,$FRj,$FRk 2# mach: all 3 4 .include "testutils.inc" 5 6 start 7 8 .global mcut 9mcut: 10 set_accg_immed 0xffffffe7,accg0 11 set_acc_immed 0x89abcdef,acc0 12 13 set_fr_iimmed 0,0,fr10 14 mcut acc0,fr10,fr11 15 test_fr_iimmed 0xe789abcd,fr11 16 17 set_fr_iimmed 0,1,fr10 18 mcut acc0,fr10,fr11 19 test_fr_iimmed 0xcf13579b,fr11 20 21 set_fr_iimmed 0,2,fr10 22 mcut acc0,fr10,fr11 23 test_fr_iimmed 0x9e26af37,fr11 24 25 set_fr_iimmed 0,3,fr10 26 mcut acc0,fr10,fr11 27 test_fr_iimmed 0x3c4d5e6f,fr11 28 29 set_fr_iimmed 0,4,fr10 30 mcut acc0,fr10,fr11 31 test_fr_iimmed 0x789abcde,fr11 32 33 set_fr_iimmed 0,5,fr10 34 mcut acc0,fr10,fr11 35 test_fr_iimmed 0xf13579bd,fr11 36 37 set_fr_iimmed 0,6,fr10 38 mcut acc0,fr10,fr11 39 test_fr_iimmed 0xe26af37b,fr11 40 41 set_fr_iimmed 0,7,fr10 42 mcut acc0,fr10,fr11 43 test_fr_iimmed 0xc4d5e6f7,fr11 44 45 set_fr_iimmed 0,8,fr10 46 mcut acc0,fr10,fr11 47 test_fr_iimmed 0x89abcdef,fr11 48 49 set_fr_iimmed 0,9,fr10 50 mcut acc0,fr10,fr11 51 test_fr_iimmed 0x13579bde,fr11 52 53 set_fr_iimmed 0,10,fr10 54 mcut acc0,fr10,fr11 55 test_fr_iimmed 0x26af37bc,fr11 56 57 set_fr_iimmed 0,11,fr10 58 mcut acc0,fr10,fr11 59 test_fr_iimmed 0x4d5e6f78,fr11 60 61 set_fr_iimmed 0,12,fr10 62 mcut acc0,fr10,fr11 63 test_fr_iimmed 0x9abcdef0,fr11 64 65 set_fr_iimmed 0,13,fr10 66 mcut acc0,fr10,fr11 67 test_fr_iimmed 0x3579bde0,fr11 68 69 set_fr_iimmed 0,14,fr10 70 mcut acc0,fr10,fr11 71 test_fr_iimmed 0x6af37bc0,fr11 72 73 set_fr_iimmed 0,15,fr10 74 mcut acc0,fr10,fr11 75 test_fr_iimmed 0xd5e6f780,fr11 76 77 set_fr_iimmed 0,16,fr10 78 mcut acc0,fr10,fr11 79 test_fr_iimmed 0xabcdef00,fr11 80 81 set_fr_iimmed 0,17,fr10 82 mcut acc0,fr10,fr11 83 test_fr_iimmed 0x579bde00,fr11 84 85 set_fr_iimmed 0,18,fr10 86 mcut acc0,fr10,fr11 87 test_fr_iimmed 0xaf37bc00,fr11 88 89 set_fr_iimmed 0,19,fr10 90 mcut acc0,fr10,fr11 91 test_fr_iimmed 0x5e6f7800,fr11 92 93 set_fr_iimmed 0,20,fr10 94 mcut acc0,fr10,fr11 95 test_fr_iimmed 0xbcdef000,fr11 96 97 set_fr_iimmed 0,21,fr10 98 mcut acc0,fr10,fr11 99 test_fr_iimmed 0x79bde000,fr11 100 101 set_fr_iimmed 0,22,fr10 102 mcut acc0,fr10,fr11 103 test_fr_iimmed 0xf37bc000,fr11 104 105 set_fr_iimmed 0,23,fr10 106 mcut acc0,fr10,fr11 107 test_fr_iimmed 0xe6f78000,fr11 108 109 set_fr_iimmed 0,24,fr10 110 mcut acc0,fr10,fr11 111 test_fr_iimmed 0xcdef0000,fr11 112 113 set_fr_iimmed 0,25,fr10 114 mcut acc0,fr10,fr11 115 test_fr_iimmed 0x9bde0000,fr11 116 117 set_fr_iimmed 0,26,fr10 118 mcut acc0,fr10,fr11 119 test_fr_iimmed 0x37bc0000,fr11 120 121 set_fr_iimmed 0,27,fr10 122 mcut acc0,fr10,fr11 123 test_fr_iimmed 0x6f780000,fr11 124 125 set_fr_iimmed 0,28,fr10 126 mcut acc0,fr10,fr11 127 test_fr_iimmed 0xdef00000,fr11 128 129 set_fr_iimmed 0,29,fr10 130 mcut acc0,fr10,fr11 131 test_fr_iimmed 0xbde00000,fr11 132 133 set_fr_iimmed 0,30,fr10 134 mcut acc0,fr10,fr11 135 test_fr_iimmed 0x7bc00000,fr11 136 137 set_fr_iimmed 0,31,fr10 138 mcut acc0,fr10,fr11 139 test_fr_iimmed 0xf7800000,fr11 140 141 set_fr_iimmed 0,31,fr10 142 mcut acc0,fr10,fr11 143 test_fr_iimmed 0xf7800000,fr11 144 145 set_fr_iimmed 0,64,fr10 ; same as 0 146 mcut acc0,fr10,fr11 147 test_fr_iimmed 0xe789abcd,fr11 148 149 set_fr_iimmed 0xffff,0xffff,fr10 150 mcut acc0,fr10,fr11 151 test_fr_iimmed 0xf3c4d5e6,fr11 152 153 set_fr_iimmed 0x0000,0x003e,fr10 ; only lower 6 bits matter 154 mcut acc0,fr10,fr11 155 test_fr_iimmed 0xf9e26af3,fr11 156 157 set_fr_iimmed 0xffff,0xfffd,fr10 158 mcut acc0,fr10,fr11 159 test_fr_iimmed 0xfcf13579,fr11 160 161 set_fr_iimmed 0xffff,0xfffc,fr10 162 mcut acc0,fr10,fr11 163 test_fr_iimmed 0xfe789abc,fr11 164 165 set_fr_iimmed 0xffff,0xfffb,fr10 166 mcut acc0,fr10,fr11 167 test_fr_iimmed 0xff3c4d5e,fr11 168 169 set_fr_iimmed 0xffff,0xfffa,fr10 170 mcut acc0,fr10,fr11 171 test_fr_iimmed 0xff9e26af,fr11 172 173 set_fr_iimmed 0xffff,0xfff9,fr10 174 mcut acc0,fr10,fr11 175 test_fr_iimmed 0xffcf1357,fr11 176 177 set_fr_iimmed 0xffff,0xfff8,fr10 178 mcut acc0,fr10,fr11 179 test_fr_iimmed 0xffe789ab,fr11 180 181 set_fr_iimmed 0xffff,0xfff7,fr10 182 mcut acc0,fr10,fr11 183 test_fr_iimmed 0xfff3c4d5,fr11 184 185 set_fr_iimmed 0xffff,0xfff6,fr10 186 mcut acc0,fr10,fr11 187 test_fr_iimmed 0xfff9e26a,fr11 188 189 set_fr_iimmed 0xffff,0xfff5,fr10 190 mcut acc0,fr10,fr11 191 test_fr_iimmed 0xfffcf135,fr11 192 193 set_fr_iimmed 0xffff,0xfff4,fr10 194 mcut acc0,fr10,fr11 195 test_fr_iimmed 0xfffe789a,fr11 196 197 set_fr_iimmed 0xffff,0xfff3,fr10 198 mcut acc0,fr10,fr11 199 test_fr_iimmed 0xffff3c4d,fr11 200 201 set_fr_iimmed 0xffff,0xfff2,fr10 202 mcut acc0,fr10,fr11 203 test_fr_iimmed 0xffff9e26,fr11 204 205 set_fr_iimmed 0xffff,0xfff1,fr10 206 mcut acc0,fr10,fr11 207 test_fr_iimmed 0xffffcf13,fr11 208 209 set_fr_iimmed 0xffff,0xfff0,fr10 210 mcut acc0,fr10,fr11 211 test_fr_iimmed 0xffffe789,fr11 212 213 set_fr_iimmed 0xffff,0xffef,fr10 214 mcut acc0,fr10,fr11 215 test_fr_iimmed 0xfffff3c4,fr11 216 217 set_fr_iimmed 0xffff,0xffee,fr10 218 mcut acc0,fr10,fr11 219 test_fr_iimmed 0xfffff9e2,fr11 220 221 set_fr_iimmed 0xffff,0xffed,fr10 222 mcut acc0,fr10,fr11 223 test_fr_iimmed 0xfffffcf1,fr11 224 225 set_fr_iimmed 0xffff,0xffec,fr10 226 mcut acc0,fr10,fr11 227 test_fr_iimmed 0xfffffe78,fr11 228 229 set_fr_iimmed 0xffff,0xffeb,fr10 230 mcut acc0,fr10,fr11 231 test_fr_iimmed 0xffffff3c,fr11 232 233 set_fr_iimmed 0xffff,0xffea,fr10 234 mcut acc0,fr10,fr11 235 test_fr_iimmed 0xffffff9e,fr11 236 237 set_fr_iimmed 0xffff,0xffe9,fr10 238 mcut acc0,fr10,fr11 239 test_fr_iimmed 0xffffffcf,fr11 240 241 set_fr_iimmed 0xffff,0xffe8,fr10 242 mcut acc0,fr10,fr11 243 test_fr_iimmed 0xffffffe7,fr11 244 245 set_fr_iimmed 0xffff,0xffe7,fr10 246 mcut acc0,fr10,fr11 247 test_fr_iimmed 0xfffffff3,fr11 248 249 set_fr_iimmed 0xffff,0xffe6,fr10 250 mcut acc0,fr10,fr11 251 test_fr_iimmed 0xfffffff9,fr11 252 253 set_fr_iimmed 0xffff,0xffe5,fr10 254 mcut acc0,fr10,fr11 255 test_fr_iimmed 0xfffffffc,fr11 256 257 set_fr_iimmed 0xffff,0xffe4,fr10 258 mcut acc0,fr10,fr11 259 test_fr_iimmed 0xfffffffe,fr11 260 261 set_fr_iimmed 0xffff,0xffe3,fr10 262 mcut acc0,fr10,fr11 263 test_fr_iimmed 0xffffffff,fr11 264 265 set_fr_iimmed 0xffff,0xffe2,fr10 266 mcut acc0,fr10,fr11 267 test_fr_iimmed 0xffffffff,fr11 268 269 set_fr_iimmed 0xffff,0xffe1,fr10 270 mcut acc0,fr10,fr11 271 test_fr_iimmed 0xffffffff,fr11 272 273 set_fr_iimmed 0xffff,0xffe0,fr10 274 mcut acc0,fr10,fr11 275 test_fr_iimmed 0xffffffff,fr11 276 277 set_fr_iimmed 0,32,fr10 ; same as -32 278 mcut acc0,fr10,fr11 279 test_fr_iimmed 0xffffffff,fr11 280 281 set_accg_immed 0xffffff67,accg0 282 set_acc_immed 0x89abcdef,acc0 283 284 set_fr_iimmed 0xffff,0xffff,fr10 285 mcut acc0,fr10,fr11 286 test_fr_iimmed 0x33c4d5e6,fr11 287 288 set_fr_iimmed 0x0000,0x003e,fr10 ; only lower 6 bits matter 289 mcut acc0,fr10,fr11 290 test_fr_iimmed 0x19e26af3,fr11 291 292 set_fr_iimmed 0xffff,0xfffd,fr10 293 mcut acc0,fr10,fr11 294 test_fr_iimmed 0x0cf13579,fr11 295 296 set_fr_iimmed 0xffff,0xfffc,fr10 297 mcut acc0,fr10,fr11 298 test_fr_iimmed 0x06789abc,fr11 299 300 set_fr_iimmed 0xffff,0xfffb,fr10 301 mcut acc0,fr10,fr11 302 test_fr_iimmed 0x033c4d5e,fr11 303 304 set_fr_iimmed 0xffff,0xfffa,fr10 305 mcut acc0,fr10,fr11 306 test_fr_iimmed 0x019e26af,fr11 307 308 set_fr_iimmed 0xffff,0xfff9,fr10 309 mcut acc0,fr10,fr11 310 test_fr_iimmed 0x00cf1357,fr11 311 312 set_fr_iimmed 0xffff,0xfff8,fr10 313 mcut acc0,fr10,fr11 314 test_fr_iimmed 0x006789ab,fr11 315 316 set_fr_iimmed 0xffff,0xfff7,fr10 317 mcut acc0,fr10,fr11 318 test_fr_iimmed 0x0033c4d5,fr11 319 320 set_fr_iimmed 0xffff,0xfff6,fr10 321 mcut acc0,fr10,fr11 322 test_fr_iimmed 0x0019e26a,fr11 323 324 set_fr_iimmed 0xffff,0xfff5,fr10 325 mcut acc0,fr10,fr11 326 test_fr_iimmed 0x000cf135,fr11 327 328 set_fr_iimmed 0xffff,0xfff4,fr10 329 mcut acc0,fr10,fr11 330 test_fr_iimmed 0x0006789a,fr11 331 332 set_fr_iimmed 0xffff,0xfff3,fr10 333 mcut acc0,fr10,fr11 334 test_fr_iimmed 0x00033c4d,fr11 335 336 set_fr_iimmed 0xffff,0xfff2,fr10 337 mcut acc0,fr10,fr11 338 test_fr_iimmed 0x00019e26,fr11 339 340 set_fr_iimmed 0xffff,0xfff1,fr10 341 mcut acc0,fr10,fr11 342 test_fr_iimmed 0x0000cf13,fr11 343 344 set_fr_iimmed 0xffff,0xfff0,fr10 345 mcut acc0,fr10,fr11 346 test_fr_iimmed 0x00006789,fr11 347 348 set_fr_iimmed 0xffff,0xffef,fr10 349 mcut acc0,fr10,fr11 350 test_fr_iimmed 0x000033c4,fr11 351 352 set_fr_iimmed 0xffff,0xffee,fr10 353 mcut acc0,fr10,fr11 354 test_fr_iimmed 0x000019e2,fr11 355 356 set_fr_iimmed 0xffff,0xffed,fr10 357 mcut acc0,fr10,fr11 358 test_fr_iimmed 0x00000cf1,fr11 359 360 set_fr_iimmed 0xffff,0xffec,fr10 361 mcut acc0,fr10,fr11 362 test_fr_iimmed 0x00000678,fr11 363 364 set_fr_iimmed 0xffff,0xffeb,fr10 365 mcut acc0,fr10,fr11 366 test_fr_iimmed 0x0000033c,fr11 367 368 set_fr_iimmed 0xffff,0xffea,fr10 369 mcut acc0,fr10,fr11 370 test_fr_iimmed 0x0000019e,fr11 371 372 set_fr_iimmed 0xffff,0xffe9,fr10 373 mcut acc0,fr10,fr11 374 test_fr_iimmed 0x000000cf,fr11 375 376 set_fr_iimmed 0xffff,0xffe8,fr10 377 mcut acc0,fr10,fr11 378 test_fr_iimmed 0x00000067,fr11 379 380 set_fr_iimmed 0xffff,0xffe7,fr10 381 mcut acc0,fr10,fr11 382 test_fr_iimmed 0x00000033,fr11 383 384 set_fr_iimmed 0xffff,0xffe6,fr10 385 mcut acc0,fr10,fr11 386 test_fr_iimmed 0x00000019,fr11 387 388 set_fr_iimmed 0xffff,0xffe5,fr10 389 mcut acc0,fr10,fr11 390 test_fr_iimmed 0x0000000c,fr11 391 392 set_fr_iimmed 0xffff,0xffe4,fr10 393 mcut acc0,fr10,fr11 394 test_fr_iimmed 0x00000006,fr11 395 396 set_fr_iimmed 0xffff,0xffe3,fr10 397 mcut acc0,fr10,fr11 398 test_fr_iimmed 0x00000003,fr11 399 400 set_fr_iimmed 0xffff,0xffe2,fr10 401 mcut acc0,fr10,fr11 402 test_fr_iimmed 0x00000001,fr11 403 404 set_fr_iimmed 0xffff,0xffe1,fr10 405 mcut acc0,fr10,fr11 406 test_fr_iimmed 0x00000000,fr11 407 408 set_fr_iimmed 0xffff,0xffe0,fr10 409 mcut acc0,fr10,fr11 410 test_fr_iimmed 0x00000000,fr11 411 412 set_fr_iimmed 0,32,fr10 ; same as -32 413 mcut acc0,fr10,fr11 414 test_fr_iimmed 0x00000000,fr11 415 416 ; Examples from the customer 417 set_accg_immed 0xffffffff,accg0 418 set_acc_immed 0xffe00000,acc0 419 420 set_fr_iimmed 0,16,fr10 421 mcut acc0,fr10,fr11 422 test_fr_iimmed 0xe0000000,fr11 423 424 set_fr_iimmed 0,17,fr10 425 mcut acc0,fr10,fr11 426 test_fr_iimmed 0xc0000000,fr11 427 428 set_fr_iimmed 0,18,fr10 429 mcut acc0,fr10,fr11 430 test_fr_iimmed 0x80000000,fr11 431 432 set_accg_immed 0,accg0 433 set_acc_immed 0x003fffff,acc0 434 435 set_fr_iimmed 0,16,fr10 436 mcut acc0,fr10,fr11 437 test_fr_iimmed 0x3fffff00,fr11 438 439 set_fr_iimmed 0,17,fr10 440 mcut acc0,fr10,fr11 441 test_fr_iimmed 0x7ffffe00,fr11 442 443 set_accg_immed 0x7f,accg0 444 set_acc_immed 0xffe00000,acc0 445 446 set_fr_iimmed 0,16,fr10 447 mcut acc0,fr10,fr11 448 test_fr_iimmed 0xe0000000,fr11 449 450 set_fr_iimmed 0,17,fr10 451 mcut acc0,fr10,fr11 452 test_fr_iimmed 0xc0000000,fr11 453 454 set_fr_iimmed 0,18,fr10 455 mcut acc0,fr10,fr11 456 test_fr_iimmed 0x80000000,fr11 457 458 set_accg_immed 0x08,accg0 459 set_acc_immed 0x003fffff,acc0 460 461 set_fr_iimmed 0,16,fr10 462 mcut acc0,fr10,fr11 463 test_fr_iimmed 0x3fffff00,fr11 464 465 set_fr_iimmed 0,17,fr10 466 mcut acc0,fr10,fr11 467 test_fr_iimmed 0x7ffffe00,fr11 468 469 set_accg_immed 0xff,accg0 470 set_acc_immed 0xefe00000,acc0 471 472 set_fr_iimmed 0,16,fr10 473 mcut acc0,fr10,fr11 474 test_fr_iimmed 0xe0000000,fr11 475 476 set_fr_iimmed 0,17,fr10 477 mcut acc0,fr10,fr11 478 test_fr_iimmed 0xc0000000,fr11 479 480 set_fr_iimmed 0,18,fr10 481 mcut acc0,fr10,fr11 482 test_fr_iimmed 0x80000000,fr11 483 484 set_accg_immed 0x80,accg0 485 set_acc_immed 0x003fffff,acc0 486 487 set_fr_iimmed 0,16,fr10 488 mcut acc0,fr10,fr11 489 test_fr_iimmed 0x3fffff00,fr11 490 491 set_fr_iimmed 0,17,fr10 492 mcut acc0,fr10,fr11 493 test_fr_iimmed 0x7ffffe00,fr11 494 495 set_accg_immed 0xffffffaf,accg0 496 set_acc_immed 0x5a5a5a5a,acc0 497 498 set_fr_iimmed 0xffff,0xfffc,fr10 499 mcut acc0,fr10,fr11 500 test_fr_iimmed 0xfaf5a5a5,fr11 501 502 set_accg_immed 0x0000002f,accg0 503 set_acc_immed 0x5a5a5a5a,acc0 504 505 set_fr_iimmed 0xffff,0xfff9,fr10 506 mcut acc0,fr10,fr11 507 test_fr_iimmed 0x005eb4b4,fr11 508 509 pass 510