13 #ifdef GET_REGINFO_ENUM
14 #undef GET_REGINFO_ENUM
332 PPC_GPRCRegClassID = 0,
333 PPC_GPRC_NOR0RegClassID = 1,
334 PPC_GPRC_and_GPRC_NOR0RegClassID = 2,
335 PPC_CRBITRCRegClassID = 3,
336 PPC_F4RCRegClassID = 4,
337 PPC_CRRCRegClassID = 5,
338 PPC_CARRYRCRegClassID = 6,
339 PPC_CTRRCRegClassID = 7,
340 PPC_VRSAVERCRegClassID = 8,
341 PPC_VSFRCRegClassID = 9,
342 PPC_G8RCRegClassID = 10,
343 PPC_G8RC_NOX0RegClassID = 11,
344 PPC_G8RC_and_G8RC_NOX0RegClassID = 12,
345 PPC_F8RCRegClassID = 13,
346 PPC_VFRCRegClassID = 14,
347 PPC_CTRRC8RegClassID = 15,
348 PPC_VSRCRegClassID = 16,
349 PPC_QSRCRegClassID = 17,
350 PPC_VRRCRegClassID = 18,
351 PPC_VSHRCRegClassID = 19,
352 PPC_VSLRCRegClassID = 20,
353 PPC_QBRCRegClassID = 21,
354 PPC_QFRCRegClassID = 22,
368 #ifdef GET_REGINFO_MC_DESC
369 #undef GET_REGINFO_MC_DESC
371 static const MCPhysReg PPCRegDiffLists[] = {
377 284, 65528, 65528, 24, 0,
408 static const uint16_t PPCSubRegIdxLists[] = {
415 { 4, 0, 0, 0, 0, 0 },
416 { 1109, 1, 9, 1, 1201, 0 },
417 { 1266, 1, 1, 1, 1201, 0 },
418 { 1166, 1, 1, 1, 1201, 0 },
419 { 1112, 1, 21, 1, 1201, 0 },
420 { 1163, 1, 1, 1, 1201, 0 },
421 { 1053, 1, 1, 1, 1201, 0 },
422 { 1046, 1, 1, 1, 1201, 0 },
423 { 1104, 1, 31, 1, 1201, 0 },
424 { 928, 73, 1, 0, 0, 2 },
425 { 120, 13, 1, 5, 36, 6 },
426 { 250, 13, 1, 5, 36, 6 },
427 { 346, 13, 1, 5, 36, 6 },
428 { 442, 13, 1, 5, 36, 6 },
429 { 538, 13, 1, 5, 36, 6 },
430 { 634, 13, 1, 5, 36, 6 },
431 { 730, 13, 1, 5, 36, 6 },
432 { 826, 13, 1, 5, 36, 6 },
433 { 940, 1, 1, 1, 177, 0 },
434 { 103, 1, 28, 1, 177, 0 },
435 { 233, 1, 28, 1, 177, 0 },
436 { 329, 1, 28, 1, 177, 0 },
437 { 425, 1, 28, 1, 177, 0 },
438 { 521, 1, 28, 1, 177, 0 },
439 { 617, 1, 28, 1, 177, 0 },
440 { 713, 1, 28, 1, 177, 0 },
441 { 809, 1, 28, 1, 177, 0 },
442 { 905, 1, 28, 1, 177, 0 },
443 { 1020, 1, 28, 1, 177, 0 },
444 { 1, 1, 28, 1, 177, 0 },
445 { 131, 1, 28, 1, 177, 0 },
446 { 261, 1, 28, 1, 177, 0 },
447 { 357, 1, 28, 1, 177, 0 },
448 { 453, 1, 28, 1, 177, 0 },
449 { 549, 1, 28, 1, 177, 0 },
450 { 645, 1, 28, 1, 177, 0 },
451 { 741, 1, 28, 1, 177, 0 },
452 { 837, 1, 28, 1, 177, 0 },
453 { 952, 1, 28, 1, 177, 0 },
454 { 35, 1, 28, 1, 177, 0 },
455 { 165, 1, 28, 1, 177, 0 },
456 { 295, 1, 28, 1, 177, 0 },
457 { 391, 1, 28, 1, 177, 0 },
458 { 487, 1, 28, 1, 177, 0 },
459 { 583, 1, 28, 1, 177, 0 },
460 { 679, 1, 28, 1, 177, 0 },
461 { 775, 1, 28, 1, 177, 0 },
462 { 871, 1, 28, 1, 177, 0 },
463 { 986, 1, 28, 1, 177, 0 },
464 { 69, 1, 28, 1, 177, 0 },
465 { 199, 1, 28, 1, 177, 0 },
466 { 932, 63, 1, 0, 112, 2 },
467 { 936, 1, 1, 1, 416, 0 },
468 { 102, 67, 1, 3, 1105, 4 },
469 { 232, 67, 1, 3, 1105, 4 },
470 { 328, 67, 1, 3, 1105, 4 },
471 { 424, 67, 1, 3, 1105, 4 },
472 { 520, 67, 1, 3, 1105, 4 },
473 { 616, 67, 1, 3, 1105, 4 },
474 { 712, 67, 1, 3, 1105, 4 },
475 { 808, 67, 1, 3, 1105, 4 },
476 { 904, 67, 1, 3, 1105, 4 },
477 { 1019, 67, 1, 3, 1105, 4 },
478 { 0, 67, 1, 3, 1105, 4 },
479 { 130, 67, 1, 3, 1105, 4 },
480 { 260, 67, 1, 3, 1105, 4 },
481 { 356, 67, 1, 3, 1105, 4 },
482 { 452, 67, 1, 3, 1105, 4 },
483 { 548, 67, 1, 3, 1105, 4 },
484 { 644, 67, 1, 3, 1105, 4 },
485 { 740, 67, 1, 3, 1105, 4 },
486 { 836, 67, 1, 3, 1105, 4 },
487 { 951, 67, 1, 3, 1105, 4 },
488 { 34, 67, 1, 3, 1105, 4 },
489 { 164, 67, 1, 3, 1105, 4 },
490 { 294, 67, 1, 3, 1105, 4 },
491 { 390, 67, 1, 3, 1105, 4 },
492 { 486, 67, 1, 3, 1105, 4 },
493 { 582, 67, 1, 3, 1105, 4 },
494 { 678, 67, 1, 3, 1105, 4 },
495 { 774, 67, 1, 3, 1105, 4 },
496 { 870, 67, 1, 3, 1105, 4 },
497 { 985, 67, 1, 3, 1105, 4 },
498 { 68, 67, 1, 3, 1105, 4 },
499 { 198, 67, 1, 3, 1105, 4 },
500 { 121, 1, 29, 1, 1137, 0 },
501 { 251, 1, 29, 1, 1137, 0 },
502 { 347, 1, 29, 1, 1137, 0 },
503 { 443, 1, 29, 1, 1137, 0 },
504 { 539, 1, 29, 1, 1137, 0 },
505 { 635, 1, 29, 1, 1137, 0 },
506 { 731, 1, 29, 1, 1137, 0 },
507 { 827, 1, 29, 1, 1137, 0 },
508 { 937, 1, 29, 1, 1137, 0 },
509 { 1037, 1, 29, 1, 1137, 0 },
510 { 22, 1, 29, 1, 1137, 0 },
511 { 152, 1, 29, 1, 1137, 0 },
512 { 282, 1, 29, 1, 1137, 0 },
513 { 378, 1, 29, 1, 1137, 0 },
514 { 474, 1, 29, 1, 1137, 0 },
515 { 570, 1, 29, 1, 1137, 0 },
516 { 666, 1, 29, 1, 1137, 0 },
517 { 762, 1, 29, 1, 1137, 0 },
518 { 858, 1, 29, 1, 1137, 0 },
519 { 973, 1, 29, 1, 1137, 0 },
520 { 56, 1, 29, 1, 1137, 0 },
521 { 186, 1, 29, 1, 1137, 0 },
522 { 316, 1, 29, 1, 1137, 0 },
523 { 412, 1, 29, 1, 1137, 0 },
524 { 508, 1, 29, 1, 1137, 0 },
525 { 604, 1, 29, 1, 1137, 0 },
526 { 700, 1, 29, 1, 1137, 0 },
527 { 796, 1, 29, 1, 1137, 0 },
528 { 892, 1, 29, 1, 1137, 0 },
529 { 1007, 1, 29, 1, 1137, 0 },
530 { 90, 1, 29, 1, 1137, 0 },
531 { 220, 1, 29, 1, 1137, 0 },
532 { 124, 19, 24, 3, 1137, 4 },
533 { 254, 19, 24, 3, 1137, 4 },
534 { 350, 19, 24, 3, 1137, 4 },
535 { 446, 19, 24, 3, 1137, 4 },
536 { 542, 19, 24, 3, 1137, 4 },
537 { 638, 19, 24, 3, 1137, 4 },
538 { 734, 19, 24, 3, 1137, 4 },
539 { 830, 19, 24, 3, 1137, 4 },
540 { 945, 19, 24, 3, 1137, 4 },
541 { 1040, 19, 24, 3, 1137, 4 },
542 { 26, 19, 24, 3, 1137, 4 },
543 { 156, 19, 24, 3, 1137, 4 },
544 { 286, 19, 24, 3, 1137, 4 },
545 { 382, 19, 24, 3, 1137, 4 },
546 { 478, 19, 24, 3, 1137, 4 },
547 { 574, 19, 24, 3, 1137, 4 },
548 { 670, 19, 24, 3, 1137, 4 },
549 { 766, 19, 24, 3, 1137, 4 },
550 { 862, 19, 24, 3, 1137, 4 },
551 { 977, 19, 24, 3, 1137, 4 },
552 { 60, 19, 24, 3, 1137, 4 },
553 { 190, 19, 24, 3, 1137, 4 },
554 { 320, 19, 24, 3, 1137, 4 },
555 { 416, 19, 24, 3, 1137, 4 },
556 { 512, 19, 24, 3, 1137, 4 },
557 { 608, 19, 24, 3, 1137, 4 },
558 { 704, 19, 24, 3, 1137, 4 },
559 { 800, 19, 24, 3, 1137, 4 },
560 { 896, 19, 24, 3, 1137, 4 },
561 { 1011, 19, 24, 3, 1137, 4 },
562 { 94, 19, 24, 3, 1137, 4 },
563 { 224, 19, 24, 3, 1137, 4 },
564 { 106, 1, 23, 1, 1041, 0 },
565 { 236, 1, 23, 1, 1041, 0 },
566 { 332, 1, 23, 1, 1041, 0 },
567 { 428, 1, 23, 1, 1041, 0 },
568 { 524, 1, 23, 1, 1041, 0 },
569 { 620, 1, 23, 1, 1041, 0 },
570 { 716, 1, 23, 1, 1041, 0 },
571 { 812, 1, 23, 1, 1041, 0 },
572 { 908, 1, 23, 1, 1041, 0 },
573 { 1023, 1, 23, 1, 1041, 0 },
574 { 5, 1, 23, 1, 1041, 0 },
575 { 135, 1, 23, 1, 1041, 0 },
576 { 265, 1, 23, 1, 1041, 0 },
577 { 361, 1, 23, 1, 1041, 0 },
578 { 457, 1, 23, 1, 1041, 0 },
579 { 553, 1, 23, 1, 1041, 0 },
580 { 649, 1, 23, 1, 1041, 0 },
581 { 745, 1, 23, 1, 1041, 0 },
582 { 841, 1, 23, 1, 1041, 0 },
583 { 956, 1, 23, 1, 1041, 0 },
584 { 39, 1, 23, 1, 1041, 0 },
585 { 169, 1, 23, 1, 1041, 0 },
586 { 299, 1, 23, 1, 1041, 0 },
587 { 395, 1, 23, 1, 1041, 0 },
588 { 491, 1, 23, 1, 1041, 0 },
589 { 587, 1, 23, 1, 1041, 0 },
590 { 683, 1, 23, 1, 1041, 0 },
591 { 779, 1, 23, 1, 1041, 0 },
592 { 875, 1, 23, 1, 1041, 0 },
593 { 990, 1, 23, 1, 1041, 0 },
594 { 73, 1, 23, 1, 1041, 0 },
595 { 203, 1, 23, 1, 1041, 0 },
596 { 110, 18, 1, 2, 977, 4 },
597 { 240, 18, 1, 2, 977, 4 },
598 { 336, 18, 1, 2, 977, 4 },
599 { 432, 18, 1, 2, 977, 4 },
600 { 528, 18, 1, 2, 977, 4 },
601 { 624, 18, 1, 2, 977, 4 },
602 { 720, 18, 1, 2, 977, 4 },
603 { 816, 18, 1, 2, 977, 4 },
604 { 912, 18, 1, 2, 977, 4 },
605 { 1027, 18, 1, 2, 977, 4 },
606 { 10, 18, 1, 2, 977, 4 },
607 { 140, 18, 1, 2, 977, 4 },
608 { 270, 18, 1, 2, 977, 4 },
609 { 366, 18, 1, 2, 977, 4 },
610 { 462, 18, 1, 2, 977, 4 },
611 { 558, 18, 1, 2, 977, 4 },
612 { 654, 18, 1, 2, 977, 4 },
613 { 750, 18, 1, 2, 977, 4 },
614 { 846, 18, 1, 2, 977, 4 },
615 { 961, 18, 1, 2, 977, 4 },
616 { 44, 18, 1, 2, 977, 4 },
617 { 174, 18, 1, 2, 977, 4 },
618 { 304, 18, 1, 2, 977, 4 },
619 { 400, 18, 1, 2, 977, 4 },
620 { 496, 18, 1, 2, 977, 4 },
621 { 592, 18, 1, 2, 977, 4 },
622 { 688, 18, 1, 2, 977, 4 },
623 { 784, 18, 1, 2, 977, 4 },
624 { 880, 18, 1, 2, 977, 4 },
625 { 995, 18, 1, 2, 977, 4 },
626 { 78, 18, 1, 2, 977, 4 },
627 { 208, 18, 1, 2, 977, 4 },
628 { 115, 53, 1, 3, 881, 4 },
629 { 245, 53, 1, 3, 881, 4 },
630 { 341, 53, 1, 3, 881, 4 },
631 { 437, 53, 1, 3, 881, 4 },
632 { 533, 53, 1, 3, 881, 4 },
633 { 629, 53, 1, 3, 881, 4 },
634 { 725, 53, 1, 3, 881, 4 },
635 { 821, 53, 1, 3, 881, 4 },
636 { 917, 53, 1, 3, 881, 4 },
637 { 1032, 53, 1, 3, 881, 4 },
638 { 16, 53, 1, 3, 881, 4 },
639 { 146, 53, 1, 3, 881, 4 },
640 { 276, 53, 1, 3, 881, 4 },
641 { 372, 53, 1, 3, 881, 4 },
642 { 468, 53, 1, 3, 881, 4 },
643 { 564, 53, 1, 3, 881, 4 },
644 { 660, 53, 1, 3, 881, 4 },
645 { 756, 53, 1, 3, 881, 4 },
646 { 852, 53, 1, 3, 881, 4 },
647 { 967, 53, 1, 3, 881, 4 },
648 { 50, 53, 1, 3, 881, 4 },
649 { 180, 53, 1, 3, 881, 4 },
650 { 310, 53, 1, 3, 881, 4 },
651 { 406, 53, 1, 3, 881, 4 },
652 { 502, 53, 1, 3, 881, 4 },
653 { 598, 53, 1, 3, 881, 4 },
654 { 694, 53, 1, 3, 881, 4 },
655 { 790, 53, 1, 3, 881, 4 },
656 { 886, 53, 1, 3, 881, 4 },
657 { 1001, 53, 1, 3, 881, 4 },
658 { 84, 53, 1, 3, 881, 4 },
659 { 214, 53, 1, 3, 881, 4 },
660 { 127, 59, 1, 0, 913, 2 },
661 { 257, 59, 1, 0, 913, 2 },
662 { 353, 59, 1, 0, 913, 2 },
663 { 449, 59, 1, 0, 913, 2 },
664 { 545, 59, 1, 0, 913, 2 },
665 { 641, 59, 1, 0, 913, 2 },
666 { 737, 59, 1, 0, 913, 2 },
667 { 833, 59, 1, 0, 913, 2 },
668 { 948, 59, 1, 0, 913, 2 },
669 { 1043, 59, 1, 0, 913, 2 },
670 { 30, 59, 1, 0, 913, 2 },
671 { 160, 59, 1, 0, 913, 2 },
672 { 290, 59, 1, 0, 913, 2 },
673 { 386, 59, 1, 0, 913, 2 },
674 { 482, 59, 1, 0, 913, 2 },
675 { 578, 59, 1, 0, 913, 2 },
676 { 674, 59, 1, 0, 913, 2 },
677 { 770, 59, 1, 0, 913, 2 },
678 { 866, 59, 1, 0, 913, 2 },
679 { 981, 59, 1, 0, 913, 2 },
680 { 64, 59, 1, 0, 913, 2 },
681 { 194, 59, 1, 0, 913, 2 },
682 { 324, 59, 1, 0, 913, 2 },
683 { 420, 59, 1, 0, 913, 2 },
684 { 516, 59, 1, 0, 913, 2 },
685 { 612, 59, 1, 0, 913, 2 },
686 { 708, 59, 1, 0, 913, 2 },
687 { 804, 59, 1, 0, 913, 2 },
688 { 900, 59, 1, 0, 913, 2 },
689 { 1015, 59, 1, 0, 913, 2 },
690 { 98, 59, 1, 0, 913, 2 },
691 { 228, 59, 1, 0, 913, 2 },
692 { 922, 49, 1, 0, 659, 2 },
693 { 1115, 1, 51, 1, 659, 0 },
694 { 1121, 1, 51, 1, 628, 0 },
695 { 1127, 1, 51, 1, 628, 0 },
696 { 1133, 1, 51, 1, 628, 0 },
697 { 1139, 1, 51, 1, 628, 0 },
698 { 1145, 1, 51, 1, 628, 0 },
699 { 1151, 1, 51, 1, 628, 0 },
700 { 1157, 1, 51, 1, 628, 0 },
701 { 1170, 1, 47, 1, 596, 0 },
702 { 1176, 1, 47, 1, 596, 0 },
703 { 1182, 1, 47, 1, 596, 0 },
704 { 1188, 1, 47, 1, 596, 0 },
705 { 1194, 1, 47, 1, 596, 0 },
706 { 1200, 1, 47, 1, 596, 0 },
707 { 1206, 1, 47, 1, 596, 0 },
708 { 1212, 1, 47, 1, 596, 0 },
709 { 1218, 1, 45, 1, 564, 0 },
710 { 1224, 1, 45, 1, 564, 0 },
711 { 1230, 1, 45, 1, 564, 0 },
712 { 1236, 1, 45, 1, 564, 0 },
713 { 1242, 1, 45, 1, 564, 0 },
714 { 1248, 1, 45, 1, 564, 0 },
715 { 1254, 1, 45, 1, 564, 0 },
716 { 1260, 1, 45, 1, 564, 0 },
717 { 1056, 1, 43, 1, 532, 0 },
718 { 1062, 1, 43, 1, 532, 0 },
719 { 1068, 1, 43, 1, 532, 0 },
720 { 1074, 1, 43, 1, 532, 0 },
721 { 1080, 1, 43, 1, 532, 0 },
722 { 1086, 1, 43, 1, 532, 0 },
723 { 1092, 1, 43, 1, 532, 0 },
724 { 1098, 1, 43, 1, 532, 0 },
730 PPC_R2, PPC_R3, PPC_R4, PPC_R5, PPC_R6, PPC_R7, PPC_R8, PPC_R9, PPC_R10, PPC_R11, PPC_R12, PPC_R30, PPC_R29, PPC_R28, PPC_R27, PPC_R26, PPC_R25, PPC_R24, PPC_R23, PPC_R22, PPC_R21, PPC_R20, PPC_R19, PPC_R18, PPC_R17, PPC_R16, PPC_R15, PPC_R14, PPC_R13, PPC_R31, PPC_R0, PPC_R1, PPC_FP, PPC_BP,
735 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0x1f,
740 PPC_R2, PPC_R3, PPC_R4, PPC_R5, PPC_R6, PPC_R7, PPC_R8, PPC_R9, PPC_R10, PPC_R11, PPC_R12, PPC_R30, PPC_R29, PPC_R28, PPC_R27, PPC_R26, PPC_R25, PPC_R24, PPC_R23, PPC_R22, PPC_R21, PPC_R20, PPC_R19, PPC_R18, PPC_R17, PPC_R16, PPC_R15, PPC_R14, PPC_R13, PPC_R31, PPC_R1, PPC_FP, PPC_BP, PPC_ZERO,
744 static uint8_t GPRC_NOR0Bits[] = {
745 0x12, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x1f,
749 static const MCPhysReg GPRC_and_GPRC_NOR0[] = {
750 PPC_R2, PPC_R3, PPC_R4, PPC_R5, PPC_R6, PPC_R7, PPC_R8, PPC_R9, PPC_R10, PPC_R11, PPC_R12, PPC_R30, PPC_R29, PPC_R28, PPC_R27, PPC_R26, PPC_R25, PPC_R24, PPC_R23, PPC_R22, PPC_R21, PPC_R20, PPC_R19, PPC_R18, PPC_R17, PPC_R16, PPC_R15, PPC_R14, PPC_R13, PPC_R31, PPC_R1, PPC_FP, PPC_BP,
754 static uint8_t GPRC_and_GPRC_NOR0Bits[] = {
755 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x1f,
760 PPC_CR2LT, PPC_CR2GT, PPC_CR2EQ, PPC_CR2UN, PPC_CR3LT, PPC_CR3GT, PPC_CR3EQ, PPC_CR3UN, PPC_CR4LT, PPC_CR4GT, PPC_CR4EQ, PPC_CR4UN, PPC_CR5LT, PPC_CR5GT, PPC_CR5EQ, PPC_CR5UN, PPC_CR6LT, PPC_CR6GT, PPC_CR6EQ, PPC_CR6UN, PPC_CR7LT, PPC_CR7GT, PPC_CR7EQ, PPC_CR7UN, PPC_CR1LT, PPC_CR1GT, PPC_CR1EQ, PPC_CR1UN, PPC_CR0LT, PPC_CR0GT, PPC_CR0EQ, PPC_CR0UN,
764 static uint8_t CRBITRCBits[] = {
765 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x3f,
770 PPC_F0, PPC_F1, PPC_F2, PPC_F3, PPC_F4, PPC_F5, PPC_F6, PPC_F7, PPC_F8, PPC_F9, PPC_F10, PPC_F11, PPC_F12, PPC_F13, PPC_F31, PPC_F30, PPC_F29, PPC_F28, PPC_F27, PPC_F26, PPC_F25, PPC_F24, PPC_F23, PPC_F22, PPC_F21, PPC_F20, PPC_F19, PPC_F18, PPC_F17, PPC_F16, PPC_F15, PPC_F14,
775 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07,
780 PPC_CR0, PPC_CR1, PPC_CR5, PPC_CR6, PPC_CR7, PPC_CR2, PPC_CR3, PPC_CR4,
794 static const uint8_t CARRYRCBits[] = {
814 static uint8_t VRSAVERCBits[] = {
820 PPC_F0, PPC_F1, PPC_F2, PPC_F3, PPC_F4, PPC_F5, PPC_F6, PPC_F7, PPC_F8, PPC_F9, PPC_F10, PPC_F11, PPC_F12, PPC_F13, PPC_F31, PPC_F30, PPC_F29, PPC_F28, PPC_F27, PPC_F26, PPC_F25, PPC_F24, PPC_F23, PPC_F22, PPC_F21, PPC_F20, PPC_F19, PPC_F18, PPC_F17, PPC_F16, PPC_F15, PPC_F14, PPC_VF2, PPC_VF3, PPC_VF4, PPC_VF5, PPC_VF0, PPC_VF1, PPC_VF6, PPC_VF7, PPC_VF8, PPC_VF9, PPC_VF10, PPC_VF11, PPC_VF12, PPC_VF13, PPC_VF14, PPC_VF15, PPC_VF16, PPC_VF17, PPC_VF18, PPC_VF19, PPC_VF31, PPC_VF30, PPC_VF29, PPC_VF28, PPC_VF27, PPC_VF26, PPC_VF25, PPC_VF24, PPC_VF23, PPC_VF22, PPC_VF21, PPC_VF20,
825 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0x1f,
830 PPC_X2, PPC_X3, PPC_X4, PPC_X5, PPC_X6, PPC_X7, PPC_X8, PPC_X9, PPC_X10, PPC_X11, PPC_X12, PPC_X30, PPC_X29, PPC_X28, PPC_X27, PPC_X26, PPC_X25, PPC_X24, PPC_X23, PPC_X22, PPC_X21, PPC_X20, PPC_X19, PPC_X18, PPC_X17, PPC_X16, PPC_X15, PPC_X14, PPC_X31, PPC_X13, PPC_X0, PPC_X1, PPC_FP8, PPC_BP8,
835 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0x1f,
840 PPC_X2, PPC_X3, PPC_X4, PPC_X5, PPC_X6, PPC_X7, PPC_X8, PPC_X9, PPC_X10, PPC_X11, PPC_X12, PPC_X30, PPC_X29, PPC_X28, PPC_X27, PPC_X26, PPC_X25, PPC_X24, PPC_X23, PPC_X22, PPC_X21, PPC_X20, PPC_X19, PPC_X18, PPC_X17, PPC_X16, PPC_X15, PPC_X14, PPC_X31, PPC_X13, PPC_X1, PPC_FP8, PPC_BP8, PPC_ZERO8,
844 static uint8_t G8RC_NOX0Bits[] = {
845 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x3f,
849 static const MCPhysReg G8RC_and_G8RC_NOX0[] = {
850 PPC_X2, PPC_X3, PPC_X4, PPC_X5, PPC_X6, PPC_X7, PPC_X8, PPC_X9, PPC_X10, PPC_X11, PPC_X12, PPC_X30, PPC_X29, PPC_X28, PPC_X27, PPC_X26, PPC_X25, PPC_X24, PPC_X23, PPC_X22, PPC_X21, PPC_X20, PPC_X19, PPC_X18, PPC_X17, PPC_X16, PPC_X15, PPC_X14, PPC_X31, PPC_X13, PPC_X1, PPC_FP8, PPC_BP8,
854 static uint8_t G8RC_and_G8RC_NOX0Bits[] = {
855 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x1f,
860 PPC_F0, PPC_F1, PPC_F2, PPC_F3, PPC_F4, PPC_F5, PPC_F6, PPC_F7, PPC_F8, PPC_F9, PPC_F10, PPC_F11, PPC_F12, PPC_F13, PPC_F31, PPC_F30, PPC_F29, PPC_F28, PPC_F27, PPC_F26, PPC_F25, PPC_F24, PPC_F23, PPC_F22, PPC_F21, PPC_F20, PPC_F19, PPC_F18, PPC_F17, PPC_F16, PPC_F15, PPC_F14,
865 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07,
870 PPC_VF2, PPC_VF3, PPC_VF4, PPC_VF5, PPC_VF0, PPC_VF1, PPC_VF6, PPC_VF7, PPC_VF8, PPC_VF9, PPC_VF10, PPC_VF11, PPC_VF12, PPC_VF13, PPC_VF14, PPC_VF15, PPC_VF16, PPC_VF17, PPC_VF18, PPC_VF19, PPC_VF31, PPC_VF30, PPC_VF29, PPC_VF28, PPC_VF27, PPC_VF26, PPC_VF25, PPC_VF24, PPC_VF23, PPC_VF22, PPC_VF21, PPC_VF20,
875 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0x1f,
884 static uint8_t CTRRC8Bits[] = {
890 PPC_VSL0, PPC_VSL1, PPC_VSL2, PPC_VSL3, PPC_VSL4, PPC_VSL5, PPC_VSL6, PPC_VSL7, PPC_VSL8, PPC_VSL9, PPC_VSL10, PPC_VSL11, PPC_VSL12, PPC_VSL13, PPC_VSL31, PPC_VSL30, PPC_VSL29, PPC_VSL28, PPC_VSL27, PPC_VSL26, PPC_VSL25, PPC_VSL24, PPC_VSL23, PPC_VSL22, PPC_VSL21, PPC_VSL20, PPC_VSL19, PPC_VSL18, PPC_VSL17, PPC_VSL16, PPC_VSL15, PPC_VSL14, PPC_VSH2, PPC_VSH3, PPC_VSH4, PPC_VSH5, PPC_VSH0, PPC_VSH1, PPC_VSH6, PPC_VSH7, PPC_VSH8, PPC_VSH9, PPC_VSH10, PPC_VSH11, PPC_VSH12, PPC_VSH13, PPC_VSH14, PPC_VSH15, PPC_VSH16, PPC_VSH17, PPC_VSH18, PPC_VSH19, PPC_VSH31, PPC_VSH30, PPC_VSH29, PPC_VSH28, PPC_VSH27, PPC_VSH26, PPC_VSH25, PPC_VSH24, PPC_VSH23, PPC_VSH22, PPC_VSH21, PPC_VSH20,
895 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f,
900 PPC_QF0, PPC_QF1, PPC_QF2, PPC_QF3, PPC_QF4, PPC_QF5, PPC_QF6, PPC_QF7, PPC_QF8, PPC_QF9, PPC_QF10, PPC_QF11, PPC_QF12, PPC_QF13, PPC_QF31, PPC_QF30, PPC_QF29, PPC_QF28, PPC_QF27, PPC_QF26, PPC_QF25, PPC_QF24, PPC_QF23, PPC_QF22, PPC_QF21, PPC_QF20, PPC_QF19, PPC_QF18, PPC_QF17, PPC_QF16, PPC_QF15, PPC_QF14,
905 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0x1f,
910 PPC_V2, PPC_V3, PPC_V4, PPC_V5, PPC_V0, PPC_V1, PPC_V6, PPC_V7, PPC_V8, PPC_V9, PPC_V10, PPC_V11, PPC_V12, PPC_V13, PPC_V14, PPC_V15, PPC_V16, PPC_V17, PPC_V18, PPC_V19, PPC_V31, PPC_V30, PPC_V29, PPC_V28, PPC_V27, PPC_V26, PPC_V25, PPC_V24, PPC_V23, PPC_V22, PPC_V21, PPC_V20,
915 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0x1f,
920 PPC_VSH2, PPC_VSH3, PPC_VSH4, PPC_VSH5, PPC_VSH0, PPC_VSH1, PPC_VSH6, PPC_VSH7, PPC_VSH8, PPC_VSH9, PPC_VSH10, PPC_VSH11, PPC_VSH12, PPC_VSH13, PPC_VSH14, PPC_VSH15, PPC_VSH16, PPC_VSH17, PPC_VSH18, PPC_VSH19, PPC_VSH31, PPC_VSH30, PPC_VSH29, PPC_VSH28, PPC_VSH27, PPC_VSH26, PPC_VSH25, PPC_VSH24, PPC_VSH23, PPC_VSH22, PPC_VSH21, PPC_VSH20,
925 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0x1f,
930 PPC_VSL0, PPC_VSL1, PPC_VSL2, PPC_VSL3, PPC_VSL4, PPC_VSL5, PPC_VSL6, PPC_VSL7, PPC_VSL8, PPC_VSL9, PPC_VSL10, PPC_VSL11, PPC_VSL12, PPC_VSL13, PPC_VSL31, PPC_VSL30, PPC_VSL29, PPC_VSL28, PPC_VSL27, PPC_VSL26, PPC_VSL25, PPC_VSL24, PPC_VSL23, PPC_VSL22, PPC_VSL21, PPC_VSL20, PPC_VSL19, PPC_VSL18, PPC_VSL17, PPC_VSL16, PPC_VSL15, PPC_VSL14,
935 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0x1f,
940 PPC_QF0, PPC_QF1, PPC_QF2, PPC_QF3, PPC_QF4, PPC_QF5, PPC_QF6, PPC_QF7, PPC_QF8, PPC_QF9, PPC_QF10, PPC_QF11, PPC_QF12, PPC_QF13, PPC_QF31, PPC_QF30, PPC_QF29, PPC_QF28, PPC_QF27, PPC_QF26, PPC_QF25, PPC_QF24, PPC_QF23, PPC_QF22, PPC_QF21, PPC_QF20, PPC_QF19, PPC_QF18, PPC_QF17, PPC_QF16, PPC_QF15, PPC_QF14,
945 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0x1f,
950 PPC_QF0, PPC_QF1, PPC_QF2, PPC_QF3, PPC_QF4, PPC_QF5, PPC_QF6, PPC_QF7, PPC_QF8, PPC_QF9, PPC_QF10, PPC_QF11, PPC_QF12, PPC_QF13, PPC_QF31, PPC_QF30, PPC_QF29, PPC_QF28, PPC_QF27, PPC_QF26, PPC_QF25, PPC_QF24, PPC_QF23, PPC_QF22, PPC_QF21, PPC_QF20, PPC_QF19, PPC_QF18, PPC_QF17, PPC_QF16, PPC_QF15, PPC_QF14,
955 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0x1f,
960 { GPRC, GPRCBits, 102, 34,
sizeof(GPRCBits), PPC_GPRCRegClassID, 4, 4, 1, 1 },
961 { GPRC_NOR0, GPRC_NOR0Bits, 9, 34,
sizeof(GPRC_NOR0Bits), PPC_GPRC_NOR0RegClassID, 4, 4, 1, 1 },
962 { GPRC_and_GPRC_NOR0, GPRC_and_GPRC_NOR0Bits, 0, 33,
sizeof(GPRC_and_GPRC_NOR0Bits), PPC_GPRC_and_GPRC_NOR0RegClassID, 4, 4, 1, 1 },
963 { CRBITRC, CRBITRCBits, 133, 32,
sizeof(CRBITRCBits), PPC_CRBITRCRegClassID, 4, 4, 1, 1 },
964 { F4RC, F4RCBits, 45, 32,
sizeof(F4RCBits), PPC_F4RCRegClassID, 4, 4, 1, 1 },
965 { CRRC, CRRCBits, 107, 8,
sizeof(CRRCBits), PPC_CRRCRegClassID, 4, 4, 1, 1 },
966 { CARRYRC, CARRYRCBits, 141, 1,
sizeof(CARRYRCBits), PPC_CARRYRCRegClassID, 4, 4, -1, 1 },
967 { CTRRC, CTRRCBits, 112, 1,
sizeof(CTRRCBits), PPC_CTRRCRegClassID, 4, 4, 1, 0 },
968 { VRSAVERC, VRSAVERCBits, 65, 1,
sizeof(VRSAVERCBits), PPC_VRSAVERCRegClassID, 4, 4, 1, 1 },
969 { VSFRC, VSFRCBits, 79, 64,
sizeof(VSFRCBits), PPC_VSFRCRegClassID, 8, 8, 1, 1 },
970 { G8RC, G8RCBits, 55, 34,
sizeof(G8RCBits), PPC_G8RCRegClassID, 8, 8, 1, 1 },
971 { G8RC_NOX0, G8RC_NOX0Bits, 28, 34,
sizeof(G8RC_NOX0Bits), PPC_G8RC_NOX0RegClassID, 8, 8, 1, 1 },
972 { G8RC_and_G8RC_NOX0, G8RC_and_G8RC_NOX0Bits, 19, 33,
sizeof(G8RC_and_G8RC_NOX0Bits), PPC_G8RC_and_G8RC_NOX0RegClassID, 8, 8, 1, 1 },
973 { F8RC, F8RCBits, 50, 32,
sizeof(F8RCBits), PPC_F8RCRegClassID, 8, 8, 1, 1 },
974 { VFRC, VFRCBits, 85, 32,
sizeof(VFRCBits), PPC_VFRCRegClassID, 8, 8, 1, 1 },
975 { CTRRC8, CTRRC8Bits, 38, 1,
sizeof(CTRRC8Bits), PPC_CTRRC8RegClassID, 8, 8, 1, 0 },
976 { VSRC, VSRCBits, 128, 64,
sizeof(VSRCBits), PPC_VSRCRegClassID, 16, 16, 1, 1 },
977 { QSRC, QSRCBits, 123, 32,
sizeof(QSRCBits), PPC_QSRCRegClassID, 16, 16, 1, 1 },
978 { VRRC, VRRCBits, 118, 32,
sizeof(VRRCBits), PPC_VRRCRegClassID, 16, 16, 1, 1 },
979 { VSHRC, VSHRCBits, 90, 32,
sizeof(VSHRCBits), PPC_VSHRCRegClassID, 16, 16, 1, 1 },
980 { VSLRC, VSLRCBits, 96, 32,
sizeof(VSLRCBits), PPC_VSLRCRegClassID, 16, 16, 1, 1 },
981 { QBRC, QBRCBits, 60, 32,
sizeof(QBRCBits), PPC_QBRCRegClassID, 32, 32, 1, 1 },
982 { QFRC, QFRCBits, 74, 32,
sizeof(QFRCBits), PPC_QFRCRegClassID, 32, 32, 1, 1 },