Changeset 609 for branches/GNU/src/binutils/opcodes/ppc-opc.c
- Timestamp:
- Aug 16, 2003, 6:59:22 PM (22 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/GNU/src/binutils/opcodes/ppc-opc.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* ppc-opc.c -- PowerPC opcode list 2 Copyright 1994, 1995, 1996, 1997, 1998, 2000 2 Copyright 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003 3 3 Free Software Foundation, Inc. 4 4 Written by Ian Lance Taylor, Cygnus Support 5 5 6 This file is part of GDB, GAS, and the GNU binutils.7 8 GDB, GAS, and the GNU binutils are free software; you can redistribute9 them and/or modify them under the terms of the GNU General Public10 License as published by the Free Software Foundation; either version11 2, or (at your option) any later version.12 13 GDB, GAS, and the GNU binutils are distributed in the hope that they14 will be useful, but WITHOUT ANY WARRANTY; without even the implied15 warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See16 the GNU General Public License for more details.17 18 You should have received a copy of the GNU General Public License19 along with this file; see the file COPYING. If not, write to the Free20 Software Foundation, 59 Temple Place - Suite 330, Boston, MA21 02111-1307, USA. */6 This file is part of GDB, GAS, and the GNU binutils. 7 8 GDB, GAS, and the GNU binutils are free software; you can redistribute 9 them and/or modify them under the terms of the GNU General Public 10 License as published by the Free Software Foundation; either version 11 2, or (at your option) any later version. 12 13 GDB, GAS, and the GNU binutils are distributed in the hope that they 14 will be useful, but WITHOUT ANY WARRANTY; without even the implied 15 warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See 16 the GNU General Public License for more details. 17 18 You should have received a copy of the GNU General Public License 19 along with this file; see the file COPYING. If not, write to the Free 20 Software Foundation, 59 Temple Place - Suite 330, Boston, MA 21 02111-1307, USA. */ 22 22 23 23 #include <stdio.h> … … 40 40 /* Local insertion and extraction functions. */ 41 41 42 static unsigned long insert_bat PARAMS ((unsigned long, long, const char **)); 43 static long extract_bat PARAMS ((unsigned long, int *)); 44 static unsigned long insert_bba PARAMS ((unsigned long, long, const char **)); 45 static long extract_bba PARAMS ((unsigned long, int *)); 46 static unsigned long insert_bd PARAMS ((unsigned long, long, const char **)); 47 static long extract_bd PARAMS ((unsigned long, int *)); 48 static unsigned long insert_bdm PARAMS ((unsigned long, long, const char **)); 49 static long extract_bdm PARAMS ((unsigned long, int *)); 50 static unsigned long insert_bdp PARAMS ((unsigned long, long, const char **)); 51 static long extract_bdp PARAMS ((unsigned long, int *)); 52 static int valid_bo PARAMS ((long)); 53 static unsigned long insert_bo PARAMS ((unsigned long, long, const char **)); 54 static long extract_bo PARAMS ((unsigned long, int *)); 55 static unsigned long insert_boe PARAMS ((unsigned long, long, const char **)); 56 static long extract_boe PARAMS ((unsigned long, int *)); 57 static unsigned long insert_ds PARAMS ((unsigned long, long, const char **)); 58 static long extract_ds PARAMS ((unsigned long, int *)); 59 static unsigned long insert_li PARAMS ((unsigned long, long, const char **)); 60 static long extract_li PARAMS ((unsigned long, int *)); 61 static unsigned long insert_mbe PARAMS ((unsigned long, long, const char **)); 62 static long extract_mbe PARAMS ((unsigned long, int *)); 63 static unsigned long insert_mb6 PARAMS ((unsigned long, long, const char **)); 64 static long extract_mb6 PARAMS ((unsigned long, int *)); 65 static unsigned long insert_nb PARAMS ((unsigned long, long, const char **)); 66 static long extract_nb PARAMS ((unsigned long, int *)); 67 static unsigned long insert_nsi PARAMS ((unsigned long, long, const char **)); 68 static long extract_nsi PARAMS ((unsigned long, int *)); 69 static unsigned long insert_ral PARAMS ((unsigned long, long, const char **)); 70 static unsigned long insert_ram PARAMS ((unsigned long, long, const char **)); 71 static unsigned long insert_ras PARAMS ((unsigned long, long, const char **)); 72 static unsigned long insert_rbs PARAMS ((unsigned long, long, const char **)); 73 static long extract_rbs PARAMS ((unsigned long, int *)); 74 static unsigned long insert_sh6 PARAMS ((unsigned long, long, const char **)); 75 static long extract_sh6 PARAMS ((unsigned long, int *)); 76 static unsigned long insert_spr PARAMS ((unsigned long, long, const char **)); 77 static long extract_spr PARAMS ((unsigned long, int *)); 78 static unsigned long insert_tbr PARAMS ((unsigned long, long, const char **)); 79 static long extract_tbr PARAMS ((unsigned long, int *)); 42 static unsigned long insert_bat 43 PARAMS ((unsigned long, long, int, const char **)); 44 static long extract_bat 45 PARAMS ((unsigned long, int, int *)); 46 static unsigned long insert_bba 47 PARAMS ((unsigned long, long, int, const char **)); 48 static long extract_bba 49 PARAMS ((unsigned long, int, int *)); 50 static unsigned long insert_bd 51 PARAMS ((unsigned long, long, int, const char **)); 52 static long extract_bd 53 PARAMS ((unsigned long, int, int *)); 54 static unsigned long insert_bdm 55 PARAMS ((unsigned long, long, int, const char **)); 56 static long extract_bdm 57 PARAMS ((unsigned long, int, int *)); 58 static unsigned long insert_bdp 59 PARAMS ((unsigned long, long, int, const char **)); 60 static long extract_bdp 61 PARAMS ((unsigned long, int, int *)); 62 static int valid_bo 63 PARAMS ((long, int)); 64 static unsigned long insert_bo 65 PARAMS ((unsigned long, long, int, const char **)); 66 static long extract_bo 67 PARAMS ((unsigned long, int, int *)); 68 static unsigned long insert_boe 69 PARAMS ((unsigned long, long, int, const char **)); 70 static long extract_boe 71 PARAMS ((unsigned long, int, int *)); 72 static unsigned long insert_ds 73 PARAMS ((unsigned long, long, int, const char **)); 74 static long extract_ds 75 PARAMS ((unsigned long, int, int *)); 76 static unsigned long insert_de 77 PARAMS ((unsigned long, long, int, const char **)); 78 static long extract_de 79 PARAMS ((unsigned long, int, int *)); 80 static unsigned long insert_des 81 PARAMS ((unsigned long, long, int, const char **)); 82 static long extract_des 83 PARAMS ((unsigned long, int, int *)); 84 static unsigned long insert_li 85 PARAMS ((unsigned long, long, int, const char **)); 86 static long extract_li 87 PARAMS ((unsigned long, int, int *)); 88 static unsigned long insert_mbe 89 PARAMS ((unsigned long, long, int, const char **)); 90 static long extract_mbe 91 PARAMS ((unsigned long, int, int *)); 92 static unsigned long insert_mb6 93 PARAMS ((unsigned long, long, int, const char **)); 94 static long extract_mb6 95 PARAMS ((unsigned long, int, int *)); 96 static unsigned long insert_nb 97 PARAMS ((unsigned long, long, int, const char **)); 98 static long extract_nb 99 PARAMS ((unsigned long, int, int *)); 100 static unsigned long insert_nsi 101 PARAMS ((unsigned long, long, int, const char **)); 102 static long extract_nsi 103 PARAMS ((unsigned long, int, int *)); 104 static unsigned long insert_ral 105 PARAMS ((unsigned long, long, int, const char **)); 106 static unsigned long insert_ram 107 PARAMS ((unsigned long, long, int, const char **)); 108 static unsigned long insert_ras 109 PARAMS ((unsigned long, long, int, const char **)); 110 static unsigned long insert_rbs 111 PARAMS ((unsigned long, long, int, const char **)); 112 static long extract_rbs 113 PARAMS ((unsigned long, int, int *)); 114 static unsigned long insert_sh6 115 PARAMS ((unsigned long, long, int, const char **)); 116 static long extract_sh6 117 PARAMS ((unsigned long, int, int *)); 118 static unsigned long insert_spr 119 PARAMS ((unsigned long, long, int, const char **)); 120 static long extract_spr 121 PARAMS ((unsigned long, int, int *)); 122 static unsigned long insert_tbr 123 PARAMS ((unsigned long, long, int, const char **)); 124 static long extract_tbr 125 PARAMS ((unsigned long, int, int *)); 126 static unsigned long insert_ev2 127 PARAMS ((unsigned long, long, int, const char **)); 128 static long extract_ev2 129 PARAMS ((unsigned long, int, int *)); 130 static unsigned long insert_ev4 131 PARAMS ((unsigned long, long, int, const char **)); 132 static long extract_ev4 133 PARAMS ((unsigned long, int, int *)); 134 static unsigned long insert_ev8 135 PARAMS ((unsigned long, long, int, const char **)); 136 static long extract_ev8 137 PARAMS ((unsigned long, int, int *)); 80 138 81 139 … … 192 250 { 3, 18, 0, 0, PPC_OPERAND_CR | PPC_OPERAND_OPTIONAL }, 193 251 252 /* The CRB field in an X form instruction. */ 253 #define CRB CR + 1 254 { 5, 6, 0, 0, 0 }, 255 256 /* The CRFD field in an X form instruction. */ 257 #define CRFD CRB + 1 258 { 3, 23, 0, 0, PPC_OPERAND_CR }, 259 260 /* The CRFS field in an X form instruction. */ 261 #define CRFS CRFD + 1 262 { 3, 0, 0, 0, PPC_OPERAND_CR }, 263 264 /* The CT field in an X form instruction. */ 265 #define CT CRFS + 1 266 { 5, 21, 0, 0, PPC_OPERAND_OPTIONAL }, 267 194 268 /* The D field in a D form instruction. This is a displacement off 195 269 a register, and implies that the next operand is a register in 196 270 parentheses. */ 197 #define D C R+ 1271 #define D CT + 1 198 272 { 16, 0, 0, 0, PPC_OPERAND_PARENS | PPC_OPERAND_SIGNED }, 273 274 /* The DE field in a DE form instruction. This is like D, but is 12 275 bits only. */ 276 #define DE D + 1 277 { 14, 0, insert_de, extract_de, PPC_OPERAND_PARENS }, 278 279 /* The DES field in a DES form instruction. This is like DS, but is 14 280 bits only (12 stored.) */ 281 #define DES DE + 1 282 { 14, 0, insert_des, extract_des, PPC_OPERAND_PARENS | PPC_OPERAND_SIGNED }, 199 283 200 284 /* The DS field in a DS form instruction. This is like D, but the 201 285 lower two bits are forced to zero. */ 202 #define DS D + 1 203 { 16, 0, insert_ds, extract_ds, PPC_OPERAND_PARENS | PPC_OPERAND_SIGNED }, 286 #define DS DES + 1 287 { 16, 0, insert_ds, extract_ds, 288 PPC_OPERAND_PARENS | PPC_OPERAND_SIGNED | PPC_OPERAND_DS }, 204 289 205 290 /* The E field in a wrteei instruction. */ … … 263 348 { 26, 0, insert_li, extract_li, PPC_OPERAND_ABSOLUTE | PPC_OPERAND_SIGNED }, 264 349 350 /* The LS field in an X (sync) form instruction. */ 351 #define LS LIA + 1 352 { 2, 21, 0, 0, PPC_OPERAND_OPTIONAL }, 353 265 354 /* The MB field in an M form instruction. */ 266 #define MB L IA+ 1355 #define MB LS + 1 267 356 #define MB_MASK (0x1f << 6) 268 357 { 5, 6, 0, 0, 0 }, … … 288 377 { 6, 5, insert_mb6, extract_mb6, 0 }, 289 378 379 /* The MO field in an mbar instruction. */ 380 #define MO MB6 + 1 381 { 5, 21, 0, 0, 0 }, 382 290 383 /* The NB field in an X form instruction. The value 32 is stored as 291 384 0. */ 292 #define NB M B6+ 1385 #define NB MO + 1 293 386 { 6, 11, insert_nb, extract_nb, 0 }, 294 387 … … 362 455 lower 5 bits are stored in the upper 5 and vice- versa. */ 363 456 #define SPR SISIGNOPT + 1 457 #define PMR SPR 364 458 #define SPR_MASK (0x3ff << 11) 365 459 { 10, 11, insert_spr, extract_spr, 0 }, … … 379 473 { 4, 16, 0, 0, 0 }, 380 474 475 /* The STRM field in an X AltiVec form instruction. */ 476 #define STRM SR + 1 477 #define STRM_MASK (0x3 << 21) 478 { 2, 21, 0, 0, 0 }, 479 381 480 /* The SV field in a POWER SC form instruction. */ 382 #define SV S R+ 1481 #define SV STRM + 1 383 482 { 14, 2, 0, 0, 0 }, 384 483 … … 401 500 { 16, 0, 0, 0, 0 }, 402 501 403 /* The VA field in a VA, VX or VXR form instruction. */502 /* The VA field in a VA, VX or VXR form instruction. */ 404 503 #define VA UI + 1 405 504 #define VA_MASK (0x1f << 16) 406 { 5, 16, 0, 0, PPC_OPERAND_VR},407 408 /* The VB field in a VA, VX or VXR form instruction. */505 { 5, 16, 0, 0, PPC_OPERAND_VR }, 506 507 /* The VB field in a VA, VX or VXR form instruction. */ 409 508 #define VB VA + 1 410 509 #define VB_MASK (0x1f << 11) 411 { 5, 11, 0, 0, PPC_OPERAND_VR},412 413 /* The VC field in a VA form instruction. */510 { 5, 11, 0, 0, PPC_OPERAND_VR }, 511 512 /* The VC field in a VA form instruction. */ 414 513 #define VC VB + 1 415 514 #define VC_MASK (0x1f << 6) 416 { 5, 6, 0, 0, PPC_OPERAND_VR},417 418 /* The VD or VS field in a VA, VX, VXR or X form instruction. */515 { 5, 6, 0, 0, PPC_OPERAND_VR }, 516 517 /* The VD or VS field in a VA, VX, VXR or X form instruction. */ 419 518 #define VD VC + 1 420 519 #define VS VD 421 520 #define VD_MASK (0x1f << 21) 422 { 5, 21, 0, 0, PPC_OPERAND_VR},423 424 /* The SIMM field in a VX form instruction. */521 { 5, 21, 0, 0, PPC_OPERAND_VR }, 522 523 /* The SIMM field in a VX form instruction. */ 425 524 #define SIMM VD + 1 426 525 { 5, 16, 0, 0, PPC_OPERAND_SIGNED}, 427 526 428 /* The UIMM field in a VX form instruction. */527 /* The UIMM field in a VX form instruction. */ 429 528 #define UIMM SIMM + 1 430 529 { 5, 16, 0, 0, 0 }, 431 530 432 /* The SHB field in a VA form instruction. */531 /* The SHB field in a VA form instruction. */ 433 532 #define SHB UIMM + 1 434 533 { 4, 6, 0, 0, 0 }, 534 535 /* The other UIMM field in a EVX form instruction. */ 536 #define EVUIMM SHB + 1 537 { 5, 11, 0, 0, 0 }, 538 539 /* The other UIMM field in a half word EVX form instruction. */ 540 #define EVUIMM_2 EVUIMM + 1 541 { 32, 11, insert_ev2, extract_ev2, PPC_OPERAND_PARENS }, 542 543 /* The other UIMM field in a word EVX form instruction. */ 544 #define EVUIMM_4 EVUIMM_2 + 1 545 { 32, 11, insert_ev4, extract_ev4, PPC_OPERAND_PARENS }, 546 547 /* The other UIMM field in a double EVX form instruction. */ 548 #define EVUIMM_8 EVUIMM_4 + 1 549 { 32, 11, insert_ev8, extract_ev8, PPC_OPERAND_PARENS }, 550 551 /* The WS field. */ 552 #define WS EVUIMM_8 + 1 553 #define WS_MASK (0x7 << 11) 554 { 3, 11, 0, 0, 0 }, 555 556 /* The L field in an mtmsrd instruction */ 557 #define MTMSRD_L WS + 1 558 { 1, 16, 0, 0, PPC_OPERAND_OPTIONAL }, 559 435 560 }; 436 561 … … 445 570 /*ARGSUSED*/ 446 571 static unsigned long 447 insert_bat (insn, value, errmsg)572 insert_bat (insn, value, dialect, errmsg) 448 573 unsigned long insn; 449 574 long value ATTRIBUTE_UNUSED; 575 int dialect ATTRIBUTE_UNUSED; 450 576 const char **errmsg ATTRIBUTE_UNUSED; 451 577 { … … 454 580 455 581 static long 456 extract_bat (insn, invalid) 457 unsigned long insn; 582 extract_bat (insn, dialect, invalid) 583 unsigned long insn; 584 int dialect ATTRIBUTE_UNUSED; 458 585 int *invalid; 459 586 { … … 472 599 /*ARGSUSED*/ 473 600 static unsigned long 474 insert_bba (insn, value, errmsg)601 insert_bba (insn, value, dialect, errmsg) 475 602 unsigned long insn; 476 603 long value ATTRIBUTE_UNUSED; 604 int dialect ATTRIBUTE_UNUSED; 477 605 const char **errmsg ATTRIBUTE_UNUSED; 478 606 { … … 481 609 482 610 static long 483 extract_bba (insn, invalid) 484 unsigned long insn; 611 extract_bba (insn, dialect, invalid) 612 unsigned long insn; 613 int dialect ATTRIBUTE_UNUSED; 485 614 int *invalid; 486 615 { … … 496 625 /*ARGSUSED*/ 497 626 static unsigned long 498 insert_bd (insn, value, errmsg)627 insert_bd (insn, value, dialect, errmsg) 499 628 unsigned long insn; 500 629 long value; 630 int dialect ATTRIBUTE_UNUSED; 501 631 const char **errmsg ATTRIBUTE_UNUSED; 502 632 { … … 506 636 /*ARGSUSED*/ 507 637 static long 508 extract_bd (insn, invalid) 509 unsigned long insn; 638 extract_bd (insn, dialect, invalid) 639 unsigned long insn; 640 int dialect ATTRIBUTE_UNUSED; 510 641 int *invalid ATTRIBUTE_UNUSED; 511 642 { 512 if ((insn & 0x8000) != 0) 513 return (insn & 0xfffc) - 0x10000; 514 else 515 return insn & 0xfffc; 643 return ((insn & 0xfffc) ^ 0x8000) - 0x8000; 516 644 } 517 645 518 646 /* The BD field in a B form instruction when the - modifier is used. 519 647 This modifier means that the branch is not expected to be taken. 520 We must set the y bit of the BO field to 1 if the offset is 521 negative. When extracting, we require that the y bit be 1 and that 522 the offset be positive, since if the y bit is 0 we just want to 523 print the normal form of the instruction. */ 648 For chips built to versions of the architecture prior to version 2 649 (ie. not Power4 compatible), we set the y bit of the BO field to 1 650 if the offset is negative. When extracting, we require that the y 651 bit be 1 and that the offset be positive, since if the y bit is 0 652 we just want to print the normal form of the instruction. 653 Power4 compatible targets use two bits, "a", and "t", instead of 654 the "y" bit. "at" == 00 => no hint, "at" == 01 => unpredictable, 655 "at" == 10 => not taken, "at" == 11 => taken. The "t" bit is 00001 656 in BO field, the "a" bit is 00010 for branch on CR(BI) and 01000 657 for branch on CTR. We only handle the taken/not-taken hint here. */ 524 658 525 659 /*ARGSUSED*/ 526 660 static unsigned long 527 insert_bdm (insn, value, errmsg)661 insert_bdm (insn, value, dialect, errmsg) 528 662 unsigned long insn; 529 663 long value; 664 int dialect; 530 665 const char **errmsg ATTRIBUTE_UNUSED; 531 666 { 532 if ((value & 0x8000) != 0) 533 insn |= 1 << 21; 667 if ((dialect & PPC_OPCODE_POWER4) == 0) 668 { 669 if ((value & 0x8000) != 0) 670 insn |= 1 << 21; 671 } 672 else 673 { 674 if ((insn & (0x14 << 21)) == (0x04 << 21)) 675 insn |= 0x02 << 21; 676 else if ((insn & (0x14 << 21)) == (0x10 << 21)) 677 insn |= 0x08 << 21; 678 } 534 679 return insn | (value & 0xfffc); 535 680 } 536 681 537 682 static long 538 extract_bdm (insn, invalid) 539 unsigned long insn; 683 extract_bdm (insn, dialect, invalid) 684 unsigned long insn; 685 int dialect; 540 686 int *invalid; 541 687 { 542 if (invalid != (int *) NULL 543 && ((insn & (1 << 21)) == 0 544 || (insn & (1 << 15)) == 0)) 545 *invalid = 1; 546 if ((insn & 0x8000) != 0) 547 return (insn & 0xfffc) - 0x10000; 548 else 549 return insn & 0xfffc; 688 if (invalid != (int *) NULL) 689 { 690 if ((dialect & PPC_OPCODE_POWER4) == 0) 691 { 692 if (((insn & (1 << 21)) == 0) != ((insn & (1 << 15)) == 0)) 693 *invalid = 1; 694 } 695 else 696 { 697 if ((insn & (0x17 << 21)) != (0x06 << 21) 698 && (insn & (0x1d << 21)) != (0x18 << 21)) 699 *invalid = 1; 700 } 701 } 702 return ((insn & 0xfffc) ^ 0x8000) - 0x8000; 550 703 } 551 704 … … 556 709 /*ARGSUSED*/ 557 710 static unsigned long 558 insert_bdp (insn, value, errmsg)711 insert_bdp (insn, value, dialect, errmsg) 559 712 unsigned long insn; 560 713 long value; 714 int dialect; 561 715 const char **errmsg ATTRIBUTE_UNUSED; 562 716 { 563 if ((value & 0x8000) == 0) 564 insn |= 1 << 21; 717 if ((dialect & PPC_OPCODE_POWER4) == 0) 718 { 719 if ((value & 0x8000) == 0) 720 insn |= 1 << 21; 721 } 722 else 723 { 724 if ((insn & (0x14 << 21)) == (0x04 << 21)) 725 insn |= 0x03 << 21; 726 else if ((insn & (0x14 << 21)) == (0x10 << 21)) 727 insn |= 0x09 << 21; 728 } 565 729 return insn | (value & 0xfffc); 566 730 } 567 731 568 732 static long 569 extract_bdp (insn, invalid) 570 unsigned long insn; 733 extract_bdp (insn, dialect, invalid) 734 unsigned long insn; 735 int dialect; 571 736 int *invalid; 572 737 { 573 if (invalid != (int *) NULL 574 && ((insn & (1 << 21)) == 0 575 || (insn & (1 << 15)) != 0)) 576 *invalid = 1; 577 if ((insn & 0x8000) != 0) 578 return (insn & 0xfffc) - 0x10000; 738 if (invalid != (int *) NULL) 739 { 740 if ((dialect & PPC_OPCODE_POWER4) == 0) 741 { 742 if (((insn & (1 << 21)) == 0) == ((insn & (1 << 15)) == 0)) 743 *invalid = 1; 744 } 745 else 746 { 747 if ((insn & (0x17 << 21)) != (0x07 << 21) 748 && (insn & (0x1d << 21)) != (0x19 << 21)) 749 *invalid = 1; 750 } 751 } 752 return ((insn & 0xfffc) ^ 0x8000) - 0x8000; 753 } 754 755 /* Check for legal values of a BO field. */ 756 757 static int 758 valid_bo (value, dialect) 759 long value; 760 int dialect; 761 { 762 if ((dialect & PPC_OPCODE_POWER4) == 0) 763 { 764 /* Certain encodings have bits that are required to be zero. 765 These are (z must be zero, y may be anything): 766 001zy 767 011zy 768 1z00y 769 1z01y 770 1z1zz 771 */ 772 switch (value & 0x14) 773 { 774 default: 775 case 0: 776 return 1; 777 case 0x4: 778 return (value & 0x2) == 0; 779 case 0x10: 780 return (value & 0x8) == 0; 781 case 0x14: 782 return value == 0x14; 783 } 784 } 579 785 else 580 return insn & 0xfffc;581 }582 583 /* Check for legal values of a BO field. */584 585 static int586 valid_bo (value)587 long value;588 {589 /* Certain encodings have bits that are required to be zero. These590 are (z must be zero, y may be anything):591 001zy592 011zy593 1z00y594 1z01y595 1z1zz596 */597 switch (value & 0x14)598 786 { 599 default: 600 case 0: 601 return 1; 602 case 0x4: 603 return (value & 0x2) == 0; 604 case 0x10: 605 return (value & 0x8) == 0; 606 case 0x14: 607 return value == 0x14; 787 /* Certain encodings have bits that are required to be zero. 788 These are (z must be zero, a & t may be anything): 789 0000z 790 0001z 791 0100z 792 0101z 793 001at 794 011at 795 1a00t 796 1a01t 797 1z1zz 798 */ 799 if ((value & 0x14) == 0) 800 return (value & 0x1) == 0; 801 else if ((value & 0x14) == 0x14) 802 return value == 0x14; 803 else 804 return 1; 608 805 } 609 806 } … … 613 810 614 811 static unsigned long 615 insert_bo (insn, value, errmsg)812 insert_bo (insn, value, dialect, errmsg) 616 813 unsigned long insn; 617 814 long value; 815 int dialect; 618 816 const char **errmsg; 619 817 { 620 818 if (errmsg != (const char **) NULL 621 && ! valid_bo (value ))819 && ! valid_bo (value, dialect)) 622 820 *errmsg = _("invalid conditional option"); 623 821 return insn | ((value & 0x1f) << 21); … … 625 823 626 824 static long 627 extract_bo (insn, invalid) 628 unsigned long insn; 825 extract_bo (insn, dialect, invalid) 826 unsigned long insn; 827 int dialect; 629 828 int *invalid; 630 829 { … … 633 832 value = (insn >> 21) & 0x1f; 634 833 if (invalid != (int *) NULL 635 && ! valid_bo (value ))834 && ! valid_bo (value, dialect)) 636 835 *invalid = 1; 637 836 return value; … … 643 842 644 843 static unsigned long 645 insert_boe (insn, value, errmsg)844 insert_boe (insn, value, dialect, errmsg) 646 845 unsigned long insn; 647 846 long value; 847 int dialect; 648 848 const char **errmsg; 649 849 { 650 850 if (errmsg != (const char **) NULL) 651 851 { 652 if (! valid_bo (value ))852 if (! valid_bo (value, dialect)) 653 853 *errmsg = _("invalid conditional option"); 654 854 else if ((value & 1) != 0) … … 659 859 660 860 static long 661 extract_boe (insn, invalid) 662 unsigned long insn; 861 extract_boe (insn, dialect, invalid) 862 unsigned long insn; 863 int dialect; 663 864 int *invalid; 664 865 { … … 667 868 value = (insn >> 21) & 0x1f; 668 869 if (invalid != (int *) NULL 669 && ! valid_bo (value ))870 && ! valid_bo (value, dialect)) 670 871 *invalid = 1; 671 872 return value & 0x1e; 672 873 } 673 874 875 static unsigned long 876 insert_ev2 (insn, value, dialect, errmsg) 877 unsigned long insn; 878 long value; 879 int dialect ATTRIBUTE_UNUSED; 880 const char ** errmsg ATTRIBUTE_UNUSED; 881 { 882 if ((value & 1) != 0 && errmsg != NULL) 883 *errmsg = _("offset not a multiple of 2"); 884 if ((value > 62) != 0 && errmsg != NULL) 885 *errmsg = _("offset greater than 62"); 886 return insn | ((value & 0x3e) << 10); 887 } 888 889 static long 890 extract_ev2 (insn, dialect, invalid) 891 unsigned long insn; 892 int dialect ATTRIBUTE_UNUSED; 893 int * invalid ATTRIBUTE_UNUSED; 894 { 895 return (insn >> 10) & 0x3e; 896 } 897 898 static unsigned long 899 insert_ev4 (insn, value, dialect, errmsg) 900 unsigned long insn; 901 long value; 902 int dialect ATTRIBUTE_UNUSED; 903 const char ** errmsg ATTRIBUTE_UNUSED; 904 { 905 if ((value & 3) != 0 && errmsg != NULL) 906 *errmsg = _("offset not a multiple of 4"); 907 if ((value > 124) != 0 && errmsg != NULL) 908 *errmsg = _("offset greater than 124"); 909 return insn | ((value & 0x7c) << 9); 910 } 911 912 static long 913 extract_ev4 (insn, dialect, invalid) 914 unsigned long insn; 915 int dialect ATTRIBUTE_UNUSED; 916 int * invalid ATTRIBUTE_UNUSED; 917 { 918 return (insn >> 9) & 0x7c; 919 } 920 921 static unsigned long 922 insert_ev8 (insn, value, dialect, errmsg) 923 unsigned long insn; 924 long value; 925 int dialect ATTRIBUTE_UNUSED; 926 const char ** errmsg ATTRIBUTE_UNUSED; 927 { 928 if ((value & 7) != 0 && errmsg != NULL) 929 *errmsg = _("offset not a multiple of 8"); 930 if ((value > 248) != 0 && errmsg != NULL) 931 *errmsg = _("offset greater than 248"); 932 return insn | ((value & 0xf8) << 8); 933 } 934 935 static long 936 extract_ev8 (insn, dialect, invalid) 937 unsigned long insn; 938 int dialect ATTRIBUTE_UNUSED; 939 int * invalid ATTRIBUTE_UNUSED; 940 { 941 return (insn >> 8) & 0xf8; 942 } 943 674 944 /* The DS field in a DS form instruction. This is like D, but the 675 945 lower two bits are forced to zero. */ … … 677 947 /*ARGSUSED*/ 678 948 static unsigned long 679 insert_ds (insn, value, errmsg)949 insert_ds (insn, value, dialect, errmsg) 680 950 unsigned long insn; 681 951 long value; 682 const char **errmsg ATTRIBUTE_UNUSED; 683 { 952 int dialect ATTRIBUTE_UNUSED; 953 const char **errmsg; 954 { 955 if ((value & 3) != 0 && errmsg != NULL) 956 *errmsg = _("offset not a multiple of 4"); 684 957 return insn | (value & 0xfffc); 685 958 } … … 687 960 /*ARGSUSED*/ 688 961 static long 689 extract_ds (insn, invalid) 690 unsigned long insn; 962 extract_ds (insn, dialect, invalid) 963 unsigned long insn; 964 int dialect ATTRIBUTE_UNUSED; 691 965 int *invalid ATTRIBUTE_UNUSED; 692 966 { 693 if ((insn & 0x8000) != 0) 694 return (insn & 0xfffc) - 0x10000; 695 else 696 return insn & 0xfffc; 967 return ((insn & 0xfffc) ^ 0x8000) - 0x8000; 968 } 969 970 /* The DE field in a DE form instruction. */ 971 972 /*ARGSUSED*/ 973 static unsigned long 974 insert_de (insn, value, dialect, errmsg) 975 unsigned long insn; 976 long value; 977 int dialect ATTRIBUTE_UNUSED; 978 const char **errmsg; 979 { 980 if ((value > 2047 || value < -2048) && errmsg != NULL) 981 *errmsg = _("offset not between -2048 and 2047"); 982 return insn | ((value << 4) & 0xfff0); 983 } 984 985 /*ARGSUSED*/ 986 static long 987 extract_de (insn, dialect, invalid) 988 unsigned long insn; 989 int dialect ATTRIBUTE_UNUSED; 990 int *invalid ATTRIBUTE_UNUSED; 991 { 992 return (insn & 0xfff0) >> 4; 993 } 994 995 /* The DES field in a DES form instruction. */ 996 997 /*ARGSUSED*/ 998 static unsigned long 999 insert_des (insn, value, dialect, errmsg) 1000 unsigned long insn; 1001 long value; 1002 int dialect ATTRIBUTE_UNUSED; 1003 const char **errmsg; 1004 { 1005 if ((value > 8191 || value < -8192) && errmsg != NULL) 1006 *errmsg = _("offset not between -8192 and 8191"); 1007 else if ((value & 3) != 0 && errmsg != NULL) 1008 *errmsg = _("offset not a multiple of 4"); 1009 return insn | ((value << 2) & 0xfff0); 1010 } 1011 1012 /*ARGSUSED*/ 1013 static long 1014 extract_des (insn, dialect, invalid) 1015 unsigned long insn; 1016 int dialect ATTRIBUTE_UNUSED; 1017 int *invalid ATTRIBUTE_UNUSED; 1018 { 1019 return (((insn >> 2) & 0x3ffc) ^ 0x2000) - 0x2000; 697 1020 } 698 1021 … … 702 1025 /*ARGSUSED*/ 703 1026 static unsigned long 704 insert_li (insn, value, errmsg)1027 insert_li (insn, value, dialect, errmsg) 705 1028 unsigned long insn; 706 1029 long value; 1030 int dialect ATTRIBUTE_UNUSED; 707 1031 const char **errmsg; 708 1032 { … … 714 1038 /*ARGSUSED*/ 715 1039 static long 716 extract_li (insn, invalid) 717 unsigned long insn; 1040 extract_li (insn, dialect, invalid) 1041 unsigned long insn; 1042 int dialect ATTRIBUTE_UNUSED; 718 1043 int *invalid ATTRIBUTE_UNUSED; 719 1044 { 720 if ((insn & 0x2000000) != 0) 721 return (insn & 0x3fffffc) - 0x4000000; 722 else 723 return insn & 0x3fffffc; 1045 return ((insn & 0x3fffffc) ^ 0x2000000) - 0x2000000; 724 1046 } 725 1047 … … 730 1052 731 1053 static unsigned long 732 insert_mbe (insn, value, errmsg)1054 insert_mbe (insn, value, dialect, errmsg) 733 1055 unsigned long insn; 734 1056 long value; 1057 int dialect ATTRIBUTE_UNUSED; 735 1058 const char **errmsg; 736 1059 { … … 787 1110 788 1111 static long 789 extract_mbe (insn, invalid) 790 unsigned long insn; 1112 extract_mbe (insn, dialect, invalid) 1113 unsigned long insn; 1114 int dialect ATTRIBUTE_UNUSED; 791 1115 int *invalid; 792 1116 { … … 822 1146 /*ARGSUSED*/ 823 1147 static unsigned long 824 insert_mb6 (insn, value, errmsg)1148 insert_mb6 (insn, value, dialect, errmsg) 825 1149 unsigned long insn; 826 1150 long value; 1151 int dialect ATTRIBUTE_UNUSED; 827 1152 const char **errmsg ATTRIBUTE_UNUSED; 828 1153 { … … 832 1157 /*ARGSUSED*/ 833 1158 static long 834 extract_mb6 (insn, invalid) 835 unsigned long insn; 1159 extract_mb6 (insn, dialect, invalid) 1160 unsigned long insn; 1161 int dialect ATTRIBUTE_UNUSED; 836 1162 int *invalid ATTRIBUTE_UNUSED; 837 1163 { … … 843 1169 844 1170 static unsigned long 845 insert_nb (insn, value, errmsg)1171 insert_nb (insn, value, dialect, errmsg) 846 1172 unsigned long insn; 847 1173 long value; 1174 int dialect ATTRIBUTE_UNUSED; 848 1175 const char **errmsg; 849 1176 { … … 857 1184 /*ARGSUSED*/ 858 1185 static long 859 extract_nb (insn, invalid) 860 unsigned long insn; 1186 extract_nb (insn, dialect, invalid) 1187 unsigned long insn; 1188 int dialect ATTRIBUTE_UNUSED; 861 1189 int *invalid ATTRIBUTE_UNUSED; 862 1190 { … … 876 1204 /*ARGSUSED*/ 877 1205 static unsigned long 878 insert_nsi (insn, value, errmsg)1206 insert_nsi (insn, value, dialect, errmsg) 879 1207 unsigned long insn; 880 1208 long value; 1209 int dialect ATTRIBUTE_UNUSED; 881 1210 const char **errmsg ATTRIBUTE_UNUSED; 882 1211 { … … 885 1214 886 1215 static long 887 extract_nsi (insn, invalid) 888 unsigned long insn; 1216 extract_nsi (insn, dialect, invalid) 1217 unsigned long insn; 1218 int dialect ATTRIBUTE_UNUSED; 889 1219 int *invalid; 890 1220 { 891 1221 if (invalid != (int *) NULL) 892 1222 *invalid = 1; 893 if ((insn & 0x8000) != 0) 894 return - ((long)(insn & 0xffff) - 0x10000); 895 else 896 return - (long)(insn & 0xffff); 1223 return - (((insn & 0xffff) ^ 0x8000) - 0x8000); 897 1224 } 898 1225 … … 902 1229 903 1230 static unsigned long 904 insert_ral (insn, value, errmsg)1231 insert_ral (insn, value, dialect, errmsg) 905 1232 unsigned long insn; 906 1233 long value; 1234 int dialect ATTRIBUTE_UNUSED; 907 1235 const char **errmsg; 908 1236 { … … 917 1245 918 1246 static unsigned long 919 insert_ram (insn, value, errmsg)1247 insert_ram (insn, value, dialect, errmsg) 920 1248 unsigned long insn; 921 1249 long value; 1250 int dialect ATTRIBUTE_UNUSED; 922 1251 const char **errmsg; 923 1252 { … … 932 1261 933 1262 static unsigned long 934 insert_ras (insn, value, errmsg)1263 insert_ras (insn, value, dialect, errmsg) 935 1264 unsigned long insn; 936 1265 long value; 1266 int dialect ATTRIBUTE_UNUSED; 937 1267 const char **errmsg; 938 1268 { … … 950 1280 /*ARGSUSED*/ 951 1281 static unsigned long 952 insert_rbs (insn, value, errmsg)1282 insert_rbs (insn, value, dialect, errmsg) 953 1283 unsigned long insn; 954 1284 long value ATTRIBUTE_UNUSED; 1285 int dialect ATTRIBUTE_UNUSED; 955 1286 const char **errmsg ATTRIBUTE_UNUSED; 956 1287 { … … 959 1290 960 1291 static long 961 extract_rbs (insn, invalid) 962 unsigned long insn; 1292 extract_rbs (insn, dialect, invalid) 1293 unsigned long insn; 1294 int dialect ATTRIBUTE_UNUSED; 963 1295 int *invalid; 964 1296 { … … 973 1305 /*ARGSUSED*/ 974 1306 static unsigned long 975 insert_sh6 (insn, value, errmsg)1307 insert_sh6 (insn, value, dialect, errmsg) 976 1308 unsigned long insn; 977 1309 long value; 1310 int dialect ATTRIBUTE_UNUSED; 978 1311 const char **errmsg ATTRIBUTE_UNUSED; 979 1312 { … … 983 1316 /*ARGSUSED*/ 984 1317 static long 985 extract_sh6 (insn, invalid) 986 unsigned long insn; 1318 extract_sh6 (insn, dialect, invalid) 1319 unsigned long insn; 1320 int dialect ATTRIBUTE_UNUSED; 987 1321 int *invalid ATTRIBUTE_UNUSED; 988 1322 { … … 994 1328 995 1329 static unsigned long 996 insert_spr (insn, value, errmsg)1330 insert_spr (insn, value, dialect, errmsg) 997 1331 unsigned long insn; 998 1332 long value; 1333 int dialect ATTRIBUTE_UNUSED; 999 1334 const char **errmsg ATTRIBUTE_UNUSED; 1000 1335 { … … 1003 1338 1004 1339 static long 1005 extract_spr (insn, invalid) 1006 unsigned long insn; 1340 extract_spr (insn, dialect, invalid) 1341 unsigned long insn; 1342 int dialect ATTRIBUTE_UNUSED; 1007 1343 int *invalid ATTRIBUTE_UNUSED; 1008 1344 { … … 1021 1357 1022 1358 static unsigned long 1023 insert_tbr (insn, value, errmsg)1359 insert_tbr (insn, value, dialect, errmsg) 1024 1360 unsigned long insn; 1025 1361 long value; 1362 int dialect ATTRIBUTE_UNUSED; 1026 1363 const char **errmsg ATTRIBUTE_UNUSED; 1027 1364 { … … 1032 1369 1033 1370 static long 1034 extract_tbr (insn, invalid) 1035 unsigned long insn; 1371 extract_tbr (insn, dialect, invalid) 1372 unsigned long insn; 1373 int dialect ATTRIBUTE_UNUSED; 1036 1374 int *invalid ATTRIBUTE_UNUSED; 1037 1375 { … … 1086 1424 /* A BBO_MASK with the y bit of the BO field removed. This permits 1087 1425 matching a conditional branch regardless of the setting of the y 1088 bit. */ 1089 #define Y_MASK (((unsigned long)1) << 21) 1090 #define BBOY_MASK (BBO_MASK &~ Y_MASK) 1426 bit. Similarly for the 'at' bits used for power4 branch hints. */ 1427 #define Y_MASK (((unsigned long) 1) << 21) 1428 #define AT1_MASK (((unsigned long) 3) << 21) 1429 #define AT2_MASK (((unsigned long) 9) << 21) 1430 #define BBOY_MASK (BBO_MASK &~ Y_MASK) 1431 #define BBOAT_MASK (BBO_MASK &~ AT1_MASK) 1091 1432 1092 1433 /* A B form instruction setting the BO field and the condition bits of … … 1098 1439 /* A BBOCB_MASK with the y bit of the BO field removed. */ 1099 1440 #define BBOYCB_MASK (BBOCB_MASK &~ Y_MASK) 1441 #define BBOATCB_MASK (BBOCB_MASK &~ AT1_MASK) 1442 #define BBOAT2CB_MASK (BBOCB_MASK &~ AT2_MASK) 1100 1443 1101 1444 /* A BBOYCB_MASK in which the BI field is fixed. */ 1102 1445 #define BBOYBI_MASK (BBOYCB_MASK | BI_MASK) 1446 #define BBOATBI_MASK (BBOAT2CB_MASK | BI_MASK) 1447 1448 /* An Context form instruction. */ 1449 #define CTX(op, xop) (OP (op) | (((unsigned long)(xop)) & 0x7)) 1450 #define CTX_MASK CTX(0x3f, 0x7) 1451 1452 /* An User Context form instruction. */ 1453 #define UCTX(op, xop) (OP (op) | (((unsigned long)(xop)) & 0x1f)) 1454 #define UCTX_MASK UCTX(0x3f, 0x1f) 1103 1455 1104 1456 /* The main opcode mask with the RA field clear. */ … … 1109 1461 #define DS_MASK DSO (0x3f, 3) 1110 1462 1463 /* A DE form instruction. */ 1464 #define DEO(op, xop) (OP (op) | ((xop) & 0xf)) 1465 #define DE_MASK DEO (0x3e, 0xf) 1466 1467 /* An EVSEL form instruction. */ 1468 #define EVSEL(op, xop) (OP (op) | (((unsigned long)(xop)) & 0xff) << 3) 1469 #define EVSEL_MASK EVSEL(0x3f, 0xff) 1470 1111 1471 /* An M form instruction. */ 1112 1472 #define M(op, rc) (OP (op) | ((rc) & 1)) … … 1143 1503 #define SC_MASK (OP_MASK | (((unsigned long)0x3ff) << 16) | (((unsigned long)1) << 1) | 1) 1144 1504 1145 /* An VX form instruction. */1505 /* An VX form instruction. */ 1146 1506 #define VX(op, xop) (OP (op) | (((unsigned long)(xop)) & 0x7ff)) 1147 1507 1148 /* The mask for an VX form instruction. */1508 /* The mask for an VX form instruction. */ 1149 1509 #define VX_MASK VX(0x3f, 0x7ff) 1150 1510 1151 /* An VA form instruction. */1152 #define VXA(op, xop) (OP (op) | (((unsigned long)(xop)) & 0x0 7f))1153 1154 /* The mask for an VA form instruction. */1155 #define VXA_MASK VXA(0x3f, 0x 7f)1156 1157 /* An VXR form instruction. */1511 /* An VA form instruction. */ 1512 #define VXA(op, xop) (OP (op) | (((unsigned long)(xop)) & 0x03f)) 1513 1514 /* The mask for an VA form instruction. */ 1515 #define VXA_MASK VXA(0x3f, 0x3f) 1516 1517 /* An VXR form instruction. */ 1158 1518 #define VXR(op, xop, rc) (OP (op) | (((rc) & 1) << 10) | (((unsigned long)(xop)) & 0x3ff)) 1159 1519 1160 /* The mask for a VXR form instruction. */1520 /* The mask for a VXR form instruction. */ 1161 1521 #define VXR_MASK VXR(0x3f, 0x3ff, 1) 1162 1522 … … 1182 1542 #define XRARB_MASK (X_MASK | RA_MASK | RB_MASK) 1183 1543 1544 /* An XRARB_MASK, but with the L bit clear. */ 1545 #define XRLARB_MASK (XRARB_MASK & ~((unsigned long) 1 << 16)) 1546 1184 1547 /* An X_MASK with the RT and RA fields fixed. */ 1185 1548 #define XRTRA_MASK (X_MASK | RT_MASK | RA_MASK) 1549 1550 /* An XRTRA_MASK, but with L bit clear. */ 1551 #define XRTLRA_MASK (XRTRA_MASK & ~((unsigned long) 1 << 21)) 1186 1552 1187 1553 /* An X form comparison instruction. */ … … 1203 1569 #define XTLB_MASK (X_MASK | SH_MASK) 1204 1570 1571 /* An X form sync instruction. */ 1572 #define XSYNC(op, xop, l) (X ((op), (xop)) | ((((unsigned long)(l)) & 3) << 21)) 1573 1574 /* An X form sync instruction with everything filled in except the LS field. */ 1575 #define XSYNC_MASK (0xff9fffff) 1576 1577 /* An X form AltiVec dss instruction. */ 1578 #define XDSS(op, xop, a) (X ((op), (xop)) | ((((unsigned long)(a)) & 1) << 25)) 1579 #define XDSS_MASK XDSS(0x3f, 0x3ff, 1) 1580 1205 1581 /* An XFL form instruction. */ 1206 1582 #define XFL(op, xop, rc) (OP (op) | ((((unsigned long)(xop)) & 0x3ff) << 1) | (((unsigned long)(rc)) & 1)) 1207 1583 #define XFL_MASK (XFL (0x3f, 0x3ff, 1) | (((unsigned long)1) << 25) | (((unsigned long)1) << 16)) 1584 1585 /* An X form isel instruction. */ 1586 #define XISEL(op, xop) (OP (op) | ((((unsigned long)(xop)) & 0x1f) << 1)) 1587 #define XISEL_MASK XISEL(0x3f, 0x1f) 1208 1588 1209 1589 /* An XL form instruction with the LK field set to 0. */ … … 1278 1658 #define XE_MASK (0xffff7fff) 1279 1659 1660 /* An X form user context instruction. */ 1661 #define XUC(op, xop) (OP (op) | (((unsigned long)(xop)) & 0x1f)) 1662 #define XUC_MASK XUC(0x3f, 0x1f) 1663 1280 1664 /* The BO encodings used in extended conditional branch mnemonics. */ 1281 1665 #define BODNZF (0x0) … … 1283 1667 #define BODZF (0x2) 1284 1668 #define BODZFP (0x3) 1285 #define BOF (0x4)1286 #define BOFP (0x5)1287 1669 #define BODNZT (0x8) 1288 1670 #define BODNZTP (0x9) 1289 1671 #define BODZT (0xa) 1290 1672 #define BODZTP (0xb) 1673 1674 #define BOF (0x4) 1675 #define BOFP (0x5) 1676 #define BOFM4 (0x6) 1677 #define BOFP4 (0x7) 1291 1678 #define BOT (0xc) 1292 1679 #define BOTP (0xd) 1680 #define BOTM4 (0xe) 1681 #define BOTP4 (0xf) 1682 1293 1683 #define BODNZ (0x10) 1294 1684 #define BODNZP (0x11) 1295 1685 #define BODZ (0x12) 1296 1686 #define BODZP (0x13) 1687 #define BODNZM4 (0x18) 1688 #define BODNZP4 (0x19) 1689 #define BODZM4 (0x1a) 1690 #define BODZP4 (0x1b) 1691 1297 1692 #define BOU (0x14) 1298 1693 … … 1327 1722 #define PPC PPC_OPCODE_PPC | PPC_OPCODE_ANY 1328 1723 #define PPCCOM PPC_OPCODE_PPC | PPC_OPCODE_COMMON | PPC_OPCODE_ANY 1329 #define PPC32 PPC_OPCODE_PPC | PPC_OPCODE_32 | PPC_OPCODE_ANY 1330 #define PPC64 PPC_OPCODE_PPC | PPC_OPCODE_64 | PPC_OPCODE_ANY 1724 #define NOPOWER4 PPC_OPCODE_NOPOWER4 | PPCCOM 1725 #define POWER4 PPC_OPCODE_POWER4 | PPCCOM 1726 #define PPC32 PPC_OPCODE_32 | PPC_OPCODE_PPC | PPC_OPCODE_ANY 1727 #define PPC64 PPC_OPCODE_64 | PPC_OPCODE_PPC | PPC_OPCODE_ANY 1331 1728 #define PPCONLY PPC_OPCODE_PPC 1332 #define PPC403 PPC 1729 #define PPC403 PPC_OPCODE_403 1333 1730 #define PPC405 PPC403 1334 1731 #define PPC750 PPC 1335 1732 #define PPC860 PPC 1336 #define PPCVEC PPC_OPCODE_ALTIVEC | PPC_OPCODE_ANY 1733 #define PPCVEC PPC_OPCODE_ALTIVEC | PPC_OPCODE_ANY | PPC_OPCODE_PPC 1337 1734 #define POWER PPC_OPCODE_POWER | PPC_OPCODE_ANY 1338 1735 #define POWER2 PPC_OPCODE_POWER | PPC_OPCODE_POWER2 | PPC_OPCODE_ANY … … 1344 1741 #define PWRCOM PPC_OPCODE_POWER | PPC_OPCODE_601 | PPC_OPCODE_COMMON | PPC_OPCODE_ANY 1345 1742 #define MFDEC1 PPC_OPCODE_POWER 1346 #define MFDEC2 PPC_OPCODE_PPC | PPC_OPCODE_601 1743 #define MFDEC2 PPC_OPCODE_PPC | PPC_OPCODE_601 | PPC_OPCODE_BOOKE 1744 #define BOOKE PPC_OPCODE_BOOKE 1745 #define BOOKE64 PPC_OPCODE_BOOKE64 1746 #define CLASSIC PPC_OPCODE_CLASSIC 1747 #define PPCSPE PPC_OPCODE_SPE 1748 #define PPCISEL PPC_OPCODE_ISEL 1749 #define PPCEFS PPC_OPCODE_EFS 1750 #define PPCBRLK PPC_OPCODE_BRLOCK 1751 #define PPCPMR PPC_OPCODE_PMR 1752 #define PPCCHLK PPC_OPCODE_CACHELCK 1753 #define PPCCHLK64 PPC_OPCODE_CACHELCK | PPC_OPCODE_BOOKE64 1754 #define PPCRFMCI PPC_OPCODE_RFMCI 1347 1755 1348 1756 … … 1498 1906 { "nmaclhwso.", XO(4,494,1,1), XO_MASK, PPC405, { RT, RA, RB } }, 1499 1907 { "mfvscr", VX(4, 1540), VX_MASK, PPCVEC, { VD } }, 1500 { "mtvscr", VX(4, 1604), VX_MASK, PPCVEC, { V D} },1908 { "mtvscr", VX(4, 1604), VX_MASK, PPCVEC, { VB } }, 1501 1909 { "vaddcuw", VX(4, 384), VX_MASK, PPCVEC, { VD, VA, VB } }, 1502 1910 { "vaddfp", VX(4, 10), VX_MASK, PPCVEC, { VD, VA, VB } }, … … 1550 1958 { "vexptefp", VX(4, 394), VX_MASK, PPCVEC, { VD, VB } }, 1551 1959 { "vlogefp", VX(4, 458), VX_MASK, PPCVEC, { VD, VB } }, 1552 { "vmaddfp", VXA(4, 46), VXA_MASK, PPCVEC, { VD, VA, V B, VC} },1960 { "vmaddfp", VXA(4, 46), VXA_MASK, PPCVEC, { VD, VA, VC, VB } }, 1553 1961 { "vmaxfp", VX(4, 1034), VX_MASK, PPCVEC, { VD, VA, VB } }, 1554 1962 { "vmaxsb", VX(4, 258), VX_MASK, PPCVEC, { VD, VA, VB } }, … … 1655 2063 { "vxor", VX(4, 1220), VX_MASK, PPCVEC, { VD, VA, VB } }, 1656 2064 2065 { "evaddw", VX(4, 512), VX_MASK, PPCSPE, { RS, RA, RB } }, 2066 { "evaddiw", VX(4, 514), VX_MASK, PPCSPE, { RS, RB, UIMM } }, 2067 { "evsubfw", VX(4, 516), VX_MASK, PPCSPE, { RS, RA, RB } }, 2068 { "evsubw", VX(4, 516), VX_MASK, PPCSPE, { RS, RB, RA } }, 2069 { "evsubifw", VX(4, 518), VX_MASK, PPCSPE, { RS, UIMM, RB } }, 2070 { "evsubiw", VX(4, 518), VX_MASK, PPCSPE, { RS, RB, UIMM } }, 2071 { "evabs", VX(4, 520), VX_MASK, PPCSPE, { RS, RA } }, 2072 { "evneg", VX(4, 521), VX_MASK, PPCSPE, { RS, RA } }, 2073 { "evextsb", VX(4, 522), VX_MASK, PPCSPE, { RS, RA } }, 2074 { "evextsh", VX(4, 523), VX_MASK, PPCSPE, { RS, RA } }, 2075 { "evrndw", VX(4, 524), VX_MASK, PPCSPE, { RS, RA } }, 2076 { "evcntlzw", VX(4, 525), VX_MASK, PPCSPE, { RS, RA } }, 2077 { "evcntlsw", VX(4, 526), VX_MASK, PPCSPE, { RS, RA } }, 2078 2079 { "brinc", VX(4, 527), VX_MASK, PPCSPE, { RS, RA, RB } }, 2080 2081 { "evand", VX(4, 529), VX_MASK, PPCSPE, { RS, RA, RB } }, 2082 { "evandc", VX(4, 530), VX_MASK, PPCSPE, { RS, RA, RB } }, 2083 { "evmr", VX(4, 535), VX_MASK, PPCSPE, { RS, RA, BBA } }, 2084 { "evor", VX(4, 535), VX_MASK, PPCSPE, { RS, RA, RB } }, 2085 { "evorc", VX(4, 539), VX_MASK, PPCSPE, { RS, RA, RB } }, 2086 { "evxor", VX(4, 534), VX_MASK, PPCSPE, { RS, RA, RB } }, 2087 { "eveqv", VX(4, 537), VX_MASK, PPCSPE, { RS, RA, RB } }, 2088 { "evnand", VX(4, 542), VX_MASK, PPCSPE, { RS, RA, RB } }, 2089 { "evnot", VX(4, 536), VX_MASK, PPCSPE, { RS, RA, BBA } }, 2090 { "evnor", VX(4, 536), VX_MASK, PPCSPE, { RS, RA, RB } }, 2091 2092 { "evrlw", VX(4, 552), VX_MASK, PPCSPE, { RS, RA, RB } }, 2093 { "evrlwi", VX(4, 554), VX_MASK, PPCSPE, { RS, RA, EVUIMM } }, 2094 { "evslw", VX(4, 548), VX_MASK, PPCSPE, { RS, RA, RB } }, 2095 { "evslwi", VX(4, 550), VX_MASK, PPCSPE, { RS, RA, EVUIMM } }, 2096 { "evsrws", VX(4, 545), VX_MASK, PPCSPE, { RS, RA, RB } }, 2097 { "evsrwu", VX(4, 544), VX_MASK, PPCSPE, { RS, RA, RB } }, 2098 { "evsrwis", VX(4, 547), VX_MASK, PPCSPE, { RS, RA, EVUIMM } }, 2099 { "evsrwiu", VX(4, 546), VX_MASK, PPCSPE, { RS, RA, EVUIMM } }, 2100 { "evsplati", VX(4, 553), VX_MASK, PPCSPE, { RS, SIMM } }, 2101 { "evsplatfi", VX(4, 555), VX_MASK, PPCSPE, { RS, SIMM } }, 2102 { "evmergehi", VX(4, 556), VX_MASK, PPCSPE, { RS, RA, RB } }, 2103 { "evmergelo", VX(4, 557), VX_MASK, PPCSPE, { RS, RA, RB } }, 2104 { "evmergehilo",VX(4,558), VX_MASK, PPCSPE, { RS, RA, RB } }, 2105 { "evmergelohi",VX(4,559), VX_MASK, PPCSPE, { RS, RA, RB } }, 2106 2107 { "evcmpgts", VX(4, 561), VX_MASK, PPCSPE, { CRFD, RA, RB } }, 2108 { "evcmpgtu", VX(4, 560), VX_MASK, PPCSPE, { CRFD, RA, RB } }, 2109 { "evcmplts", VX(4, 563), VX_MASK, PPCSPE, { CRFD, RA, RB } }, 2110 { "evcmpltu", VX(4, 562), VX_MASK, PPCSPE, { CRFD, RA, RB } }, 2111 { "evcmpeq", VX(4, 564), VX_MASK, PPCSPE, { CRFD, RA, RB } }, 2112 { "evsel", EVSEL(4,79),EVSEL_MASK, PPCSPE, { RS, RA, RB, CRFS } }, 2113 2114 { "evldd", VX(4, 769), VX_MASK, PPCSPE, { RS, EVUIMM_8, RA } }, 2115 { "evlddx", VX(4, 768), VX_MASK, PPCSPE, { RS, RA, RB } }, 2116 { "evldw", VX(4, 771), VX_MASK, PPCSPE, { RS, EVUIMM_8, RA } }, 2117 { "evldwx", VX(4, 770), VX_MASK, PPCSPE, { RS, RA, RB } }, 2118 { "evldh", VX(4, 773), VX_MASK, PPCSPE, { RS, EVUIMM_8, RA } }, 2119 { "evldhx", VX(4, 772), VX_MASK, PPCSPE, { RS, RA, RB } }, 2120 { "evlwhe", VX(4, 785), VX_MASK, PPCSPE, { RS, EVUIMM_4, RA } }, 2121 { "evlwhex", VX(4, 784), VX_MASK, PPCSPE, { RS, RA, RB } }, 2122 { "evlwhou", VX(4, 789), VX_MASK, PPCSPE, { RS, EVUIMM_4, RA } }, 2123 { "evlwhoux", VX(4, 788), VX_MASK, PPCSPE, { RS, RA, RB } }, 2124 { "evlwhos", VX(4, 791), VX_MASK, PPCSPE, { RS, EVUIMM_4, RA } }, 2125 { "evlwhosx", VX(4, 790), VX_MASK, PPCSPE, { RS, RA, RB } }, 2126 { "evlwwsplat",VX(4, 793), VX_MASK, PPCSPE, { RS, EVUIMM_4, RA } }, 2127 { "evlwwsplatx",VX(4, 792), VX_MASK, PPCSPE, { RS, RA, RB } }, 2128 { "evlwhsplat",VX(4, 797), VX_MASK, PPCSPE, { RS, EVUIMM_4, RA } }, 2129 { "evlwhsplatx",VX(4, 796), VX_MASK, PPCSPE, { RS, RA, RB } }, 2130 { "evlhhesplat",VX(4, 777), VX_MASK, PPCSPE, { RS, EVUIMM_2, RA } }, 2131 { "evlhhesplatx",VX(4, 776), VX_MASK, PPCSPE, { RS, RA, RB } }, 2132 { "evlhhousplat",VX(4, 781), VX_MASK, PPCSPE, { RS, EVUIMM_2, RA } }, 2133 { "evlhhousplatx",VX(4, 780), VX_MASK, PPCSPE, { RS, RA, RB } }, 2134 { "evlhhossplat",VX(4, 783), VX_MASK, PPCSPE, { RS, EVUIMM_2, RA } }, 2135 { "evlhhossplatx",VX(4, 782), VX_MASK, PPCSPE, { RS, RA, RB } }, 2136 2137 { "evstdd", VX(4, 801), VX_MASK, PPCSPE, { RS, EVUIMM_8, RA } }, 2138 { "evstddx", VX(4, 800), VX_MASK, PPCSPE, { RS, RA, RB } }, 2139 { "evstdw", VX(4, 803), VX_MASK, PPCSPE, { RS, EVUIMM_8, RA } }, 2140 { "evstdwx", VX(4, 802), VX_MASK, PPCSPE, { RS, RA, RB } }, 2141 { "evstdh", VX(4, 805), VX_MASK, PPCSPE, { RS, EVUIMM_8, RA } }, 2142 { "evstdhx", VX(4, 804), VX_MASK, PPCSPE, { RS, RA, RB } }, 2143 { "evstwwe", VX(4, 825), VX_MASK, PPCSPE, { RS, EVUIMM_4, RA } }, 2144 { "evstwwex", VX(4, 824), VX_MASK, PPCSPE, { RS, RA, RB } }, 2145 { "evstwwo", VX(4, 829), VX_MASK, PPCSPE, { RS, EVUIMM_4, RA } }, 2146 { "evstwwox", VX(4, 828), VX_MASK, PPCSPE, { RS, RA, RB } }, 2147 { "evstwhe", VX(4, 817), VX_MASK, PPCSPE, { RS, EVUIMM_4, RA } }, 2148 { "evstwhex", VX(4, 816), VX_MASK, PPCSPE, { RS, RA, RB } }, 2149 { "evstwho", VX(4, 821), VX_MASK, PPCSPE, { RS, EVUIMM_4, RA } }, 2150 { "evstwhox", VX(4, 820), VX_MASK, PPCSPE, { RS, RA, RB } }, 2151 2152 { "evfsabs", VX(4, 644), VX_MASK, PPCSPE, { RS, RA } }, 2153 { "evfsnabs", VX(4, 645), VX_MASK, PPCSPE, { RS, RA } }, 2154 { "evfsneg", VX(4, 646), VX_MASK, PPCSPE, { RS, RA } }, 2155 { "evfsadd", VX(4, 640), VX_MASK, PPCSPE, { RS, RA, RB } }, 2156 { "evfssub", VX(4, 641), VX_MASK, PPCSPE, { RS, RA, RB } }, 2157 { "evfsmul", VX(4, 648), VX_MASK, PPCSPE, { RS, RA, RB } }, 2158 { "evfsdiv", VX(4, 649), VX_MASK, PPCSPE, { RS, RA, RB } }, 2159 { "evfscmpgt", VX(4, 652), VX_MASK, PPCSPE, { CRFD, RA, RB } }, 2160 { "evfscmplt", VX(4, 653), VX_MASK, PPCSPE, { CRFD, RA, RB } }, 2161 { "evfscmpeq", VX(4, 654), VX_MASK, PPCSPE, { CRFD, RA, RB } }, 2162 { "evfststgt", VX(4, 668), VX_MASK, PPCSPE, { CRFD, RA, RB } }, 2163 { "evfststlt", VX(4, 669), VX_MASK, PPCSPE, { CRFD, RA, RB } }, 2164 { "evfststeq", VX(4, 670), VX_MASK, PPCSPE, { CRFD, RA, RB } }, 2165 { "evfscfui", VX(4, 656), VX_MASK, PPCSPE, { RS, RB } }, 2166 { "evfsctuiz", VX(4, 664), VX_MASK, PPCSPE, { RS, RB } }, 2167 { "evfscfsi", VX(4, 657), VX_MASK, PPCSPE, { RS, RB } }, 2168 { "evfscfuf", VX(4, 658), VX_MASK, PPCSPE, { RS, RB } }, 2169 { "evfscfsf", VX(4, 659), VX_MASK, PPCSPE, { RS, RB } }, 2170 { "evfsctui", VX(4, 660), VX_MASK, PPCSPE, { RS, RB } }, 2171 { "evfsctsi", VX(4, 661), VX_MASK, PPCSPE, { RS, RB } }, 2172 { "evfsctsiz", VX(4, 666), VX_MASK, PPCSPE, { RS, RB } }, 2173 { "evfsctuf", VX(4, 662), VX_MASK, PPCSPE, { RS, RB } }, 2174 { "evfsctsf", VX(4, 663), VX_MASK, PPCSPE, { RS, RB } }, 2175 2176 { "efsabs", VX(4, 708), VX_MASK, PPCEFS, { RS, RA } }, 2177 { "efsnabs", VX(4, 709), VX_MASK, PPCEFS, { RS, RA } }, 2178 { "efsneg", VX(4, 710), VX_MASK, PPCEFS, { RS, RA } }, 2179 { "efsadd", VX(4, 704), VX_MASK, PPCEFS, { RS, RA, RB } }, 2180 { "efssub", VX(4, 705), VX_MASK, PPCEFS, { RS, RA, RB } }, 2181 { "efsmul", VX(4, 712), VX_MASK, PPCEFS, { RS, RA, RB } }, 2182 { "efsdiv", VX(4, 713), VX_MASK, PPCEFS, { RS, RA, RB } }, 2183 { "efscmpgt", VX(4, 716), VX_MASK, PPCEFS, { CRFD, RA, RB } }, 2184 { "efscmplt", VX(4, 717), VX_MASK, PPCEFS, { CRFD, RA, RB } }, 2185 { "efscmpeq", VX(4, 718), VX_MASK, PPCEFS, { CRFD, RA, RB } }, 2186 { "efststgt", VX(4, 732), VX_MASK, PPCEFS, { CRFD, RA, RB } }, 2187 { "efststlt", VX(4, 733), VX_MASK, PPCEFS, { CRFD, RA, RB } }, 2188 { "efststeq", VX(4, 734), VX_MASK, PPCEFS, { CRFD, RA, RB } }, 2189 { "efscfui", VX(4, 720), VX_MASK, PPCEFS, { RS, RB } }, 2190 { "efsctuiz", VX(4, 728), VX_MASK, PPCEFS, { RS, RB } }, 2191 { "efscfsi", VX(4, 721), VX_MASK, PPCEFS, { RS, RB } }, 2192 { "efscfuf", VX(4, 722), VX_MASK, PPCEFS, { RS, RB } }, 2193 { "efscfsf", VX(4, 723), VX_MASK, PPCEFS, { RS, RB } }, 2194 { "efsctui", VX(4, 724), VX_MASK, PPCEFS, { RS, RB } }, 2195 { "efsctsi", VX(4, 725), VX_MASK, PPCEFS, { RS, RB } }, 2196 { "efsctsiz", VX(4, 730), VX_MASK, PPCEFS, { RS, RB } }, 2197 { "efsctuf", VX(4, 726), VX_MASK, PPCEFS, { RS, RB } }, 2198 { "efsctsf", VX(4, 727), VX_MASK, PPCEFS, { RS, RB } }, 2199 2200 { "evmhossf", VX(4, 1031), VX_MASK, PPCSPE, { RS, RA, RB } }, 2201 { "evmhossfa", VX(4, 1063), VX_MASK, PPCSPE, { RS, RA, RB } }, 2202 { "evmhosmf", VX(4, 1039), VX_MASK, PPCSPE, { RS, RA, RB } }, 2203 { "evmhosmfa", VX(4, 1071), VX_MASK, PPCSPE, { RS, RA, RB } }, 2204 { "evmhosmi", VX(4, 1037), VX_MASK, PPCSPE, { RS, RA, RB } }, 2205 { "evmhosmia", VX(4, 1069), VX_MASK, PPCSPE, { RS, RA, RB } }, 2206 { "evmhoumi", VX(4, 1036), VX_MASK, PPCSPE, { RS, RA, RB } }, 2207 { "evmhoumia", VX(4, 1068), VX_MASK, PPCSPE, { RS, RA, RB } }, 2208 { "evmhessf", VX(4, 1027), VX_MASK, PPCSPE, { RS, RA, RB } }, 2209 { "evmhessfa", VX(4, 1059), VX_MASK, PPCSPE, { RS, RA, RB } }, 2210 { "evmhesmf", VX(4, 1035), VX_MASK, PPCSPE, { RS, RA, RB } }, 2211 { "evmhesmfa", VX(4, 1067), VX_MASK, PPCSPE, { RS, RA, RB } }, 2212 { "evmhesmi", VX(4, 1033), VX_MASK, PPCSPE, { RS, RA, RB } }, 2213 { "evmhesmia", VX(4, 1065), VX_MASK, PPCSPE, { RS, RA, RB } }, 2214 { "evmheumi", VX(4, 1032), VX_MASK, PPCSPE, { RS, RA, RB } }, 2215 { "evmheumia", VX(4, 1064), VX_MASK, PPCSPE, { RS, RA, RB } }, 2216 2217 { "evmhossfaaw",VX(4, 1287), VX_MASK, PPCSPE, { RS, RA, RB } }, 2218 { "evmhossiaaw",VX(4, 1285), VX_MASK, PPCSPE, { RS, RA, RB } }, 2219 { "evmhosmfaaw",VX(4, 1295), VX_MASK, PPCSPE, { RS, RA, RB } }, 2220 { "evmhosmiaaw",VX(4, 1293), VX_MASK, PPCSPE, { RS, RA, RB } }, 2221 { "evmhousiaaw",VX(4, 1284), VX_MASK, PPCSPE, { RS, RA, RB } }, 2222 { "evmhoumiaaw",VX(4, 1292), VX_MASK, PPCSPE, { RS, RA, RB } }, 2223 { "evmhessfaaw",VX(4, 1283), VX_MASK, PPCSPE, { RS, RA, RB } }, 2224 { "evmhessiaaw",VX(4, 1281), VX_MASK, PPCSPE, { RS, RA, RB } }, 2225 { "evmhesmfaaw",VX(4, 1291), VX_MASK, PPCSPE, { RS, RA, RB } }, 2226 { "evmhesmiaaw",VX(4, 1289), VX_MASK, PPCSPE, { RS, RA, RB } }, 2227 { "evmheusiaaw",VX(4, 1280), VX_MASK, PPCSPE, { RS, RA, RB } }, 2228 { "evmheumiaaw",VX(4, 1288), VX_MASK, PPCSPE, { RS, RA, RB } }, 2229 2230 { "evmhossfanw",VX(4, 1415), VX_MASK, PPCSPE, { RS, RA, RB } }, 2231 { "evmhossianw",VX(4, 1413), VX_MASK, PPCSPE, { RS, RA, RB } }, 2232 { "evmhosmfanw",VX(4, 1423), VX_MASK, PPCSPE, { RS, RA, RB } }, 2233 { "evmhosmianw",VX(4, 1421), VX_MASK, PPCSPE, { RS, RA, RB } }, 2234 { "evmhousianw",VX(4, 1412), VX_MASK, PPCSPE, { RS, RA, RB } }, 2235 { "evmhoumianw",VX(4, 1420), VX_MASK, PPCSPE, { RS, RA, RB } }, 2236 { "evmhessfanw",VX(4, 1411), VX_MASK, PPCSPE, { RS, RA, RB } }, 2237 { "evmhessianw",VX(4, 1409), VX_MASK, PPCSPE, { RS, RA, RB } }, 2238 { "evmhesmfanw",VX(4, 1419), VX_MASK, PPCSPE, { RS, RA, RB } }, 2239 { "evmhesmianw",VX(4, 1417), VX_MASK, PPCSPE, { RS, RA, RB } }, 2240 { "evmheusianw",VX(4, 1408), VX_MASK, PPCSPE, { RS, RA, RB } }, 2241 { "evmheumianw",VX(4, 1416), VX_MASK, PPCSPE, { RS, RA, RB } }, 2242 2243 { "evmhogsmfaa",VX(4, 1327), VX_MASK, PPCSPE, { RS, RA, RB } }, 2244 { "evmhogsmiaa",VX(4, 1325), VX_MASK, PPCSPE, { RS, RA, RB } }, 2245 { "evmhogumiaa",VX(4, 1324), VX_MASK, PPCSPE, { RS, RA, RB } }, 2246 { "evmhegsmfaa",VX(4, 1323), VX_MASK, PPCSPE, { RS, RA, RB } }, 2247 { "evmhegsmiaa",VX(4, 1321), VX_MASK, PPCSPE, { RS, RA, RB } }, 2248 { "evmhegumiaa",VX(4, 1320), VX_MASK, PPCSPE, { RS, RA, RB } }, 2249 2250 { "evmhogsmfan",VX(4, 1455), VX_MASK, PPCSPE, { RS, RA, RB } }, 2251 { "evmhogsmian",VX(4, 1453), VX_MASK, PPCSPE, { RS, RA, RB } }, 2252 { "evmhogumian",VX(4, 1452), VX_MASK, PPCSPE, { RS, RA, RB } }, 2253 { "evmhegsmfan",VX(4, 1451), VX_MASK, PPCSPE, { RS, RA, RB } }, 2254 { "evmhegsmian",VX(4, 1449), VX_MASK, PPCSPE, { RS, RA, RB } }, 2255 { "evmhegumian",VX(4, 1448), VX_MASK, PPCSPE, { RS, RA, RB } }, 2256 2257 { "evmwhssf", VX(4, 1095), VX_MASK, PPCSPE, { RS, RA, RB } }, 2258 { "evmwhssfa", VX(4, 1127), VX_MASK, PPCSPE, { RS, RA, RB } }, 2259 { "evmwhsmf", VX(4, 1103), VX_MASK, PPCSPE, { RS, RA, RB } }, 2260 { "evmwhsmfa", VX(4, 1135), VX_MASK, PPCSPE, { RS, RA, RB } }, 2261 { "evmwhsmi", VX(4, 1101), VX_MASK, PPCSPE, { RS, RA, RB } }, 2262 { "evmwhsmia", VX(4, 1133), VX_MASK, PPCSPE, { RS, RA, RB } }, 2263 { "evmwhumi", VX(4, 1100), VX_MASK, PPCSPE, { RS, RA, RB } }, 2264 { "evmwhumia", VX(4, 1132), VX_MASK, PPCSPE, { RS, RA, RB } }, 2265 2266 { "evmwlumi", VX(4, 1096), VX_MASK, PPCSPE, { RS, RA, RB } }, 2267 { "evmwlumia", VX(4, 1128), VX_MASK, PPCSPE, { RS, RA, RB } }, 2268 2269 { "evmwlssiaaw",VX(4, 1345), VX_MASK, PPCSPE, { RS, RA, RB } }, 2270 { "evmwlsmiaaw",VX(4, 1353), VX_MASK, PPCSPE, { RS, RA, RB } }, 2271 { "evmwlusiaaw",VX(4, 1344), VX_MASK, PPCSPE, { RS, RA, RB } }, 2272 { "evmwlumiaaw",VX(4, 1352), VX_MASK, PPCSPE, { RS, RA, RB } }, 2273 2274 { "evmwlssianw",VX(4, 1473), VX_MASK, PPCSPE, { RS, RA, RB } }, 2275 { "evmwlsmianw",VX(4, 1481), VX_MASK, PPCSPE, { RS, RA, RB } }, 2276 { "evmwlusianw",VX(4, 1472), VX_MASK, PPCSPE, { RS, RA, RB } }, 2277 { "evmwlumianw",VX(4, 1480), VX_MASK, PPCSPE, { RS, RA, RB } }, 2278 2279 { "evmwssf", VX(4, 1107), VX_MASK, PPCSPE, { RS, RA, RB } }, 2280 { "evmwssfa", VX(4, 1139), VX_MASK, PPCSPE, { RS, RA, RB } }, 2281 { "evmwsmf", VX(4, 1115), VX_MASK, PPCSPE, { RS, RA, RB } }, 2282 { "evmwsmfa", VX(4, 1147), VX_MASK, PPCSPE, { RS, RA, RB } }, 2283 { "evmwsmi", VX(4, 1113), VX_MASK, PPCSPE, { RS, RA, RB } }, 2284 { "evmwsmia", VX(4, 1145), VX_MASK, PPCSPE, { RS, RA, RB } }, 2285 { "evmwumi", VX(4, 1112), VX_MASK, PPCSPE, { RS, RA, RB } }, 2286 { "evmwumia", VX(4, 1144), VX_MASK, PPCSPE, { RS, RA, RB } }, 2287 2288 { "evmwssfaa", VX(4, 1363), VX_MASK, PPCSPE, { RS, RA, RB } }, 2289 { "evmwsmfaa", VX(4, 1371), VX_MASK, PPCSPE, { RS, RA, RB } }, 2290 { "evmwsmiaa", VX(4, 1369), VX_MASK, PPCSPE, { RS, RA, RB } }, 2291 { "evmwumiaa", VX(4, 1368), VX_MASK, PPCSPE, { RS, RA, RB } }, 2292 2293 { "evmwssfan", VX(4, 1491), VX_MASK, PPCSPE, { RS, RA, RB } }, 2294 { "evmwsmfan", VX(4, 1499), VX_MASK, PPCSPE, { RS, RA, RB } }, 2295 { "evmwsmian", VX(4, 1497), VX_MASK, PPCSPE, { RS, RA, RB } }, 2296 { "evmwumian", VX(4, 1496), VX_MASK, PPCSPE, { RS, RA, RB } }, 2297 2298 { "evaddssiaaw",VX(4, 1217), VX_MASK, PPCSPE, { RS, RA } }, 2299 { "evaddsmiaaw",VX(4, 1225), VX_MASK, PPCSPE, { RS, RA } }, 2300 { "evaddusiaaw",VX(4, 1216), VX_MASK, PPCSPE, { RS, RA } }, 2301 { "evaddumiaaw",VX(4, 1224), VX_MASK, PPCSPE, { RS, RA } }, 2302 2303 { "evsubfssiaaw",VX(4, 1219), VX_MASK, PPCSPE, { RS, RA } }, 2304 { "evsubfsmiaaw",VX(4, 1227), VX_MASK, PPCSPE, { RS, RA } }, 2305 { "evsubfusiaaw",VX(4, 1218), VX_MASK, PPCSPE, { RS, RA } }, 2306 { "evsubfumiaaw",VX(4, 1226), VX_MASK, PPCSPE, { RS, RA } }, 2307 2308 { "evmra", VX(4, 1220), VX_MASK, PPCSPE, { RS, RA } }, 2309 2310 { "evdivws", VX(4, 1222), VX_MASK, PPCSPE, { RS, RA, RB } }, 2311 { "evdivwu", VX(4, 1223), VX_MASK, PPCSPE, { RS, RA, RB } }, 2312 1657 2313 { "mulli", OP(7), OP_MASK, PPCCOM, { RT, RA, SI } }, 1658 2314 { "muli", OP(7), OP_MASK, PWRCOM, { RT, RA, SI } }, … … 1662 2318 1663 2319 { "dozi", OP(9), OP_MASK, M601, { RT, RA, SI } }, 2320 2321 { "bce", B(9,0,0), B_MASK, BOOKE64, { BO, BI, BD } }, 2322 { "bcel", B(9,0,1), B_MASK, BOOKE64, { BO, BI, BD } }, 2323 { "bcea", B(9,1,0), B_MASK, BOOKE64, { BO, BI, BDA } }, 2324 { "bcela", B(9,1,1), B_MASK, BOOKE64, { BO, BI, BDA } }, 1664 2325 1665 2326 { "cmplwi", OPL(10,0), OPL_MASK, PPCCOM, { OBF, RA, UI } }, … … 1694 2355 { "subis", OP(15), OP_MASK, PPCCOM, { RT, RA, NSI } }, 1695 2356 1696 { "bdnz-", BBO(16,BODNZ,0,0), BBOYBI_MASK, PPCCOM, { BDM } },1697 { "bdnz+", BBO(16,BODNZ,0,0), BBOYBI_MASK, PPCCOM, { BDP } },1698 { "bdnz", BBO(16,BODNZ,0,0), BBOYBI_MASK, PPCCOM, { BD } },1699 { "bdn", BBO(16,BODNZ,0,0), BBOYBI_MASK, PWRCOM, { BD } },1700 { "bdnzl-", BBO(16,BODNZ,0,1), BBOYBI_MASK, PPCCOM, { BDM } },1701 { "bdnzl+", BBO(16,BODNZ,0,1), BBOYBI_MASK, PPCCOM, { BDP } },1702 { "bdnzl", BBO(16,BODNZ,0,1), BBOYBI_MASK, PPCCOM, { BD } },1703 { "bdnl", BBO(16,BODNZ,0,1), BBOYBI_MASK, PWRCOM, { BD } },1704 { "bdnza-", BBO(16,BODNZ,1,0), BBOYBI_MASK, PPCCOM, { BDMA } },1705 { "bdnza+", BBO(16,BODNZ,1,0), BBOYBI_MASK, PPCCOM, { BDPA } },1706 { "bdnza", BBO(16,BODNZ,1,0), BBOYBI_MASK, PPCCOM, { BDA } },1707 { "bdna", BBO(16,BODNZ,1,0), BBOYBI_MASK, PWRCOM, { BDA } },1708 { "bdnzla-", BBO(16,BODNZ,1,1), BBOYBI_MASK, PPCCOM, { BDMA } },1709 { "bdnzla+", BBO(16,BODNZ,1,1), BBOYBI_MASK, PPCCOM, { BDPA } },1710 { "bdnzla", BBO(16,BODNZ,1,1), BBOYBI_MASK, PPCCOM, { BDA } },1711 { "bdnla", BBO(16,BODNZ,1,1), BBOYBI_MASK, PWRCOM, { BDA } },1712 { "bdz-", BBO(16,BODZ,0,0), BBOYBI_MASK, PPCCOM, { BDM } },1713 { "bdz+", BBO(16,BODZ,0,0), BBOYBI_MASK, PPCCOM, { BDP } },1714 { "bdz", BBO(16,BODZ,0,0), BBOYBI_MASK, COM,{ BD } },1715 { "bdzl-", BBO(16,BODZ,0,1), BBOYBI_MASK, PPCCOM, { BDM } },1716 { "bdzl+", BBO(16,BODZ,0,1), BBOYBI_MASK, PPCCOM, { BDP } },1717 { "bdzl", BBO(16,BODZ,0,1), BBOYBI_MASK, COM,{ BD } },1718 { "bdza-", BBO(16,BODZ,1,0), BBOYBI_MASK, PPCCOM, { BDMA } },1719 { "bdza+", BBO(16,BODZ,1,0), BBOYBI_MASK, PPCCOM, { BDPA } },1720 { "bdza", BBO(16,BODZ,1,0), BBOYBI_MASK, COM,{ BDA } },1721 { "bdzla-", BBO(16,BODZ,1,1), BBOYBI_MASK, PPCCOM, { BDMA } },1722 { "bdzla+", BBO(16,BODZ,1,1), BBOYBI_MASK, PPCCOM, { BDPA } },1723 { "bdzla", BBO(16,BODZ,1,1), BBOYBI_MASK, COM,{ BDA } },1724 { "blt-", BBOCB(16,BOT,CBLT,0,0), BBO YCB_MASK, PPCCOM, { CR, BDM } },1725 { "blt+", BBOCB(16,BOT,CBLT,0,0), BBO YCB_MASK, PPCCOM, { CR, BDP } },1726 { "blt", BBOCB(16,BOT,CBLT,0,0), BBO YCB_MASK, COM, { CR, BD } },1727 { "bltl-", BBOCB(16,BOT,CBLT,0,1), BBO YCB_MASK, PPCCOM, { CR, BDM } },1728 { "bltl+", BBOCB(16,BOT,CBLT,0,1), BBO YCB_MASK, PPCCOM, { CR, BDP } },1729 { "bltl", BBOCB(16,BOT,CBLT,0,1), BBO YCB_MASK, COM, { CR, BD } },1730 { "blta-", BBOCB(16,BOT,CBLT,1,0), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1731 { "blta+", BBOCB(16,BOT,CBLT,1,0), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1732 { "blta", BBOCB(16,BOT,CBLT,1,0), BBO YCB_MASK, COM, { CR, BDA } },1733 { "bltla-", BBOCB(16,BOT,CBLT,1,1), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1734 { "bltla+", BBOCB(16,BOT,CBLT,1,1), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1735 { "bltla", BBOCB(16,BOT,CBLT,1,1), BBO YCB_MASK, COM, { CR, BDA } },1736 { "bgt-", BBOCB(16,BOT,CBGT,0,0), BBO YCB_MASK, PPCCOM, { CR, BDM } },1737 { "bgt+", BBOCB(16,BOT,CBGT,0,0), BBO YCB_MASK, PPCCOM, { CR, BDP } },1738 { "bgt", BBOCB(16,BOT,CBGT,0,0), BBO YCB_MASK, COM, { CR, BD } },1739 { "bgtl-", BBOCB(16,BOT,CBGT,0,1), BBO YCB_MASK, PPCCOM, { CR, BDM } },1740 { "bgtl+", BBOCB(16,BOT,CBGT,0,1), BBO YCB_MASK, PPCCOM, { CR, BDP } },1741 { "bgtl", BBOCB(16,BOT,CBGT,0,1), BBO YCB_MASK, COM, { CR, BD } },1742 { "bgta-", BBOCB(16,BOT,CBGT,1,0), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1743 { "bgta+", BBOCB(16,BOT,CBGT,1,0), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1744 { "bgta", BBOCB(16,BOT,CBGT,1,0), BBO YCB_MASK, COM, { CR, BDA } },1745 { "bgtla-", BBOCB(16,BOT,CBGT,1,1), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1746 { "bgtla+", BBOCB(16,BOT,CBGT,1,1), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1747 { "bgtla", BBOCB(16,BOT,CBGT,1,1), BBO YCB_MASK, COM, { CR, BDA } },1748 { "beq-", BBOCB(16,BOT,CBEQ,0,0), BBO YCB_MASK, PPCCOM, { CR, BDM } },1749 { "beq+", BBOCB(16,BOT,CBEQ,0,0), BBO YCB_MASK, PPCCOM, { CR, BDP } },1750 { "beq", BBOCB(16,BOT,CBEQ,0,0), BBO YCB_MASK, COM, { CR, BD } },1751 { "beql-", BBOCB(16,BOT,CBEQ,0,1), BBO YCB_MASK, PPCCOM, { CR, BDM } },1752 { "beql+", BBOCB(16,BOT,CBEQ,0,1), BBO YCB_MASK, PPCCOM, { CR, BDP } },1753 { "beql", BBOCB(16,BOT,CBEQ,0,1), BBO YCB_MASK, COM, { CR, BD } },1754 { "beqa-", BBOCB(16,BOT,CBEQ,1,0), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1755 { "beqa+", BBOCB(16,BOT,CBEQ,1,0), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1756 { "beqa", BBOCB(16,BOT,CBEQ,1,0), BBO YCB_MASK, COM, { CR, BDA } },1757 { "beqla-", BBOCB(16,BOT,CBEQ,1,1), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1758 { "beqla+", BBOCB(16,BOT,CBEQ,1,1), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1759 { "beqla", BBOCB(16,BOT,CBEQ,1,1), BBO YCB_MASK, COM, { CR, BDA } },1760 { "bso-", BBOCB(16,BOT,CBSO,0,0), BBO YCB_MASK, PPCCOM, { CR, BDM } },1761 { "bso+", BBOCB(16,BOT,CBSO,0,0), BBO YCB_MASK, PPCCOM, { CR, BDP } },1762 { "bso", BBOCB(16,BOT,CBSO,0,0), BBO YCB_MASK, COM, { CR, BD } },1763 { "bsol-", BBOCB(16,BOT,CBSO,0,1), BBO YCB_MASK, PPCCOM, { CR, BDM } },1764 { "bsol+", BBOCB(16,BOT,CBSO,0,1), BBO YCB_MASK, PPCCOM, { CR, BDP } },1765 { "bsol", BBOCB(16,BOT,CBSO,0,1), BBO YCB_MASK, COM, { CR, BD } },1766 { "bsoa-", BBOCB(16,BOT,CBSO,1,0), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1767 { "bsoa+", BBOCB(16,BOT,CBSO,1,0), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1768 { "bsoa", BBOCB(16,BOT,CBSO,1,0), BBO YCB_MASK, COM, { CR, BDA } },1769 { "bsola-", BBOCB(16,BOT,CBSO,1,1), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1770 { "bsola+", BBOCB(16,BOT,CBSO,1,1), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1771 { "bsola", BBOCB(16,BOT,CBSO,1,1), BBO YCB_MASK, COM, { CR, BDA } },1772 { "bun-", BBOCB(16,BOT,CBSO,0,0), BBO YCB_MASK, PPCCOM, { CR, BDM } },1773 { "bun+", BBOCB(16,BOT,CBSO,0,0), BBO YCB_MASK, PPCCOM, { CR, BDP } },1774 { "bun", BBOCB(16,BOT,CBSO,0,0), BBO YCB_MASK, PPCCOM, { CR, BD } },1775 { "bunl-", BBOCB(16,BOT,CBSO,0,1), BBO YCB_MASK, PPCCOM, { CR, BDM } },1776 { "bunl+", BBOCB(16,BOT,CBSO,0,1), BBO YCB_MASK, PPCCOM, { CR, BDP } },1777 { "bunl", BBOCB(16,BOT,CBSO,0,1), BBO YCB_MASK, PPCCOM, { CR, BD } },1778 { "buna-", BBOCB(16,BOT,CBSO,1,0), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1779 { "buna+", BBOCB(16,BOT,CBSO,1,0), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1780 { "buna", BBOCB(16,BOT,CBSO,1,0), BBO YCB_MASK, PPCCOM, { CR, BDA } },1781 { "bunla-", BBOCB(16,BOT,CBSO,1,1), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1782 { "bunla+", BBOCB(16,BOT,CBSO,1,1), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1783 { "bunla", BBOCB(16,BOT,CBSO,1,1), BBO YCB_MASK, PPCCOM, { CR, BDA } },1784 { "bge-", BBOCB(16,BOF,CBLT,0,0), BBO YCB_MASK, PPCCOM, { CR, BDM } },1785 { "bge+", BBOCB(16,BOF,CBLT,0,0), BBO YCB_MASK, PPCCOM, { CR, BDP } },1786 { "bge", BBOCB(16,BOF,CBLT,0,0), BBO YCB_MASK, COM, { CR, BD } },1787 { "bgel-", BBOCB(16,BOF,CBLT,0,1), BBO YCB_MASK, PPCCOM, { CR, BDM } },1788 { "bgel+", BBOCB(16,BOF,CBLT,0,1), BBO YCB_MASK, PPCCOM, { CR, BDP } },1789 { "bgel", BBOCB(16,BOF,CBLT,0,1), BBO YCB_MASK, COM, { CR, BD } },1790 { "bgea-", BBOCB(16,BOF,CBLT,1,0), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1791 { "bgea+", BBOCB(16,BOF,CBLT,1,0), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1792 { "bgea", BBOCB(16,BOF,CBLT,1,0), BBO YCB_MASK, COM, { CR, BDA } },1793 { "bgela-", BBOCB(16,BOF,CBLT,1,1), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1794 { "bgela+", BBOCB(16,BOF,CBLT,1,1), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1795 { "bgela", BBOCB(16,BOF,CBLT,1,1), BBO YCB_MASK, COM, { CR, BDA } },1796 { "bnl-", BBOCB(16,BOF,CBLT,0,0), BBO YCB_MASK, PPCCOM, { CR, BDM } },1797 { "bnl+", BBOCB(16,BOF,CBLT,0,0), BBO YCB_MASK, PPCCOM, { CR, BDP } },1798 { "bnl", BBOCB(16,BOF,CBLT,0,0), BBO YCB_MASK, COM, { CR, BD } },1799 { "bnll-", BBOCB(16,BOF,CBLT,0,1), BBO YCB_MASK, PPCCOM, { CR, BDM } },1800 { "bnll+", BBOCB(16,BOF,CBLT,0,1), BBO YCB_MASK, PPCCOM, { CR, BDP } },1801 { "bnll", BBOCB(16,BOF,CBLT,0,1), BBO YCB_MASK, COM, { CR, BD } },1802 { "bnla-", BBOCB(16,BOF,CBLT,1,0), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1803 { "bnla+", BBOCB(16,BOF,CBLT,1,0), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1804 { "bnla", BBOCB(16,BOF,CBLT,1,0), BBO YCB_MASK, COM, { CR, BDA } },1805 { "bnlla-", BBOCB(16,BOF,CBLT,1,1), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1806 { "bnlla+", BBOCB(16,BOF,CBLT,1,1), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1807 { "bnlla", BBOCB(16,BOF,CBLT,1,1), BBO YCB_MASK, COM, { CR, BDA } },1808 { "ble-", BBOCB(16,BOF,CBGT,0,0), BBO YCB_MASK, PPCCOM, { CR, BDM } },1809 { "ble+", BBOCB(16,BOF,CBGT,0,0), BBO YCB_MASK, PPCCOM, { CR, BDP } },1810 { "ble", BBOCB(16,BOF,CBGT,0,0), BBO YCB_MASK, COM, { CR, BD } },1811 { "blel-", BBOCB(16,BOF,CBGT,0,1), BBO YCB_MASK, PPCCOM, { CR, BDM } },1812 { "blel+", BBOCB(16,BOF,CBGT,0,1), BBO YCB_MASK, PPCCOM, { CR, BDP } },1813 { "blel", BBOCB(16,BOF,CBGT,0,1), BBO YCB_MASK, COM, { CR, BD } },1814 { "blea-", BBOCB(16,BOF,CBGT,1,0), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1815 { "blea+", BBOCB(16,BOF,CBGT,1,0), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1816 { "blea", BBOCB(16,BOF,CBGT,1,0), BBO YCB_MASK, COM, { CR, BDA } },1817 { "blela-", BBOCB(16,BOF,CBGT,1,1), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1818 { "blela+", BBOCB(16,BOF,CBGT,1,1), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1819 { "blela", BBOCB(16,BOF,CBGT,1,1), BBO YCB_MASK, COM, { CR, BDA } },1820 { "bng-", BBOCB(16,BOF,CBGT,0,0), BBO YCB_MASK, PPCCOM, { CR, BDM } },1821 { "bng+", BBOCB(16,BOF,CBGT,0,0), BBO YCB_MASK, PPCCOM, { CR, BDP } },1822 { "bng", BBOCB(16,BOF,CBGT,0,0), BBO YCB_MASK, COM, { CR, BD } },1823 { "bngl-", BBOCB(16,BOF,CBGT,0,1), BBO YCB_MASK, PPCCOM, { CR, BDM } },1824 { "bngl+", BBOCB(16,BOF,CBGT,0,1), BBO YCB_MASK, PPCCOM, { CR, BDP } },1825 { "bngl", BBOCB(16,BOF,CBGT,0,1), BBO YCB_MASK, COM, { CR, BD } },1826 { "bnga-", BBOCB(16,BOF,CBGT,1,0), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1827 { "bnga+", BBOCB(16,BOF,CBGT,1,0), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1828 { "bnga", BBOCB(16,BOF,CBGT,1,0), BBO YCB_MASK, COM, { CR, BDA } },1829 { "bngla-", BBOCB(16,BOF,CBGT,1,1), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1830 { "bngla+", BBOCB(16,BOF,CBGT,1,1), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1831 { "bngla", BBOCB(16,BOF,CBGT,1,1), BBO YCB_MASK, COM, { CR, BDA } },1832 { "bne-", BBOCB(16,BOF,CBEQ,0,0), BBO YCB_MASK, PPCCOM, { CR, BDM } },1833 { "bne+", BBOCB(16,BOF,CBEQ,0,0), BBO YCB_MASK, PPCCOM, { CR, BDP } },1834 { "bne", BBOCB(16,BOF,CBEQ,0,0), BBO YCB_MASK, COM, { CR, BD } },1835 { "bnel-", BBOCB(16,BOF,CBEQ,0,1), BBO YCB_MASK, PPCCOM, { CR, BDM } },1836 { "bnel+", BBOCB(16,BOF,CBEQ,0,1), BBO YCB_MASK, PPCCOM, { CR, BDP } },1837 { "bnel", BBOCB(16,BOF,CBEQ,0,1), BBO YCB_MASK, COM, { CR, BD } },1838 { "bnea-", BBOCB(16,BOF,CBEQ,1,0), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1839 { "bnea+", BBOCB(16,BOF,CBEQ,1,0), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1840 { "bnea", BBOCB(16,BOF,CBEQ,1,0), BBO YCB_MASK, COM, { CR, BDA } },1841 { "bnela-", BBOCB(16,BOF,CBEQ,1,1), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1842 { "bnela+", BBOCB(16,BOF,CBEQ,1,1), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1843 { "bnela", BBOCB(16,BOF,CBEQ,1,1), BBO YCB_MASK, COM, { CR, BDA } },1844 { "bns-", BBOCB(16,BOF,CBSO,0,0), BBO YCB_MASK, PPCCOM, { CR, BDM } },1845 { "bns+", BBOCB(16,BOF,CBSO,0,0), BBO YCB_MASK, PPCCOM, { CR, BDP } },1846 { "bns", BBOCB(16,BOF,CBSO,0,0), BBO YCB_MASK, COM, { CR, BD } },1847 { "bnsl-", BBOCB(16,BOF,CBSO,0,1), BBO YCB_MASK, PPCCOM, { CR, BDM } },1848 { "bnsl+", BBOCB(16,BOF,CBSO,0,1), BBO YCB_MASK, PPCCOM, { CR, BDP } },1849 { "bnsl", BBOCB(16,BOF,CBSO,0,1), BBO YCB_MASK, COM, { CR, BD } },1850 { "bnsa-", BBOCB(16,BOF,CBSO,1,0), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1851 { "bnsa+", BBOCB(16,BOF,CBSO,1,0), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1852 { "bnsa", BBOCB(16,BOF,CBSO,1,0), BBO YCB_MASK, COM, { CR, BDA } },1853 { "bnsla-", BBOCB(16,BOF,CBSO,1,1), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1854 { "bnsla+", BBOCB(16,BOF,CBSO,1,1), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1855 { "bnsla", BBOCB(16,BOF,CBSO,1,1), BBO YCB_MASK, COM, { CR, BDA } },1856 { "bnu-", BBOCB(16,BOF,CBSO,0,0), BBO YCB_MASK, PPCCOM, { CR, BDM } },1857 { "bnu+", BBOCB(16,BOF,CBSO,0,0), BBO YCB_MASK, PPCCOM, { CR, BDP } },1858 { "bnu", BBOCB(16,BOF,CBSO,0,0), BBO YCB_MASK, PPCCOM, { CR, BD } },1859 { "bnul-", BBOCB(16,BOF,CBSO,0,1), BBO YCB_MASK, PPCCOM, { CR, BDM } },1860 { "bnul+", BBOCB(16,BOF,CBSO,0,1), BBO YCB_MASK, PPCCOM, { CR, BDP } },1861 { "bnul", BBOCB(16,BOF,CBSO,0,1), BBO YCB_MASK, PPCCOM, { CR, BD } },1862 { "bnua-", BBOCB(16,BOF,CBSO,1,0), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1863 { "bnua+", BBOCB(16,BOF,CBSO,1,0), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1864 { "bnua", BBOCB(16,BOF,CBSO,1,0), BBO YCB_MASK, PPCCOM, { CR, BDA } },1865 { "bnula-", BBOCB(16,BOF,CBSO,1,1), BBO YCB_MASK, PPCCOM, { CR, BDMA } },1866 { "bnula+", BBOCB(16,BOF,CBSO,1,1), BBO YCB_MASK, PPCCOM, { CR, BDPA } },1867 { "bnula", BBOCB(16,BOF,CBSO,1,1), BBO YCB_MASK, PPCCOM, { CR, BDA } },1868 { "bdnzt-", BBO(16,BODNZT,0,0), BBOY_MASK, PPCCOM, { BI, BDM } },1869 { "bdnzt+", BBO(16,BODNZT,0,0), BBOY_MASK, PPCCOM, { BI, BDP } },2357 { "bdnz-", BBO(16,BODNZ,0,0), BBOATBI_MASK, PPCCOM, { BDM } }, 2358 { "bdnz+", BBO(16,BODNZ,0,0), BBOATBI_MASK, PPCCOM, { BDP } }, 2359 { "bdnz", BBO(16,BODNZ,0,0), BBOATBI_MASK, PPCCOM, { BD } }, 2360 { "bdn", BBO(16,BODNZ,0,0), BBOATBI_MASK, PWRCOM, { BD } }, 2361 { "bdnzl-", BBO(16,BODNZ,0,1), BBOATBI_MASK, PPCCOM, { BDM } }, 2362 { "bdnzl+", BBO(16,BODNZ,0,1), BBOATBI_MASK, PPCCOM, { BDP } }, 2363 { "bdnzl", BBO(16,BODNZ,0,1), BBOATBI_MASK, PPCCOM, { BD } }, 2364 { "bdnl", BBO(16,BODNZ,0,1), BBOATBI_MASK, PWRCOM, { BD } }, 2365 { "bdnza-", BBO(16,BODNZ,1,0), BBOATBI_MASK, PPCCOM, { BDMA } }, 2366 { "bdnza+", BBO(16,BODNZ,1,0), BBOATBI_MASK, PPCCOM, { BDPA } }, 2367 { "bdnza", BBO(16,BODNZ,1,0), BBOATBI_MASK, PPCCOM, { BDA } }, 2368 { "bdna", BBO(16,BODNZ,1,0), BBOATBI_MASK, PWRCOM, { BDA } }, 2369 { "bdnzla-", BBO(16,BODNZ,1,1), BBOATBI_MASK, PPCCOM, { BDMA } }, 2370 { "bdnzla+", BBO(16,BODNZ,1,1), BBOATBI_MASK, PPCCOM, { BDPA } }, 2371 { "bdnzla", BBO(16,BODNZ,1,1), BBOATBI_MASK, PPCCOM, { BDA } }, 2372 { "bdnla", BBO(16,BODNZ,1,1), BBOATBI_MASK, PWRCOM, { BDA } }, 2373 { "bdz-", BBO(16,BODZ,0,0), BBOATBI_MASK, PPCCOM, { BDM } }, 2374 { "bdz+", BBO(16,BODZ,0,0), BBOATBI_MASK, PPCCOM, { BDP } }, 2375 { "bdz", BBO(16,BODZ,0,0), BBOATBI_MASK, COM, { BD } }, 2376 { "bdzl-", BBO(16,BODZ,0,1), BBOATBI_MASK, PPCCOM, { BDM } }, 2377 { "bdzl+", BBO(16,BODZ,0,1), BBOATBI_MASK, PPCCOM, { BDP } }, 2378 { "bdzl", BBO(16,BODZ,0,1), BBOATBI_MASK, COM, { BD } }, 2379 { "bdza-", BBO(16,BODZ,1,0), BBOATBI_MASK, PPCCOM, { BDMA } }, 2380 { "bdza+", BBO(16,BODZ,1,0), BBOATBI_MASK, PPCCOM, { BDPA } }, 2381 { "bdza", BBO(16,BODZ,1,0), BBOATBI_MASK, COM, { BDA } }, 2382 { "bdzla-", BBO(16,BODZ,1,1), BBOATBI_MASK, PPCCOM, { BDMA } }, 2383 { "bdzla+", BBO(16,BODZ,1,1), BBOATBI_MASK, PPCCOM, { BDPA } }, 2384 { "bdzla", BBO(16,BODZ,1,1), BBOATBI_MASK, COM, { BDA } }, 2385 { "blt-", BBOCB(16,BOT,CBLT,0,0), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2386 { "blt+", BBOCB(16,BOT,CBLT,0,0), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2387 { "blt", BBOCB(16,BOT,CBLT,0,0), BBOATCB_MASK, COM, { CR, BD } }, 2388 { "bltl-", BBOCB(16,BOT,CBLT,0,1), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2389 { "bltl+", BBOCB(16,BOT,CBLT,0,1), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2390 { "bltl", BBOCB(16,BOT,CBLT,0,1), BBOATCB_MASK, COM, { CR, BD } }, 2391 { "blta-", BBOCB(16,BOT,CBLT,1,0), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2392 { "blta+", BBOCB(16,BOT,CBLT,1,0), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2393 { "blta", BBOCB(16,BOT,CBLT,1,0), BBOATCB_MASK, COM, { CR, BDA } }, 2394 { "bltla-", BBOCB(16,BOT,CBLT,1,1), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2395 { "bltla+", BBOCB(16,BOT,CBLT,1,1), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2396 { "bltla", BBOCB(16,BOT,CBLT,1,1), BBOATCB_MASK, COM, { CR, BDA } }, 2397 { "bgt-", BBOCB(16,BOT,CBGT,0,0), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2398 { "bgt+", BBOCB(16,BOT,CBGT,0,0), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2399 { "bgt", BBOCB(16,BOT,CBGT,0,0), BBOATCB_MASK, COM, { CR, BD } }, 2400 { "bgtl-", BBOCB(16,BOT,CBGT,0,1), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2401 { "bgtl+", BBOCB(16,BOT,CBGT,0,1), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2402 { "bgtl", BBOCB(16,BOT,CBGT,0,1), BBOATCB_MASK, COM, { CR, BD } }, 2403 { "bgta-", BBOCB(16,BOT,CBGT,1,0), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2404 { "bgta+", BBOCB(16,BOT,CBGT,1,0), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2405 { "bgta", BBOCB(16,BOT,CBGT,1,0), BBOATCB_MASK, COM, { CR, BDA } }, 2406 { "bgtla-", BBOCB(16,BOT,CBGT,1,1), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2407 { "bgtla+", BBOCB(16,BOT,CBGT,1,1), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2408 { "bgtla", BBOCB(16,BOT,CBGT,1,1), BBOATCB_MASK, COM, { CR, BDA } }, 2409 { "beq-", BBOCB(16,BOT,CBEQ,0,0), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2410 { "beq+", BBOCB(16,BOT,CBEQ,0,0), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2411 { "beq", BBOCB(16,BOT,CBEQ,0,0), BBOATCB_MASK, COM, { CR, BD } }, 2412 { "beql-", BBOCB(16,BOT,CBEQ,0,1), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2413 { "beql+", BBOCB(16,BOT,CBEQ,0,1), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2414 { "beql", BBOCB(16,BOT,CBEQ,0,1), BBOATCB_MASK, COM, { CR, BD } }, 2415 { "beqa-", BBOCB(16,BOT,CBEQ,1,0), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2416 { "beqa+", BBOCB(16,BOT,CBEQ,1,0), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2417 { "beqa", BBOCB(16,BOT,CBEQ,1,0), BBOATCB_MASK, COM, { CR, BDA } }, 2418 { "beqla-", BBOCB(16,BOT,CBEQ,1,1), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2419 { "beqla+", BBOCB(16,BOT,CBEQ,1,1), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2420 { "beqla", BBOCB(16,BOT,CBEQ,1,1), BBOATCB_MASK, COM, { CR, BDA } }, 2421 { "bso-", BBOCB(16,BOT,CBSO,0,0), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2422 { "bso+", BBOCB(16,BOT,CBSO,0,0), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2423 { "bso", BBOCB(16,BOT,CBSO,0,0), BBOATCB_MASK, COM, { CR, BD } }, 2424 { "bsol-", BBOCB(16,BOT,CBSO,0,1), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2425 { "bsol+", BBOCB(16,BOT,CBSO,0,1), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2426 { "bsol", BBOCB(16,BOT,CBSO,0,1), BBOATCB_MASK, COM, { CR, BD } }, 2427 { "bsoa-", BBOCB(16,BOT,CBSO,1,0), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2428 { "bsoa+", BBOCB(16,BOT,CBSO,1,0), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2429 { "bsoa", BBOCB(16,BOT,CBSO,1,0), BBOATCB_MASK, COM, { CR, BDA } }, 2430 { "bsola-", BBOCB(16,BOT,CBSO,1,1), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2431 { "bsola+", BBOCB(16,BOT,CBSO,1,1), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2432 { "bsola", BBOCB(16,BOT,CBSO,1,1), BBOATCB_MASK, COM, { CR, BDA } }, 2433 { "bun-", BBOCB(16,BOT,CBSO,0,0), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2434 { "bun+", BBOCB(16,BOT,CBSO,0,0), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2435 { "bun", BBOCB(16,BOT,CBSO,0,0), BBOATCB_MASK, PPCCOM, { CR, BD } }, 2436 { "bunl-", BBOCB(16,BOT,CBSO,0,1), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2437 { "bunl+", BBOCB(16,BOT,CBSO,0,1), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2438 { "bunl", BBOCB(16,BOT,CBSO,0,1), BBOATCB_MASK, PPCCOM, { CR, BD } }, 2439 { "buna-", BBOCB(16,BOT,CBSO,1,0), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2440 { "buna+", BBOCB(16,BOT,CBSO,1,0), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2441 { "buna", BBOCB(16,BOT,CBSO,1,0), BBOATCB_MASK, PPCCOM, { CR, BDA } }, 2442 { "bunla-", BBOCB(16,BOT,CBSO,1,1), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2443 { "bunla+", BBOCB(16,BOT,CBSO,1,1), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2444 { "bunla", BBOCB(16,BOT,CBSO,1,1), BBOATCB_MASK, PPCCOM, { CR, BDA } }, 2445 { "bge-", BBOCB(16,BOF,CBLT,0,0), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2446 { "bge+", BBOCB(16,BOF,CBLT,0,0), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2447 { "bge", BBOCB(16,BOF,CBLT,0,0), BBOATCB_MASK, COM, { CR, BD } }, 2448 { "bgel-", BBOCB(16,BOF,CBLT,0,1), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2449 { "bgel+", BBOCB(16,BOF,CBLT,0,1), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2450 { "bgel", BBOCB(16,BOF,CBLT,0,1), BBOATCB_MASK, COM, { CR, BD } }, 2451 { "bgea-", BBOCB(16,BOF,CBLT,1,0), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2452 { "bgea+", BBOCB(16,BOF,CBLT,1,0), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2453 { "bgea", BBOCB(16,BOF,CBLT,1,0), BBOATCB_MASK, COM, { CR, BDA } }, 2454 { "bgela-", BBOCB(16,BOF,CBLT,1,1), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2455 { "bgela+", BBOCB(16,BOF,CBLT,1,1), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2456 { "bgela", BBOCB(16,BOF,CBLT,1,1), BBOATCB_MASK, COM, { CR, BDA } }, 2457 { "bnl-", BBOCB(16,BOF,CBLT,0,0), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2458 { "bnl+", BBOCB(16,BOF,CBLT,0,0), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2459 { "bnl", BBOCB(16,BOF,CBLT,0,0), BBOATCB_MASK, COM, { CR, BD } }, 2460 { "bnll-", BBOCB(16,BOF,CBLT,0,1), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2461 { "bnll+", BBOCB(16,BOF,CBLT,0,1), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2462 { "bnll", BBOCB(16,BOF,CBLT,0,1), BBOATCB_MASK, COM, { CR, BD } }, 2463 { "bnla-", BBOCB(16,BOF,CBLT,1,0), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2464 { "bnla+", BBOCB(16,BOF,CBLT,1,0), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2465 { "bnla", BBOCB(16,BOF,CBLT,1,0), BBOATCB_MASK, COM, { CR, BDA } }, 2466 { "bnlla-", BBOCB(16,BOF,CBLT,1,1), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2467 { "bnlla+", BBOCB(16,BOF,CBLT,1,1), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2468 { "bnlla", BBOCB(16,BOF,CBLT,1,1), BBOATCB_MASK, COM, { CR, BDA } }, 2469 { "ble-", BBOCB(16,BOF,CBGT,0,0), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2470 { "ble+", BBOCB(16,BOF,CBGT,0,0), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2471 { "ble", BBOCB(16,BOF,CBGT,0,0), BBOATCB_MASK, COM, { CR, BD } }, 2472 { "blel-", BBOCB(16,BOF,CBGT,0,1), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2473 { "blel+", BBOCB(16,BOF,CBGT,0,1), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2474 { "blel", BBOCB(16,BOF,CBGT,0,1), BBOATCB_MASK, COM, { CR, BD } }, 2475 { "blea-", BBOCB(16,BOF,CBGT,1,0), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2476 { "blea+", BBOCB(16,BOF,CBGT,1,0), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2477 { "blea", BBOCB(16,BOF,CBGT,1,0), BBOATCB_MASK, COM, { CR, BDA } }, 2478 { "blela-", BBOCB(16,BOF,CBGT,1,1), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2479 { "blela+", BBOCB(16,BOF,CBGT,1,1), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2480 { "blela", BBOCB(16,BOF,CBGT,1,1), BBOATCB_MASK, COM, { CR, BDA } }, 2481 { "bng-", BBOCB(16,BOF,CBGT,0,0), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2482 { "bng+", BBOCB(16,BOF,CBGT,0,0), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2483 { "bng", BBOCB(16,BOF,CBGT,0,0), BBOATCB_MASK, COM, { CR, BD } }, 2484 { "bngl-", BBOCB(16,BOF,CBGT,0,1), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2485 { "bngl+", BBOCB(16,BOF,CBGT,0,1), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2486 { "bngl", BBOCB(16,BOF,CBGT,0,1), BBOATCB_MASK, COM, { CR, BD } }, 2487 { "bnga-", BBOCB(16,BOF,CBGT,1,0), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2488 { "bnga+", BBOCB(16,BOF,CBGT,1,0), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2489 { "bnga", BBOCB(16,BOF,CBGT,1,0), BBOATCB_MASK, COM, { CR, BDA } }, 2490 { "bngla-", BBOCB(16,BOF,CBGT,1,1), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2491 { "bngla+", BBOCB(16,BOF,CBGT,1,1), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2492 { "bngla", BBOCB(16,BOF,CBGT,1,1), BBOATCB_MASK, COM, { CR, BDA } }, 2493 { "bne-", BBOCB(16,BOF,CBEQ,0,0), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2494 { "bne+", BBOCB(16,BOF,CBEQ,0,0), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2495 { "bne", BBOCB(16,BOF,CBEQ,0,0), BBOATCB_MASK, COM, { CR, BD } }, 2496 { "bnel-", BBOCB(16,BOF,CBEQ,0,1), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2497 { "bnel+", BBOCB(16,BOF,CBEQ,0,1), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2498 { "bnel", BBOCB(16,BOF,CBEQ,0,1), BBOATCB_MASK, COM, { CR, BD } }, 2499 { "bnea-", BBOCB(16,BOF,CBEQ,1,0), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2500 { "bnea+", BBOCB(16,BOF,CBEQ,1,0), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2501 { "bnea", BBOCB(16,BOF,CBEQ,1,0), BBOATCB_MASK, COM, { CR, BDA } }, 2502 { "bnela-", BBOCB(16,BOF,CBEQ,1,1), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2503 { "bnela+", BBOCB(16,BOF,CBEQ,1,1), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2504 { "bnela", BBOCB(16,BOF,CBEQ,1,1), BBOATCB_MASK, COM, { CR, BDA } }, 2505 { "bns-", BBOCB(16,BOF,CBSO,0,0), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2506 { "bns+", BBOCB(16,BOF,CBSO,0,0), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2507 { "bns", BBOCB(16,BOF,CBSO,0,0), BBOATCB_MASK, COM, { CR, BD } }, 2508 { "bnsl-", BBOCB(16,BOF,CBSO,0,1), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2509 { "bnsl+", BBOCB(16,BOF,CBSO,0,1), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2510 { "bnsl", BBOCB(16,BOF,CBSO,0,1), BBOATCB_MASK, COM, { CR, BD } }, 2511 { "bnsa-", BBOCB(16,BOF,CBSO,1,0), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2512 { "bnsa+", BBOCB(16,BOF,CBSO,1,0), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2513 { "bnsa", BBOCB(16,BOF,CBSO,1,0), BBOATCB_MASK, COM, { CR, BDA } }, 2514 { "bnsla-", BBOCB(16,BOF,CBSO,1,1), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2515 { "bnsla+", BBOCB(16,BOF,CBSO,1,1), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2516 { "bnsla", BBOCB(16,BOF,CBSO,1,1), BBOATCB_MASK, COM, { CR, BDA } }, 2517 { "bnu-", BBOCB(16,BOF,CBSO,0,0), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2518 { "bnu+", BBOCB(16,BOF,CBSO,0,0), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2519 { "bnu", BBOCB(16,BOF,CBSO,0,0), BBOATCB_MASK, PPCCOM, { CR, BD } }, 2520 { "bnul-", BBOCB(16,BOF,CBSO,0,1), BBOATCB_MASK, PPCCOM, { CR, BDM } }, 2521 { "bnul+", BBOCB(16,BOF,CBSO,0,1), BBOATCB_MASK, PPCCOM, { CR, BDP } }, 2522 { "bnul", BBOCB(16,BOF,CBSO,0,1), BBOATCB_MASK, PPCCOM, { CR, BD } }, 2523 { "bnua-", BBOCB(16,BOF,CBSO,1,0), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2524 { "bnua+", BBOCB(16,BOF,CBSO,1,0), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2525 { "bnua", BBOCB(16,BOF,CBSO,1,0), BBOATCB_MASK, PPCCOM, { CR, BDA } }, 2526 { "bnula-", BBOCB(16,BOF,CBSO,1,1), BBOATCB_MASK, PPCCOM, { CR, BDMA } }, 2527 { "bnula+", BBOCB(16,BOF,CBSO,1,1), BBOATCB_MASK, PPCCOM, { CR, BDPA } }, 2528 { "bnula", BBOCB(16,BOF,CBSO,1,1), BBOATCB_MASK, PPCCOM, { CR, BDA } }, 2529 { "bdnzt-", BBO(16,BODNZT,0,0), BBOY_MASK, NOPOWER4, { BI, BDM } }, 2530 { "bdnzt+", BBO(16,BODNZT,0,0), BBOY_MASK, NOPOWER4, { BI, BDP } }, 1870 2531 { "bdnzt", BBO(16,BODNZT,0,0), BBOY_MASK, PPCCOM, { BI, BD } }, 1871 { "bdnztl-", BBO(16,BODNZT,0,1), BBOY_MASK, PPCCOM, { BI, BDM } },1872 { "bdnztl+", BBO(16,BODNZT,0,1), BBOY_MASK, PPCCOM, { BI, BDP } },2532 { "bdnztl-", BBO(16,BODNZT,0,1), BBOY_MASK, NOPOWER4, { BI, BDM } }, 2533 { "bdnztl+", BBO(16,BODNZT,0,1), BBOY_MASK, NOPOWER4, { BI, BDP } }, 1873 2534 { "bdnztl", BBO(16,BODNZT,0,1), BBOY_MASK, PPCCOM, { BI, BD } }, 1874 { "bdnzta-", BBO(16,BODNZT,1,0), BBOY_MASK, PPCCOM, { BI, BDMA } },1875 { "bdnzta+", BBO(16,BODNZT,1,0), BBOY_MASK, PPCCOM, { BI, BDPA } },2535 { "bdnzta-", BBO(16,BODNZT,1,0), BBOY_MASK, NOPOWER4, { BI, BDMA } }, 2536 { "bdnzta+", BBO(16,BODNZT,1,0), BBOY_MASK, NOPOWER4, { BI, BDPA } }, 1876 2537 { "bdnzta", BBO(16,BODNZT,1,0), BBOY_MASK, PPCCOM, { BI, BDA } }, 1877 { "bdnztla-",BBO(16,BODNZT,1,1), BBOY_MASK, PPCCOM, { BI, BDMA } },1878 { "bdnztla+",BBO(16,BODNZT,1,1), BBOY_MASK, PPCCOM, { BI, BDPA } },2538 { "bdnztla-",BBO(16,BODNZT,1,1), BBOY_MASK, NOPOWER4, { BI, BDMA } }, 2539 { "bdnztla+",BBO(16,BODNZT,1,1), BBOY_MASK, NOPOWER4, { BI, BDPA } }, 1879 2540 { "bdnztla", BBO(16,BODNZT,1,1), BBOY_MASK, PPCCOM, { BI, BDA } }, 1880 { "bdnzf-", BBO(16,BODNZF,0,0), BBOY_MASK, PPCCOM, { BI, BDM } },1881 { "bdnzf+", BBO(16,BODNZF,0,0), BBOY_MASK, PPCCOM, { BI, BDP } },2541 { "bdnzf-", BBO(16,BODNZF,0,0), BBOY_MASK, NOPOWER4, { BI, BDM } }, 2542 { "bdnzf+", BBO(16,BODNZF,0,0), BBOY_MASK, NOPOWER4, { BI, BDP } }, 1882 2543 { "bdnzf", BBO(16,BODNZF,0,0), BBOY_MASK, PPCCOM, { BI, BD } }, 1883 { "bdnzfl-", BBO(16,BODNZF,0,1), BBOY_MASK, PPCCOM, { BI, BDM } },1884 { "bdnzfl+", BBO(16,BODNZF,0,1), BBOY_MASK, PPCCOM, { BI, BDP } },2544 { "bdnzfl-", BBO(16,BODNZF,0,1), BBOY_MASK, NOPOWER4, { BI, BDM } }, 2545 { "bdnzfl+", BBO(16,BODNZF,0,1), BBOY_MASK, NOPOWER4, { BI, BDP } }, 1885 2546 { "bdnzfl", BBO(16,BODNZF,0,1), BBOY_MASK, PPCCOM, { BI, BD } }, 1886 { "bdnzfa-", BBO(16,BODNZF,1,0), BBOY_MASK, PPCCOM, { BI, BDMA } },1887 { "bdnzfa+", BBO(16,BODNZF,1,0), BBOY_MASK, PPCCOM, { BI, BDPA } },2547 { "bdnzfa-", BBO(16,BODNZF,1,0), BBOY_MASK, NOPOWER4, { BI, BDMA } }, 2548 { "bdnzfa+", BBO(16,BODNZF,1,0), BBOY_MASK, NOPOWER4, { BI, BDPA } }, 1888 2549 { "bdnzfa", BBO(16,BODNZF,1,0), BBOY_MASK, PPCCOM, { BI, BDA } }, 1889 { "bdnzfla-",BBO(16,BODNZF,1,1), BBOY_MASK, PPCCOM, { BI, BDMA } },1890 { "bdnzfla+",BBO(16,BODNZF,1,1), BBOY_MASK, PPCCOM, { BI, BDPA } },2550 { "bdnzfla-",BBO(16,BODNZF,1,1), BBOY_MASK, NOPOWER4, { BI, BDMA } }, 2551 { "bdnzfla+",BBO(16,BODNZF,1,1), BBOY_MASK, NOPOWER4, { BI, BDPA } }, 1891 2552 { "bdnzfla", BBO(16,BODNZF,1,1), BBOY_MASK, PPCCOM, { BI, BDA } }, 1892 { "bt-", BBO(16,BOT,0,0), BBO Y_MASK, PPCCOM, { BI, BDM } },1893 { "bt+", BBO(16,BOT,0,0), BBO Y_MASK, PPCCOM, { BI, BDP } },1894 { "bt", BBO(16,BOT,0,0), BBO Y_MASK, PPCCOM, { BI, BD } },1895 { "bbt", BBO(16,BOT,0,0), BBO Y_MASK, PWRCOM, { BI, BD } },1896 { "btl-", BBO(16,BOT,0,1), BBO Y_MASK, PPCCOM, { BI, BDM } },1897 { "btl+", BBO(16,BOT,0,1), BBO Y_MASK, PPCCOM, { BI, BDP } },1898 { "btl", BBO(16,BOT,0,1), BBO Y_MASK, PPCCOM, { BI, BD } },1899 { "bbtl", BBO(16,BOT,0,1), BBO Y_MASK, PWRCOM, { BI, BD } },1900 { "bta-", BBO(16,BOT,1,0), BBO Y_MASK, PPCCOM, { BI, BDMA } },1901 { "bta+", BBO(16,BOT,1,0), BBO Y_MASK, PPCCOM, { BI, BDPA } },1902 { "bta", BBO(16,BOT,1,0), BBO Y_MASK, PPCCOM, { BI, BDA } },1903 { "bbta", BBO(16,BOT,1,0), BBO Y_MASK, PWRCOM, { BI, BDA } },1904 { "btla-", BBO(16,BOT,1,1), BBO Y_MASK, PPCCOM, { BI, BDMA } },1905 { "btla+", BBO(16,BOT,1,1), BBO Y_MASK, PPCCOM, { BI, BDPA } },1906 { "btla", BBO(16,BOT,1,1), BBO Y_MASK, PPCCOM, { BI, BDA } },1907 { "bbtla", BBO(16,BOT,1,1), BBO Y_MASK, PWRCOM, { BI, BDA } },1908 { "bf-", BBO(16,BOF,0,0), BBO Y_MASK, PPCCOM, { BI, BDM } },1909 { "bf+", BBO(16,BOF,0,0), BBO Y_MASK, PPCCOM, { BI, BDP } },1910 { "bf", BBO(16,BOF,0,0), BBO Y_MASK, PPCCOM, { BI, BD } },1911 { "bbf", BBO(16,BOF,0,0), BBO Y_MASK, PWRCOM, { BI, BD } },1912 { "bfl-", BBO(16,BOF,0,1), BBO Y_MASK, PPCCOM, { BI, BDM } },1913 { "bfl+", BBO(16,BOF,0,1), BBO Y_MASK, PPCCOM, { BI, BDP } },1914 { "bfl", BBO(16,BOF,0,1), BBO Y_MASK, PPCCOM, { BI, BD } },1915 { "bbfl", BBO(16,BOF,0,1), BBO Y_MASK, PWRCOM, { BI, BD } },1916 { "bfa-", BBO(16,BOF,1,0), BBO Y_MASK, PPCCOM, { BI, BDMA } },1917 { "bfa+", BBO(16,BOF,1,0), BBO Y_MASK, PPCCOM, { BI, BDPA } },1918 { "bfa", BBO(16,BOF,1,0), BBO Y_MASK, PPCCOM, { BI, BDA } },1919 { "bbfa", BBO(16,BOF,1,0), BBO Y_MASK, PWRCOM, { BI, BDA } },1920 { "bfla-", BBO(16,BOF,1,1), BBO Y_MASK, PPCCOM, { BI, BDMA } },1921 { "bfla+", BBO(16,BOF,1,1), BBO Y_MASK, PPCCOM, { BI, BDPA } },1922 { "bfla", BBO(16,BOF,1,1), BBO Y_MASK, PPCCOM, { BI, BDA } },1923 { "bbfla", BBO(16,BOF,1,1), BBO Y_MASK, PWRCOM, { BI, BDA } },1924 { "bdzt-", BBO(16,BODZT,0,0), BBOY_MASK, PPCCOM, { BI, BDM } },1925 { "bdzt+", BBO(16,BODZT,0,0), BBOY_MASK, PPCCOM, { BI, BDP } },2553 { "bt-", BBO(16,BOT,0,0), BBOAT_MASK, PPCCOM, { BI, BDM } }, 2554 { "bt+", BBO(16,BOT,0,0), BBOAT_MASK, PPCCOM, { BI, BDP } }, 2555 { "bt", BBO(16,BOT,0,0), BBOAT_MASK, PPCCOM, { BI, BD } }, 2556 { "bbt", BBO(16,BOT,0,0), BBOAT_MASK, PWRCOM, { BI, BD } }, 2557 { "btl-", BBO(16,BOT,0,1), BBOAT_MASK, PPCCOM, { BI, BDM } }, 2558 { "btl+", BBO(16,BOT,0,1), BBOAT_MASK, PPCCOM, { BI, BDP } }, 2559 { "btl", BBO(16,BOT,0,1), BBOAT_MASK, PPCCOM, { BI, BD } }, 2560 { "bbtl", BBO(16,BOT,0,1), BBOAT_MASK, PWRCOM, { BI, BD } }, 2561 { "bta-", BBO(16,BOT,1,0), BBOAT_MASK, PPCCOM, { BI, BDMA } }, 2562 { "bta+", BBO(16,BOT,1,0), BBOAT_MASK, PPCCOM, { BI, BDPA } }, 2563 { "bta", BBO(16,BOT,1,0), BBOAT_MASK, PPCCOM, { BI, BDA } }, 2564 { "bbta", BBO(16,BOT,1,0), BBOAT_MASK, PWRCOM, { BI, BDA } }, 2565 { "btla-", BBO(16,BOT,1,1), BBOAT_MASK, PPCCOM, { BI, BDMA } }, 2566 { "btla+", BBO(16,BOT,1,1), BBOAT_MASK, PPCCOM, { BI, BDPA } }, 2567 { "btla", BBO(16,BOT,1,1), BBOAT_MASK, PPCCOM, { BI, BDA } }, 2568 { "bbtla", BBO(16,BOT,1,1), BBOAT_MASK, PWRCOM, { BI, BDA } }, 2569 { "bf-", BBO(16,BOF,0,0), BBOAT_MASK, PPCCOM, { BI, BDM } }, 2570 { "bf+", BBO(16,BOF,0,0), BBOAT_MASK, PPCCOM, { BI, BDP } }, 2571 { "bf", BBO(16,BOF,0,0), BBOAT_MASK, PPCCOM, { BI, BD } }, 2572 { "bbf", BBO(16,BOF,0,0), BBOAT_MASK, PWRCOM, { BI, BD } }, 2573 { "bfl-", BBO(16,BOF,0,1), BBOAT_MASK, PPCCOM, { BI, BDM } }, 2574 { "bfl+", BBO(16,BOF,0,1), BBOAT_MASK, PPCCOM, { BI, BDP } }, 2575 { "bfl", BBO(16,BOF,0,1), BBOAT_MASK, PPCCOM, { BI, BD } }, 2576 { "bbfl", BBO(16,BOF,0,1), BBOAT_MASK, PWRCOM, { BI, BD } }, 2577 { "bfa-", BBO(16,BOF,1,0), BBOAT_MASK, PPCCOM, { BI, BDMA } }, 2578 { "bfa+", BBO(16,BOF,1,0), BBOAT_MASK, PPCCOM, { BI, BDPA } }, 2579 { "bfa", BBO(16,BOF,1,0), BBOAT_MASK, PPCCOM, { BI, BDA } }, 2580 { "bbfa", BBO(16,BOF,1,0), BBOAT_MASK, PWRCOM, { BI, BDA } }, 2581 { "bfla-", BBO(16,BOF,1,1), BBOAT_MASK, PPCCOM, { BI, BDMA } }, 2582 { "bfla+", BBO(16,BOF,1,1), BBOAT_MASK, PPCCOM, { BI, BDPA } }, 2583 { "bfla", BBO(16,BOF,1,1), BBOAT_MASK, PPCCOM, { BI, BDA } }, 2584 { "bbfla", BBO(16,BOF,1,1), BBOAT_MASK, PWRCOM, { BI, BDA } }, 2585 { "bdzt-", BBO(16,BODZT,0,0), BBOY_MASK, NOPOWER4, { BI, BDM } }, 2586 { "bdzt+", BBO(16,BODZT,0,0), BBOY_MASK, NOPOWER4, { BI, BDP } }, 1926 2587 { "bdzt", BBO(16,BODZT,0,0), BBOY_MASK, PPCCOM, { BI, BD } }, 1927 { "bdztl-", BBO(16,BODZT,0,1), BBOY_MASK, PPCCOM, { BI, BDM } },1928 { "bdztl+", BBO(16,BODZT,0,1), BBOY_MASK, PPCCOM, { BI, BDP } },2588 { "bdztl-", BBO(16,BODZT,0,1), BBOY_MASK, NOPOWER4, { BI, BDM } }, 2589 { "bdztl+", BBO(16,BODZT,0,1), BBOY_MASK, NOPOWER4, { BI, BDP } }, 1929 2590 { "bdztl", BBO(16,BODZT,0,1), BBOY_MASK, PPCCOM, { BI, BD } }, 1930 { "bdzta-", BBO(16,BODZT,1,0), BBOY_MASK, PPCCOM, { BI, BDMA } },1931 { "bdzta+", BBO(16,BODZT,1,0), BBOY_MASK, PPCCOM, { BI, BDPA } },2591 { "bdzta-", BBO(16,BODZT,1,0), BBOY_MASK, NOPOWER4, { BI, BDMA } }, 2592 { "bdzta+", BBO(16,BODZT,1,0), BBOY_MASK, NOPOWER4, { BI, BDPA } }, 1932 2593 { "bdzta", BBO(16,BODZT,1,0), BBOY_MASK, PPCCOM, { BI, BDA } }, 1933 { "bdztla-", BBO(16,BODZT,1,1), BBOY_MASK, PPCCOM, { BI, BDMA } },1934 { "bdztla+", BBO(16,BODZT,1,1), BBOY_MASK, PPCCOM, { BI, BDPA } },2594 { "bdztla-", BBO(16,BODZT,1,1), BBOY_MASK, NOPOWER4, { BI, BDMA } }, 2595 { "bdztla+", BBO(16,BODZT,1,1), BBOY_MASK, NOPOWER4, { BI, BDPA } }, 1935 2596 { "bdztla", BBO(16,BODZT,1,1), BBOY_MASK, PPCCOM, { BI, BDA } }, 1936 { "bdzf-", BBO(16,BODZF,0,0), BBOY_MASK, PPCCOM, { BI, BDM } },1937 { "bdzf+", BBO(16,BODZF,0,0), BBOY_MASK, PPCCOM, { BI, BDP } },2597 { "bdzf-", BBO(16,BODZF,0,0), BBOY_MASK, NOPOWER4, { BI, BDM } }, 2598 { "bdzf+", BBO(16,BODZF,0,0), BBOY_MASK, NOPOWER4, { BI, BDP } }, 1938 2599 { "bdzf", BBO(16,BODZF,0,0), BBOY_MASK, PPCCOM, { BI, BD } }, 1939 { "bdzfl-", BBO(16,BODZF,0,1), BBOY_MASK, PPCCOM, { BI, BDM } },1940 { "bdzfl+", BBO(16,BODZF,0,1), BBOY_MASK, PPCCOM, { BI, BDP } },2600 { "bdzfl-", BBO(16,BODZF,0,1), BBOY_MASK, NOPOWER4, { BI, BDM } }, 2601 { "bdzfl+", BBO(16,BODZF,0,1), BBOY_MASK, NOPOWER4, { BI, BDP } }, 1941 2602 { "bdzfl", BBO(16,BODZF,0,1), BBOY_MASK, PPCCOM, { BI, BD } }, 1942 { "bdzfa-", BBO(16,BODZF,1,0), BBOY_MASK, PPCCOM, { BI, BDMA } },1943 { "bdzfa+", BBO(16,BODZF,1,0), BBOY_MASK, PPCCOM, { BI, BDPA } },2603 { "bdzfa-", BBO(16,BODZF,1,0), BBOY_MASK, NOPOWER4, { BI, BDMA } }, 2604 { "bdzfa+", BBO(16,BODZF,1,0), BBOY_MASK, NOPOWER4, { BI, BDPA } }, 1944 2605 { "bdzfa", BBO(16,BODZF,1,0), BBOY_MASK, PPCCOM, { BI, BDA } }, 1945 { "bdzfla-", BBO(16,BODZF,1,1), BBOY_MASK, PPCCOM, { BI, BDMA } },1946 { "bdzfla+", BBO(16,BODZF,1,1), BBOY_MASK, PPCCOM, { BI, BDPA } },2606 { "bdzfla-", BBO(16,BODZF,1,1), BBOY_MASK, NOPOWER4, { BI, BDMA } }, 2607 { "bdzfla+", BBO(16,BODZF,1,1), BBOY_MASK, NOPOWER4, { BI, BDPA } }, 1947 2608 { "bdzfla", BBO(16,BODZF,1,1), BBOY_MASK, PPCCOM, { BI, BDA } }, 1948 2609 { "bc-", B(16,0,0), B_MASK, PPCCOM, { BOE, BI, BDM } }, … … 1965 2626 { "svcla", SC(17,1,1), SC_MASK, POWER, { SV } }, 1966 2627 1967 { "b", B(18,0,0), B_MASK, COM, { LI } },1968 { "bl", B(18,0,1), B_MASK, COM, { LI } },1969 { "ba", B(18,1,0), B_MASK, COM, { LIA } },1970 { "bla", B(18,1,1), B_MASK, COM, { LIA } },1971 1972 { "mcrf", XL(19,0), XLBB_MASK|(3 <<21)|(3<<16), COM, { BF, BFA } },2628 { "b", B(18,0,0), B_MASK, COM, { LI } }, 2629 { "bl", B(18,0,1), B_MASK, COM, { LI } }, 2630 { "ba", B(18,1,0), B_MASK, COM, { LIA } }, 2631 { "bla", B(18,1,1), B_MASK, COM, { LIA } }, 2632 2633 { "mcrf", XL(19,0), XLBB_MASK|(3 << 21)|(3 << 16), COM, { BF, BFA } }, 1973 2634 1974 2635 { "blr", XLO(19,BOU,16,0), XLBOBIBB_MASK, PPCCOM, { 0 } }, … … 1977 2638 { "brl", XLO(19,BOU,16,1), XLBOBIBB_MASK, PWRCOM, { 0 } }, 1978 2639 { "bdnzlr", XLO(19,BODNZ,16,0), XLBOBIBB_MASK, PPCCOM, { 0 } }, 1979 { "bdnzlr-", XLO(19,BODNZ,16,0), XLBOBIBB_MASK, PPCCOM, { 0 } }, 1980 { "bdnzlr+", XLO(19,BODNZP,16,0), XLBOBIBB_MASK, PPCCOM, { 0 } }, 2640 { "bdnzlr-", XLO(19,BODNZ,16,0), XLBOBIBB_MASK, NOPOWER4, { 0 } }, 2641 { "bdnzlr+", XLO(19,BODNZP,16,0), XLBOBIBB_MASK, NOPOWER4, { 0 } }, 2642 { "bdnzlr-", XLO(19,BODNZM4,16,0), XLBOBIBB_MASK, POWER4, { 0 } }, 2643 { "bdnzlr+", XLO(19,BODNZP4,16,0), XLBOBIBB_MASK, POWER4, { 0 } }, 1981 2644 { "bdnzlrl", XLO(19,BODNZ,16,1), XLBOBIBB_MASK, PPCCOM, { 0 } }, 1982 { "bdnzlrl-",XLO(19,BODNZ,16,1), XLBOBIBB_MASK, PPCCOM, { 0 } }, 1983 { "bdnzlrl+",XLO(19,BODNZP,16,1), XLBOBIBB_MASK, PPCCOM, { 0 } }, 2645 { "bdnzlrl-",XLO(19,BODNZ,16,1), XLBOBIBB_MASK, NOPOWER4, { 0 } }, 2646 { "bdnzlrl+",XLO(19,BODNZP,16,1), XLBOBIBB_MASK, NOPOWER4, { 0 } }, 2647 { "bdnzlrl-",XLO(19,BODNZM4,16,1), XLBOBIBB_MASK, POWER4, { 0 } }, 2648 { "bdnzlrl+",XLO(19,BODNZP4,16,1), XLBOBIBB_MASK, POWER4, { 0 } }, 1984 2649 { "bdzlr", XLO(19,BODZ,16,0), XLBOBIBB_MASK, PPCCOM, { 0 } }, 1985 { "bdzlr-", XLO(19,BODZ,16,0), XLBOBIBB_MASK, PPCCOM, { 0 } }, 1986 { "bdzlr+", XLO(19,BODZP,16,0), XLBOBIBB_MASK, PPCCOM, { 0 } }, 2650 { "bdzlr-", XLO(19,BODZ,16,0), XLBOBIBB_MASK, NOPOWER4, { 0 } }, 2651 { "bdzlr+", XLO(19,BODZP,16,0), XLBOBIBB_MASK, NOPOWER4, { 0 } }, 2652 { "bdzlr-", XLO(19,BODZM4,16,0), XLBOBIBB_MASK, POWER4, { 0 } }, 2653 { "bdzlr+", XLO(19,BODZP4,16,0), XLBOBIBB_MASK, POWER4, { 0 } }, 1987 2654 { "bdzlrl", XLO(19,BODZ,16,1), XLBOBIBB_MASK, PPCCOM, { 0 } }, 1988 { "bdzlrl-", XLO(19,BODZ,16,1), XLBOBIBB_MASK, PPCCOM, { 0 } }, 1989 { "bdzlrl+", XLO(19,BODZP,16,1), XLBOBIBB_MASK, PPCCOM, { 0 } }, 2655 { "bdzlrl-", XLO(19,BODZ,16,1), XLBOBIBB_MASK, NOPOWER4, { 0 } }, 2656 { "bdzlrl+", XLO(19,BODZP,16,1), XLBOBIBB_MASK, NOPOWER4, { 0 } }, 2657 { "bdzlrl-", XLO(19,BODZM4,16,1), XLBOBIBB_MASK, POWER4, { 0 } }, 2658 { "bdzlrl+", XLO(19,BODZP4,16,1), XLBOBIBB_MASK, POWER4, { 0 } }, 1990 2659 { "bltlr", XLOCB(19,BOT,CBLT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 1991 { "bltlr-", XLOCB(19,BOT,CBLT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 1992 { "bltlr+", XLOCB(19,BOTP,CBLT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2660 { "bltlr-", XLOCB(19,BOT,CBLT,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2661 { "bltlr+", XLOCB(19,BOTP,CBLT,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2662 { "bltlr-", XLOCB(19,BOTM4,CBLT,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2663 { "bltlr+", XLOCB(19,BOTP4,CBLT,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 1993 2664 { "bltr", XLOCB(19,BOT,CBLT,16,0), XLBOCBBB_MASK, PWRCOM, { CR } }, 1994 2665 { "bltlrl", XLOCB(19,BOT,CBLT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 1995 { "bltlrl-", XLOCB(19,BOT,CBLT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 1996 { "bltlrl+", XLOCB(19,BOTP,CBLT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2666 { "bltlrl-", XLOCB(19,BOT,CBLT,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2667 { "bltlrl+", XLOCB(19,BOTP,CBLT,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2668 { "bltlrl-", XLOCB(19,BOTM4,CBLT,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2669 { "bltlrl+", XLOCB(19,BOTP4,CBLT,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 1997 2670 { "bltrl", XLOCB(19,BOT,CBLT,16,1), XLBOCBBB_MASK, PWRCOM, { CR } }, 1998 2671 { "bgtlr", XLOCB(19,BOT,CBGT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 1999 { "bgtlr-", XLOCB(19,BOT,CBGT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2000 { "bgtlr+", XLOCB(19,BOTP,CBGT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2672 { "bgtlr-", XLOCB(19,BOT,CBGT,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2673 { "bgtlr+", XLOCB(19,BOTP,CBGT,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2674 { "bgtlr-", XLOCB(19,BOTM4,CBGT,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2675 { "bgtlr+", XLOCB(19,BOTP4,CBGT,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2001 2676 { "bgtr", XLOCB(19,BOT,CBGT,16,0), XLBOCBBB_MASK, PWRCOM, { CR } }, 2002 2677 { "bgtlrl", XLOCB(19,BOT,CBGT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2003 { "bgtlrl-", XLOCB(19,BOT,CBGT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2004 { "bgtlrl+", XLOCB(19,BOTP,CBGT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2678 { "bgtlrl-", XLOCB(19,BOT,CBGT,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2679 { "bgtlrl+", XLOCB(19,BOTP,CBGT,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2680 { "bgtlrl-", XLOCB(19,BOTM4,CBGT,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2681 { "bgtlrl+", XLOCB(19,BOTP4,CBGT,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2005 2682 { "bgtrl", XLOCB(19,BOT,CBGT,16,1), XLBOCBBB_MASK, PWRCOM, { CR } }, 2006 2683 { "beqlr", XLOCB(19,BOT,CBEQ,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2007 { "beqlr-", XLOCB(19,BOT,CBEQ,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2008 { "beqlr+", XLOCB(19,BOTP,CBEQ,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2684 { "beqlr-", XLOCB(19,BOT,CBEQ,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2685 { "beqlr+", XLOCB(19,BOTP,CBEQ,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2686 { "beqlr-", XLOCB(19,BOTM4,CBEQ,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2687 { "beqlr+", XLOCB(19,BOTP4,CBEQ,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2009 2688 { "beqr", XLOCB(19,BOT,CBEQ,16,0), XLBOCBBB_MASK, PWRCOM, { CR } }, 2010 2689 { "beqlrl", XLOCB(19,BOT,CBEQ,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2011 { "beqlrl-", XLOCB(19,BOT,CBEQ,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2012 { "beqlrl+", XLOCB(19,BOTP,CBEQ,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2690 { "beqlrl-", XLOCB(19,BOT,CBEQ,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2691 { "beqlrl+", XLOCB(19,BOTP,CBEQ,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2692 { "beqlrl-", XLOCB(19,BOTM4,CBEQ,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2693 { "beqlrl+", XLOCB(19,BOTP4,CBEQ,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2013 2694 { "beqrl", XLOCB(19,BOT,CBEQ,16,1), XLBOCBBB_MASK, PWRCOM, { CR } }, 2014 2695 { "bsolr", XLOCB(19,BOT,CBSO,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2015 { "bsolr-", XLOCB(19,BOT,CBSO,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2016 { "bsolr+", XLOCB(19,BOTP,CBSO,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2696 { "bsolr-", XLOCB(19,BOT,CBSO,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2697 { "bsolr+", XLOCB(19,BOTP,CBSO,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2698 { "bsolr-", XLOCB(19,BOTM4,CBSO,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2699 { "bsolr+", XLOCB(19,BOTP4,CBSO,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2017 2700 { "bsor", XLOCB(19,BOT,CBSO,16,0), XLBOCBBB_MASK, PWRCOM, { CR } }, 2018 2701 { "bsolrl", XLOCB(19,BOT,CBSO,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2019 { "bsolrl-", XLOCB(19,BOT,CBSO,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2020 { "bsolrl+", XLOCB(19,BOTP,CBSO,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2702 { "bsolrl-", XLOCB(19,BOT,CBSO,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2703 { "bsolrl+", XLOCB(19,BOTP,CBSO,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2704 { "bsolrl-", XLOCB(19,BOTM4,CBSO,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2705 { "bsolrl+", XLOCB(19,BOTP4,CBSO,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2021 2706 { "bsorl", XLOCB(19,BOT,CBSO,16,1), XLBOCBBB_MASK, PWRCOM, { CR } }, 2022 2707 { "bunlr", XLOCB(19,BOT,CBSO,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2023 { "bunlr-", XLOCB(19,BOT,CBSO,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2024 { "bunlr+", XLOCB(19,BOTP,CBSO,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2708 { "bunlr-", XLOCB(19,BOT,CBSO,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2709 { "bunlr+", XLOCB(19,BOTP,CBSO,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2710 { "bunlr-", XLOCB(19,BOTM4,CBSO,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2711 { "bunlr+", XLOCB(19,BOTP4,CBSO,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2025 2712 { "bunlrl", XLOCB(19,BOT,CBSO,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2026 { "bunlrl-", XLOCB(19,BOT,CBSO,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2027 { "bunlrl+", XLOCB(19,BOTP,CBSO,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2713 { "bunlrl-", XLOCB(19,BOT,CBSO,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2714 { "bunlrl+", XLOCB(19,BOTP,CBSO,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2715 { "bunlrl-", XLOCB(19,BOTM4,CBSO,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2716 { "bunlrl+", XLOCB(19,BOTP4,CBSO,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2028 2717 { "bgelr", XLOCB(19,BOF,CBLT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2029 { "bgelr-", XLOCB(19,BOF,CBLT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2030 { "bgelr+", XLOCB(19,BOFP,CBLT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2718 { "bgelr-", XLOCB(19,BOF,CBLT,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2719 { "bgelr+", XLOCB(19,BOFP,CBLT,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2720 { "bgelr-", XLOCB(19,BOFM4,CBLT,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2721 { "bgelr+", XLOCB(19,BOFP4,CBLT,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2031 2722 { "bger", XLOCB(19,BOF,CBLT,16,0), XLBOCBBB_MASK, PWRCOM, { CR } }, 2032 2723 { "bgelrl", XLOCB(19,BOF,CBLT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2033 { "bgelrl-", XLOCB(19,BOF,CBLT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2034 { "bgelrl+", XLOCB(19,BOFP,CBLT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2724 { "bgelrl-", XLOCB(19,BOF,CBLT,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2725 { "bgelrl+", XLOCB(19,BOFP,CBLT,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2726 { "bgelrl-", XLOCB(19,BOFM4,CBLT,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2727 { "bgelrl+", XLOCB(19,BOFP4,CBLT,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2035 2728 { "bgerl", XLOCB(19,BOF,CBLT,16,1), XLBOCBBB_MASK, PWRCOM, { CR } }, 2036 2729 { "bnllr", XLOCB(19,BOF,CBLT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2037 { "bnllr-", XLOCB(19,BOF,CBLT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2038 { "bnllr+", XLOCB(19,BOFP,CBLT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2730 { "bnllr-", XLOCB(19,BOF,CBLT,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2731 { "bnllr+", XLOCB(19,BOFP,CBLT,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2732 { "bnllr-", XLOCB(19,BOFM4,CBLT,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2733 { "bnllr+", XLOCB(19,BOFP4,CBLT,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2039 2734 { "bnlr", XLOCB(19,BOF,CBLT,16,0), XLBOCBBB_MASK, PWRCOM, { CR } }, 2040 2735 { "bnllrl", XLOCB(19,BOF,CBLT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2041 { "bnllrl-", XLOCB(19,BOF,CBLT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2042 { "bnllrl+", XLOCB(19,BOFP,CBLT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2736 { "bnllrl-", XLOCB(19,BOF,CBLT,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2737 { "bnllrl+", XLOCB(19,BOFP,CBLT,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2738 { "bnllrl-", XLOCB(19,BOFM4,CBLT,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2739 { "bnllrl+", XLOCB(19,BOFP4,CBLT,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2043 2740 { "bnlrl", XLOCB(19,BOF,CBLT,16,1), XLBOCBBB_MASK, PWRCOM, { CR } }, 2044 2741 { "blelr", XLOCB(19,BOF,CBGT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2045 { "blelr-", XLOCB(19,BOF,CBGT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2046 { "blelr+", XLOCB(19,BOFP,CBGT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2742 { "blelr-", XLOCB(19,BOF,CBGT,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2743 { "blelr+", XLOCB(19,BOFP,CBGT,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2744 { "blelr-", XLOCB(19,BOFM4,CBGT,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2745 { "blelr+", XLOCB(19,BOFP4,CBGT,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2047 2746 { "bler", XLOCB(19,BOF,CBGT,16,0), XLBOCBBB_MASK, PWRCOM, { CR } }, 2048 2747 { "blelrl", XLOCB(19,BOF,CBGT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2049 { "blelrl-", XLOCB(19,BOF,CBGT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2050 { "blelrl+", XLOCB(19,BOFP,CBGT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2748 { "blelrl-", XLOCB(19,BOF,CBGT,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2749 { "blelrl+", XLOCB(19,BOFP,CBGT,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2750 { "blelrl-", XLOCB(19,BOFM4,CBGT,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2751 { "blelrl+", XLOCB(19,BOFP4,CBGT,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2051 2752 { "blerl", XLOCB(19,BOF,CBGT,16,1), XLBOCBBB_MASK, PWRCOM, { CR } }, 2052 2753 { "bnglr", XLOCB(19,BOF,CBGT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2053 { "bnglr-", XLOCB(19,BOF,CBGT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2054 { "bnglr+", XLOCB(19,BOFP,CBGT,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2754 { "bnglr-", XLOCB(19,BOF,CBGT,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2755 { "bnglr+", XLOCB(19,BOFP,CBGT,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2756 { "bnglr-", XLOCB(19,BOFM4,CBGT,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2757 { "bnglr+", XLOCB(19,BOFP4,CBGT,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2055 2758 { "bngr", XLOCB(19,BOF,CBGT,16,0), XLBOCBBB_MASK, PWRCOM, { CR } }, 2056 2759 { "bnglrl", XLOCB(19,BOF,CBGT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2057 { "bnglrl-", XLOCB(19,BOF,CBGT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2058 { "bnglrl+", XLOCB(19,BOFP,CBGT,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2760 { "bnglrl-", XLOCB(19,BOF,CBGT,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2761 { "bnglrl+", XLOCB(19,BOFP,CBGT,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2762 { "bnglrl-", XLOCB(19,BOFM4,CBGT,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2763 { "bnglrl+", XLOCB(19,BOFP4,CBGT,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2059 2764 { "bngrl", XLOCB(19,BOF,CBGT,16,1), XLBOCBBB_MASK, PWRCOM, { CR } }, 2060 2765 { "bnelr", XLOCB(19,BOF,CBEQ,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2061 { "bnelr-", XLOCB(19,BOF,CBEQ,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2062 { "bnelr+", XLOCB(19,BOFP,CBEQ,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2766 { "bnelr-", XLOCB(19,BOF,CBEQ,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2767 { "bnelr+", XLOCB(19,BOFP,CBEQ,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2768 { "bnelr-", XLOCB(19,BOFM4,CBEQ,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2769 { "bnelr+", XLOCB(19,BOFP4,CBEQ,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2063 2770 { "bner", XLOCB(19,BOF,CBEQ,16,0), XLBOCBBB_MASK, PWRCOM, { CR } }, 2064 2771 { "bnelrl", XLOCB(19,BOF,CBEQ,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2065 { "bnelrl-", XLOCB(19,BOF,CBEQ,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2066 { "bnelrl+", XLOCB(19,BOFP,CBEQ,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2772 { "bnelrl-", XLOCB(19,BOF,CBEQ,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2773 { "bnelrl+", XLOCB(19,BOFP,CBEQ,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2774 { "bnelrl-", XLOCB(19,BOFM4,CBEQ,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2775 { "bnelrl+", XLOCB(19,BOFP4,CBEQ,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2067 2776 { "bnerl", XLOCB(19,BOF,CBEQ,16,1), XLBOCBBB_MASK, PWRCOM, { CR } }, 2068 2777 { "bnslr", XLOCB(19,BOF,CBSO,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2069 { "bnslr-", XLOCB(19,BOF,CBSO,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2070 { "bnslr+", XLOCB(19,BOFP,CBSO,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2778 { "bnslr-", XLOCB(19,BOF,CBSO,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2779 { "bnslr+", XLOCB(19,BOFP,CBSO,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2780 { "bnslr-", XLOCB(19,BOFM4,CBSO,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2781 { "bnslr+", XLOCB(19,BOFP4,CBSO,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2071 2782 { "bnsr", XLOCB(19,BOF,CBSO,16,0), XLBOCBBB_MASK, PWRCOM, { CR } }, 2072 2783 { "bnslrl", XLOCB(19,BOF,CBSO,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2073 { "bnslrl-", XLOCB(19,BOF,CBSO,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2074 { "bnslrl+", XLOCB(19,BOFP,CBSO,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2784 { "bnslrl-", XLOCB(19,BOF,CBSO,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2785 { "bnslrl+", XLOCB(19,BOFP,CBSO,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2786 { "bnslrl-", XLOCB(19,BOFM4,CBSO,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2787 { "bnslrl+", XLOCB(19,BOFP4,CBSO,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2075 2788 { "bnsrl", XLOCB(19,BOF,CBSO,16,1), XLBOCBBB_MASK, PWRCOM, { CR } }, 2076 2789 { "bnulr", XLOCB(19,BOF,CBSO,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2077 { "bnulr-", XLOCB(19,BOF,CBSO,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2078 { "bnulr+", XLOCB(19,BOFP,CBSO,16,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2790 { "bnulr-", XLOCB(19,BOF,CBSO,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2791 { "bnulr+", XLOCB(19,BOFP,CBSO,16,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2792 { "bnulr-", XLOCB(19,BOFM4,CBSO,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2793 { "bnulr+", XLOCB(19,BOFP4,CBSO,16,0), XLBOCBBB_MASK, POWER4, { CR } }, 2079 2794 { "bnulrl", XLOCB(19,BOF,CBSO,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2080 { "bnulrl-", XLOCB(19,BOF,CBSO,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2081 { "bnulrl+", XLOCB(19,BOFP,CBSO,16,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2795 { "bnulrl-", XLOCB(19,BOF,CBSO,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2796 { "bnulrl+", XLOCB(19,BOFP,CBSO,16,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2797 { "bnulrl-", XLOCB(19,BOFM4,CBSO,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2798 { "bnulrl+", XLOCB(19,BOFP4,CBSO,16,1), XLBOCBBB_MASK, POWER4, { CR } }, 2082 2799 { "btlr", XLO(19,BOT,16,0), XLBOBB_MASK, PPCCOM, { BI } }, 2083 { "btlr-", XLO(19,BOT,16,0), XLBOBB_MASK, PPCCOM, { BI } }, 2084 { "btlr+", XLO(19,BOTP,16,0), XLBOBB_MASK, PPCCOM, { BI } }, 2800 { "btlr-", XLO(19,BOT,16,0), XLBOBB_MASK, NOPOWER4, { BI } }, 2801 { "btlr+", XLO(19,BOTP,16,0), XLBOBB_MASK, NOPOWER4, { BI } }, 2802 { "btlr-", XLO(19,BOTM4,16,0), XLBOBB_MASK, POWER4, { BI } }, 2803 { "btlr+", XLO(19,BOTP4,16,0), XLBOBB_MASK, POWER4, { BI } }, 2085 2804 { "bbtr", XLO(19,BOT,16,0), XLBOBB_MASK, PWRCOM, { BI } }, 2086 2805 { "btlrl", XLO(19,BOT,16,1), XLBOBB_MASK, PPCCOM, { BI } }, 2087 { "btlrl-", XLO(19,BOT,16,1), XLBOBB_MASK, PPCCOM, { BI } }, 2088 { "btlrl+", XLO(19,BOTP,16,1), XLBOBB_MASK, PPCCOM, { BI } }, 2806 { "btlrl-", XLO(19,BOT,16,1), XLBOBB_MASK, NOPOWER4, { BI } }, 2807 { "btlrl+", XLO(19,BOTP,16,1), XLBOBB_MASK, NOPOWER4, { BI } }, 2808 { "btlrl-", XLO(19,BOTM4,16,1), XLBOBB_MASK, POWER4, { BI } }, 2809 { "btlrl+", XLO(19,BOTP4,16,1), XLBOBB_MASK, POWER4, { BI } }, 2089 2810 { "bbtrl", XLO(19,BOT,16,1), XLBOBB_MASK, PWRCOM, { BI } }, 2090 2811 { "bflr", XLO(19,BOF,16,0), XLBOBB_MASK, PPCCOM, { BI } }, 2091 { "bflr-", XLO(19,BOF,16,0), XLBOBB_MASK, PPCCOM, { BI } }, 2092 { "bflr+", XLO(19,BOFP,16,0), XLBOBB_MASK, PPCCOM, { BI } }, 2812 { "bflr-", XLO(19,BOF,16,0), XLBOBB_MASK, NOPOWER4, { BI } }, 2813 { "bflr+", XLO(19,BOFP,16,0), XLBOBB_MASK, NOPOWER4, { BI } }, 2814 { "bflr-", XLO(19,BOFM4,16,0), XLBOBB_MASK, POWER4, { BI } }, 2815 { "bflr+", XLO(19,BOFP4,16,0), XLBOBB_MASK, POWER4, { BI } }, 2093 2816 { "bbfr", XLO(19,BOF,16,0), XLBOBB_MASK, PWRCOM, { BI } }, 2094 2817 { "bflrl", XLO(19,BOF,16,1), XLBOBB_MASK, PPCCOM, { BI } }, 2095 { "bflrl-", XLO(19,BOF,16,1), XLBOBB_MASK, PPCCOM, { BI } }, 2096 { "bflrl+", XLO(19,BOFP,16,1), XLBOBB_MASK, PPCCOM, { BI } }, 2818 { "bflrl-", XLO(19,BOF,16,1), XLBOBB_MASK, NOPOWER4, { BI } }, 2819 { "bflrl+", XLO(19,BOFP,16,1), XLBOBB_MASK, NOPOWER4, { BI } }, 2820 { "bflrl-", XLO(19,BOFM4,16,1), XLBOBB_MASK, POWER4, { BI } }, 2821 { "bflrl+", XLO(19,BOFP4,16,1), XLBOBB_MASK, POWER4, { BI } }, 2097 2822 { "bbfrl", XLO(19,BOF,16,1), XLBOBB_MASK, PWRCOM, { BI } }, 2098 2823 { "bdnztlr", XLO(19,BODNZT,16,0), XLBOBB_MASK, PPCCOM, { BI } }, 2099 { "bdnztlr-",XLO(19,BODNZT,16,0), XLBOBB_MASK, PPCCOM,{ BI } },2100 { "bdnztlr+",XLO(19,BODNZTP,16,0), XLBOBB_MASK, PPCCOM,{ BI } },2824 { "bdnztlr-",XLO(19,BODNZT,16,0), XLBOBB_MASK, NOPOWER4, { BI } }, 2825 { "bdnztlr+",XLO(19,BODNZTP,16,0), XLBOBB_MASK, NOPOWER4, { BI } }, 2101 2826 { "bdnztlrl",XLO(19,BODNZT,16,1), XLBOBB_MASK, PPCCOM, { BI } }, 2102 { "bdnztlrl-",XLO(19,BODNZT,16,1), XLBOBB_MASK, PPCCOM,{ BI } },2103 { "bdnztlrl+",XLO(19,BODNZTP,16,1), XLBOBB_MASK, PPCCOM,{ BI } },2827 { "bdnztlrl-",XLO(19,BODNZT,16,1), XLBOBB_MASK, NOPOWER4, { BI } }, 2828 { "bdnztlrl+",XLO(19,BODNZTP,16,1), XLBOBB_MASK, NOPOWER4, { BI } }, 2104 2829 { "bdnzflr", XLO(19,BODNZF,16,0), XLBOBB_MASK, PPCCOM, { BI } }, 2105 { "bdnzflr-",XLO(19,BODNZF,16,0), XLBOBB_MASK, PPCCOM,{ BI } },2106 { "bdnzflr+",XLO(19,BODNZFP,16,0), XLBOBB_MASK, PPCCOM,{ BI } },2830 { "bdnzflr-",XLO(19,BODNZF,16,0), XLBOBB_MASK, NOPOWER4, { BI } }, 2831 { "bdnzflr+",XLO(19,BODNZFP,16,0), XLBOBB_MASK, NOPOWER4, { BI } }, 2107 2832 { "bdnzflrl",XLO(19,BODNZF,16,1), XLBOBB_MASK, PPCCOM, { BI } }, 2108 { "bdnzflrl-",XLO(19,BODNZF,16,1), XLBOBB_MASK, PPCCOM,{ BI } },2109 { "bdnzflrl+",XLO(19,BODNZFP,16,1), XLBOBB_MASK, PPCCOM,{ BI } },2833 { "bdnzflrl-",XLO(19,BODNZF,16,1), XLBOBB_MASK, NOPOWER4, { BI } }, 2834 { "bdnzflrl+",XLO(19,BODNZFP,16,1), XLBOBB_MASK, NOPOWER4, { BI } }, 2110 2835 { "bdztlr", XLO(19,BODZT,16,0), XLBOBB_MASK, PPCCOM, { BI } }, 2111 { "bdztlr-", XLO(19,BODZT,16,0), XLBOBB_MASK, PPCCOM, { BI } },2112 { "bdztlr+", XLO(19,BODZTP,16,0), XLBOBB_MASK, PPCCOM,{ BI } },2836 { "bdztlr-", XLO(19,BODZT,16,0), XLBOBB_MASK, NOPOWER4, { BI } }, 2837 { "bdztlr+", XLO(19,BODZTP,16,0), XLBOBB_MASK, NOPOWER4, { BI } }, 2113 2838 { "bdztlrl", XLO(19,BODZT,16,1), XLBOBB_MASK, PPCCOM, { BI } }, 2114 { "bdztlrl-",XLO(19,BODZT,16,1), XLBOBB_MASK, PPCCOM, { BI } },2115 { "bdztlrl+",XLO(19,BODZTP,16,1), XLBOBB_MASK, PPCCOM,{ BI } },2839 { "bdztlrl-",XLO(19,BODZT,16,1), XLBOBB_MASK, NOPOWER4, { BI } }, 2840 { "bdztlrl+",XLO(19,BODZTP,16,1), XLBOBB_MASK, NOPOWER4, { BI } }, 2116 2841 { "bdzflr", XLO(19,BODZF,16,0), XLBOBB_MASK, PPCCOM, { BI } }, 2117 { "bdzflr-", XLO(19,BODZF,16,0), XLBOBB_MASK, PPCCOM, { BI } },2118 { "bdzflr+", XLO(19,BODZFP,16,0), XLBOBB_MASK, PPCCOM,{ BI } },2842 { "bdzflr-", XLO(19,BODZF,16,0), XLBOBB_MASK, NOPOWER4, { BI } }, 2843 { "bdzflr+", XLO(19,BODZFP,16,0), XLBOBB_MASK, NOPOWER4, { BI } }, 2119 2844 { "bdzflrl", XLO(19,BODZF,16,1), XLBOBB_MASK, PPCCOM, { BI } }, 2120 { "bdzflrl-",XLO(19,BODZF,16,1), XLBOBB_MASK, PPCCOM, { BI } },2121 { "bdzflrl+",XLO(19,BODZFP,16,1), XLBOBB_MASK, PPCCOM,{ BI } },2845 { "bdzflrl-",XLO(19,BODZF,16,1), XLBOBB_MASK, NOPOWER4, { BI } }, 2846 { "bdzflrl+",XLO(19,BODZFP,16,1), XLBOBB_MASK, NOPOWER4, { BI } }, 2122 2847 { "bclr", XLLK(19,16,0), XLYBB_MASK, PPCCOM, { BO, BI } }, 2123 2848 { "bclrl", XLLK(19,16,1), XLYBB_MASK, PPCCOM, { BO, BI } }, … … 2128 2853 { "bcr", XLLK(19,16,0), XLBB_MASK, PWRCOM, { BO, BI } }, 2129 2854 { "bcrl", XLLK(19,16,1), XLBB_MASK, PWRCOM, { BO, BI } }, 2855 { "bclre", XLLK(19,17,0), XLBB_MASK, BOOKE64, { BO, BI } }, 2856 { "bclrel", XLLK(19,17,1), XLBB_MASK, BOOKE64, { BO, BI } }, 2130 2857 2131 2858 { "rfid", XL(19,18), 0xffffffff, PPC64, { 0 } }, … … 2133 2860 { "crnot", XL(19,33), XL_MASK, PPCCOM, { BT, BA, BBA } }, 2134 2861 { "crnor", XL(19,33), XL_MASK, COM, { BT, BA, BB } }, 2862 { "rfmci", X(19,38), 0xffffffff, PPCRFMCI, { 0 } }, 2135 2863 2136 2864 { "rfi", XL(19,50), 0xffffffff, COM, { 0 } }, 2137 2865 { "rfci", XL(19,51), 0xffffffff, PPC403, { 0 } }, 2866 { "rfci", XL(19,51), 0xffffffff, BOOKE, { 0 } }, 2138 2867 2139 2868 { "rfsvc", XL(19,82), 0xffffffff, POWER, { 0 } }, … … 2162 2891 { "bctrl", XLO(19,BOU,528,1), XLBOBIBB_MASK, COM, { 0 } }, 2163 2892 { "bltctr", XLOCB(19,BOT,CBLT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2164 { "bltctr-", XLOCB(19,BOT,CBLT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2165 { "bltctr+", XLOCB(19,BOTP,CBLT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2893 { "bltctr-", XLOCB(19,BOT,CBLT,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2894 { "bltctr+", XLOCB(19,BOTP,CBLT,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2895 { "bltctr-", XLOCB(19,BOTM4,CBLT,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2896 { "bltctr+", XLOCB(19,BOTP4,CBLT,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2166 2897 { "bltctrl", XLOCB(19,BOT,CBLT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2167 { "bltctrl-",XLOCB(19,BOT,CBLT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2168 { "bltctrl+",XLOCB(19,BOTP,CBLT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2898 { "bltctrl-",XLOCB(19,BOT,CBLT,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2899 { "bltctrl+",XLOCB(19,BOTP,CBLT,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2900 { "bltctrl-",XLOCB(19,BOTM4,CBLT,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2901 { "bltctrl+",XLOCB(19,BOTP4,CBLT,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2169 2902 { "bgtctr", XLOCB(19,BOT,CBGT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2170 { "bgtctr-", XLOCB(19,BOT,CBGT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2171 { "bgtctr+", XLOCB(19,BOTP,CBGT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2903 { "bgtctr-", XLOCB(19,BOT,CBGT,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2904 { "bgtctr+", XLOCB(19,BOTP,CBGT,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2905 { "bgtctr-", XLOCB(19,BOTM4,CBGT,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2906 { "bgtctr+", XLOCB(19,BOTP4,CBGT,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2172 2907 { "bgtctrl", XLOCB(19,BOT,CBGT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2173 { "bgtctrl-",XLOCB(19,BOT,CBGT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2174 { "bgtctrl+",XLOCB(19,BOTP,CBGT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2908 { "bgtctrl-",XLOCB(19,BOT,CBGT,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2909 { "bgtctrl+",XLOCB(19,BOTP,CBGT,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2910 { "bgtctrl-",XLOCB(19,BOTM4,CBGT,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2911 { "bgtctrl+",XLOCB(19,BOTP4,CBGT,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2175 2912 { "beqctr", XLOCB(19,BOT,CBEQ,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2176 { "beqctr-", XLOCB(19,BOT,CBEQ,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2177 { "beqctr+", XLOCB(19,BOTP,CBEQ,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2913 { "beqctr-", XLOCB(19,BOT,CBEQ,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2914 { "beqctr+", XLOCB(19,BOTP,CBEQ,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2915 { "beqctr-", XLOCB(19,BOTM4,CBEQ,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2916 { "beqctr+", XLOCB(19,BOTP4,CBEQ,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2178 2917 { "beqctrl", XLOCB(19,BOT,CBEQ,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2179 { "beqctrl-",XLOCB(19,BOT,CBEQ,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2180 { "beqctrl+",XLOCB(19,BOTP,CBEQ,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2918 { "beqctrl-",XLOCB(19,BOT,CBEQ,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2919 { "beqctrl+",XLOCB(19,BOTP,CBEQ,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2920 { "beqctrl-",XLOCB(19,BOTM4,CBEQ,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2921 { "beqctrl+",XLOCB(19,BOTP4,CBEQ,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2181 2922 { "bsoctr", XLOCB(19,BOT,CBSO,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2182 { "bsoctr-", XLOCB(19,BOT,CBSO,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2183 { "bsoctr+", XLOCB(19,BOTP,CBSO,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2923 { "bsoctr-", XLOCB(19,BOT,CBSO,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2924 { "bsoctr+", XLOCB(19,BOTP,CBSO,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2925 { "bsoctr-", XLOCB(19,BOTM4,CBSO,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2926 { "bsoctr+", XLOCB(19,BOTP4,CBSO,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2184 2927 { "bsoctrl", XLOCB(19,BOT,CBSO,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2185 { "bsoctrl-",XLOCB(19,BOT,CBSO,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2186 { "bsoctrl+",XLOCB(19,BOTP,CBSO,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2928 { "bsoctrl-",XLOCB(19,BOT,CBSO,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2929 { "bsoctrl+",XLOCB(19,BOTP,CBSO,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2930 { "bsoctrl-",XLOCB(19,BOTM4,CBSO,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2931 { "bsoctrl+",XLOCB(19,BOTP4,CBSO,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2187 2932 { "bunctr", XLOCB(19,BOT,CBSO,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2188 { "bunctr-", XLOCB(19,BOT,CBSO,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2189 { "bunctr+", XLOCB(19,BOTP,CBSO,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2933 { "bunctr-", XLOCB(19,BOT,CBSO,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2934 { "bunctr+", XLOCB(19,BOTP,CBSO,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2935 { "bunctr-", XLOCB(19,BOTM4,CBSO,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2936 { "bunctr+", XLOCB(19,BOTP4,CBSO,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2190 2937 { "bunctrl", XLOCB(19,BOT,CBSO,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2191 { "bunctrl-",XLOCB(19,BOT,CBSO,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2192 { "bunctrl+",XLOCB(19,BOTP,CBSO,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2938 { "bunctrl-",XLOCB(19,BOT,CBSO,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2939 { "bunctrl+",XLOCB(19,BOTP,CBSO,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2940 { "bunctrl-",XLOCB(19,BOTM4,CBSO,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2941 { "bunctrl+",XLOCB(19,BOTP4,CBSO,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2193 2942 { "bgectr", XLOCB(19,BOF,CBLT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2194 { "bgectr-", XLOCB(19,BOF,CBLT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2195 { "bgectr+", XLOCB(19,BOFP,CBLT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2943 { "bgectr-", XLOCB(19,BOF,CBLT,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2944 { "bgectr+", XLOCB(19,BOFP,CBLT,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2945 { "bgectr-", XLOCB(19,BOFM4,CBLT,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2946 { "bgectr+", XLOCB(19,BOFP4,CBLT,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2196 2947 { "bgectrl", XLOCB(19,BOF,CBLT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2197 { "bgectrl-",XLOCB(19,BOF,CBLT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2198 { "bgectrl+",XLOCB(19,BOFP,CBLT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2948 { "bgectrl-",XLOCB(19,BOF,CBLT,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2949 { "bgectrl+",XLOCB(19,BOFP,CBLT,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2950 { "bgectrl-",XLOCB(19,BOFM4,CBLT,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2951 { "bgectrl+",XLOCB(19,BOFP4,CBLT,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2199 2952 { "bnlctr", XLOCB(19,BOF,CBLT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2200 { "bnlctr-", XLOCB(19,BOF,CBLT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2201 { "bnlctr+", XLOCB(19,BOFP,CBLT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2953 { "bnlctr-", XLOCB(19,BOF,CBLT,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2954 { "bnlctr+", XLOCB(19,BOFP,CBLT,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2955 { "bnlctr-", XLOCB(19,BOFM4,CBLT,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2956 { "bnlctr+", XLOCB(19,BOFP4,CBLT,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2202 2957 { "bnlctrl", XLOCB(19,BOF,CBLT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2203 { "bnlctrl-",XLOCB(19,BOF,CBLT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2204 { "bnlctrl+",XLOCB(19,BOFP,CBLT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2958 { "bnlctrl-",XLOCB(19,BOF,CBLT,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2959 { "bnlctrl+",XLOCB(19,BOFP,CBLT,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2960 { "bnlctrl-",XLOCB(19,BOFM4,CBLT,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2961 { "bnlctrl+",XLOCB(19,BOFP4,CBLT,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2205 2962 { "blectr", XLOCB(19,BOF,CBGT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2206 { "blectr-", XLOCB(19,BOF,CBGT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2207 { "blectr+", XLOCB(19,BOFP,CBGT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2963 { "blectr-", XLOCB(19,BOF,CBGT,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2964 { "blectr+", XLOCB(19,BOFP,CBGT,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2965 { "blectr-", XLOCB(19,BOFM4,CBGT,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2966 { "blectr+", XLOCB(19,BOFP4,CBGT,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2208 2967 { "blectrl", XLOCB(19,BOF,CBGT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2209 { "blectrl-",XLOCB(19,BOF,CBGT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2210 { "blectrl+",XLOCB(19,BOFP,CBGT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2968 { "blectrl-",XLOCB(19,BOF,CBGT,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2969 { "blectrl+",XLOCB(19,BOFP,CBGT,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2970 { "blectrl-",XLOCB(19,BOFM4,CBGT,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2971 { "blectrl+",XLOCB(19,BOFP4,CBGT,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2211 2972 { "bngctr", XLOCB(19,BOF,CBGT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2212 { "bngctr-", XLOCB(19,BOF,CBGT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2213 { "bngctr+", XLOCB(19,BOFP,CBGT,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2973 { "bngctr-", XLOCB(19,BOF,CBGT,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2974 { "bngctr+", XLOCB(19,BOFP,CBGT,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2975 { "bngctr-", XLOCB(19,BOFM4,CBGT,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2976 { "bngctr+", XLOCB(19,BOFP4,CBGT,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2214 2977 { "bngctrl", XLOCB(19,BOF,CBGT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2215 { "bngctrl-",XLOCB(19,BOF,CBGT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2216 { "bngctrl+",XLOCB(19,BOFP,CBGT,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2978 { "bngctrl-",XLOCB(19,BOF,CBGT,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2979 { "bngctrl+",XLOCB(19,BOFP,CBGT,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2980 { "bngctrl-",XLOCB(19,BOFM4,CBGT,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2981 { "bngctrl+",XLOCB(19,BOFP4,CBGT,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2217 2982 { "bnectr", XLOCB(19,BOF,CBEQ,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2218 { "bnectr-", XLOCB(19,BOF,CBEQ,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2219 { "bnectr+", XLOCB(19,BOFP,CBEQ,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2983 { "bnectr-", XLOCB(19,BOF,CBEQ,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2984 { "bnectr+", XLOCB(19,BOFP,CBEQ,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2985 { "bnectr-", XLOCB(19,BOFM4,CBEQ,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2986 { "bnectr+", XLOCB(19,BOFP4,CBEQ,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2220 2987 { "bnectrl", XLOCB(19,BOF,CBEQ,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2221 { "bnectrl-",XLOCB(19,BOF,CBEQ,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2222 { "bnectrl+",XLOCB(19,BOFP,CBEQ,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2988 { "bnectrl-",XLOCB(19,BOF,CBEQ,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2989 { "bnectrl+",XLOCB(19,BOFP,CBEQ,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2990 { "bnectrl-",XLOCB(19,BOFM4,CBEQ,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2991 { "bnectrl+",XLOCB(19,BOFP4,CBEQ,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2223 2992 { "bnsctr", XLOCB(19,BOF,CBSO,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2224 { "bnsctr-", XLOCB(19,BOF,CBSO,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2225 { "bnsctr+", XLOCB(19,BOFP,CBSO,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2993 { "bnsctr-", XLOCB(19,BOF,CBSO,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2994 { "bnsctr+", XLOCB(19,BOFP,CBSO,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2995 { "bnsctr-", XLOCB(19,BOFM4,CBSO,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2996 { "bnsctr+", XLOCB(19,BOFP4,CBSO,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2226 2997 { "bnsctrl", XLOCB(19,BOF,CBSO,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2227 { "bnsctrl-",XLOCB(19,BOF,CBSO,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2228 { "bnsctrl+",XLOCB(19,BOFP,CBSO,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2998 { "bnsctrl-",XLOCB(19,BOF,CBSO,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 2999 { "bnsctrl+",XLOCB(19,BOFP,CBSO,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 3000 { "bnsctrl-",XLOCB(19,BOFM4,CBSO,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 3001 { "bnsctrl+",XLOCB(19,BOFP4,CBSO,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2229 3002 { "bnuctr", XLOCB(19,BOF,CBSO,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2230 { "bnuctr-", XLOCB(19,BOF,CBSO,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 2231 { "bnuctr+", XLOCB(19,BOFP,CBSO,528,0), XLBOCBBB_MASK, PPCCOM, { CR } }, 3003 { "bnuctr-", XLOCB(19,BOF,CBSO,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 3004 { "bnuctr+", XLOCB(19,BOFP,CBSO,528,0), XLBOCBBB_MASK, NOPOWER4, { CR } }, 3005 { "bnuctr-", XLOCB(19,BOFM4,CBSO,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 3006 { "bnuctr+", XLOCB(19,BOFP4,CBSO,528,0), XLBOCBBB_MASK, POWER4, { CR } }, 2232 3007 { "bnuctrl", XLOCB(19,BOF,CBSO,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2233 { "bnuctrl-",XLOCB(19,BOF,CBSO,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 2234 { "bnuctrl+",XLOCB(19,BOFP,CBSO,528,1), XLBOCBBB_MASK, PPCCOM, { CR } }, 3008 { "bnuctrl-",XLOCB(19,BOF,CBSO,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 3009 { "bnuctrl+",XLOCB(19,BOFP,CBSO,528,1), XLBOCBBB_MASK, NOPOWER4, { CR } }, 3010 { "bnuctrl-",XLOCB(19,BOFM4,CBSO,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 3011 { "bnuctrl+",XLOCB(19,BOFP4,CBSO,528,1), XLBOCBBB_MASK, POWER4, { CR } }, 2235 3012 { "btctr", XLO(19,BOT,528,0), XLBOBB_MASK, PPCCOM, { BI } }, 2236 { "btctr-", XLO(19,BOT,528,0), XLBOBB_MASK, PPCCOM, { BI } }, 2237 { "btctr+", XLO(19,BOTP,528,0), XLBOBB_MASK, PPCCOM, { BI } }, 3013 { "btctr-", XLO(19,BOT,528,0), XLBOBB_MASK, NOPOWER4, { BI } }, 3014 { "btctr+", XLO(19,BOTP,528,0), XLBOBB_MASK, NOPOWER4, { BI } }, 3015 { "btctr-", XLO(19,BOTM4,528,0), XLBOBB_MASK, POWER4, { BI } }, 3016 { "btctr+", XLO(19,BOTP4,528,0), XLBOBB_MASK, POWER4, { BI } }, 2238 3017 { "btctrl", XLO(19,BOT,528,1), XLBOBB_MASK, PPCCOM, { BI } }, 2239 { "btctrl-", XLO(19,BOT,528,1), XLBOBB_MASK, PPCCOM, { BI } }, 2240 { "btctrl+", XLO(19,BOTP,528,1), XLBOBB_MASK, PPCCOM, { BI } }, 3018 { "btctrl-", XLO(19,BOT,528,1), XLBOBB_MASK, NOPOWER4, { BI } }, 3019 { "btctrl+", XLO(19,BOTP,528,1), XLBOBB_MASK, NOPOWER4, { BI } }, 3020 { "btctrl-", XLO(19,BOTM4,528,1), XLBOBB_MASK, POWER4, { BI } }, 3021 { "btctrl+", XLO(19,BOTP4,528,1), XLBOBB_MASK, POWER4, { BI } }, 2241 3022 { "bfctr", XLO(19,BOF,528,0), XLBOBB_MASK, PPCCOM, { BI } }, 2242 { "bfctr-", XLO(19,BOF,528,0), XLBOBB_MASK, PPCCOM, { BI } }, 2243 { "bfctr+", XLO(19,BOFP,528,0), XLBOBB_MASK, PPCCOM, { BI } }, 3023 { "bfctr-", XLO(19,BOF,528,0), XLBOBB_MASK, NOPOWER4, { BI } }, 3024 { "bfctr+", XLO(19,BOFP,528,0), XLBOBB_MASK, NOPOWER4, { BI } }, 3025 { "bfctr-", XLO(19,BOFM4,528,0), XLBOBB_MASK, POWER4, { BI } }, 3026 { "bfctr+", XLO(19,BOFP4,528,0), XLBOBB_MASK, POWER4, { BI } }, 2244 3027 { "bfctrl", XLO(19,BOF,528,1), XLBOBB_MASK, PPCCOM, { BI } }, 2245 { "bfctrl-", XLO(19,BOF,528,1), XLBOBB_MASK, PPCCOM, { BI } }, 2246 { "bfctrl+", XLO(19,BOFP,528,1), XLBOBB_MASK, PPCCOM, { BI } }, 3028 { "bfctrl-", XLO(19,BOF,528,1), XLBOBB_MASK, NOPOWER4, { BI } }, 3029 { "bfctrl+", XLO(19,BOFP,528,1), XLBOBB_MASK, NOPOWER4, { BI } }, 3030 { "bfctrl-", XLO(19,BOFM4,528,1), XLBOBB_MASK, POWER4, { BI } }, 3031 { "bfctrl+", XLO(19,BOFP4,528,1), XLBOBB_MASK, POWER4, { BI } }, 2247 3032 { "bcctr", XLLK(19,528,0), XLYBB_MASK, PPCCOM, { BO, BI } }, 2248 3033 { "bcctr-", XLYLK(19,528,0,0), XLYBB_MASK, PPCCOM, { BOE, BI } }, … … 2253 3038 { "bcc", XLLK(19,528,0), XLBB_MASK, PWRCOM, { BO, BI } }, 2254 3039 { "bccl", XLLK(19,528,1), XLBB_MASK, PWRCOM, { BO, BI } }, 3040 { "bcctre", XLLK(19,529,0), XLYBB_MASK, BOOKE64, { BO, BI } }, 3041 { "bcctrel", XLLK(19,529,1), XLYBB_MASK, BOOKE64, { BO, BI } }, 2255 3042 2256 3043 { "rlwimi", M(20,0), M_MASK, PPCCOM, { RA,RS,SH,MBE,ME } }, … … 2271 3058 { "rlmi", M(22,0), M_MASK, M601, { RA,RS,RB,MBE,ME } }, 2272 3059 { "rlmi.", M(22,1), M_MASK, M601, { RA,RS,RB,MBE,ME } }, 3060 3061 { "be", B(22,0,0), B_MASK, BOOKE64, { LI } }, 3062 { "bel", B(22,0,1), B_MASK, BOOKE64, { LI } }, 3063 { "bea", B(22,1,0), B_MASK, BOOKE64, { LIA } }, 3064 { "bela", B(22,1,1), B_MASK, BOOKE64, { LIA } }, 2273 3065 2274 3066 { "rotlw", MME(23,31,0), MMBME_MASK, PPCCOM, { RA, RS, RB } }, … … 2387 3179 { "mulhwu.", XO(31,11,0,1), XO_MASK, PPC, { RT, RA, RB } }, 2388 3180 3181 { "isellt", X(31,15), X_MASK, PPCISEL, { RT, RA, RB } }, 3182 { "iselgt", X(31,47), X_MASK, PPCISEL, { RT, RA, RB } }, 3183 { "iseleq", X(31,79), X_MASK, PPCISEL, { RT, RA, RB } }, 3184 { "isel", XISEL(31,15), XISEL_MASK, PPCISEL, { RT, RA, RB, CRB } }, 3185 2389 3186 { "mfcr", X(31,19), XRARB_MASK, COM, { RT } }, 2390 3187 … … 2392 3189 2393 3190 { "ldx", X(31,21), X_MASK, PPC64, { RT, RA, RB } }, 3191 3192 { "icbt", X(31,22), X_MASK, BOOKE, { CT, RA, RB } }, 2394 3193 2395 3194 { "lwzx", X(31,23), X_MASK, PPCCOM, { RT, RA, RB } }, … … 2414 3213 { "maskg", XRC(31,29,0), X_MASK, M601, { RA, RS, RB } }, 2415 3214 { "maskg.", XRC(31,29,1), X_MASK, M601, { RA, RS, RB } }, 3215 3216 { "icbte", X(31,30), X_MASK, BOOKE64, { CT, RA, RB } }, 3217 3218 { "lwzxe", X(31,31), X_MASK, BOOKE64, { RT, RA, RB } }, 2416 3219 2417 3220 { "cmplw", XCMPL(31,32,0), XCMPL_MASK, PPCCOM, { OBF, RA, RB } }, … … 2436 3239 { "lux", X(31,55), X_MASK, PWRCOM, { RT, RA, RB } }, 2437 3240 3241 { "dcbste", X(31,62), XRT_MASK, BOOKE64, { RA, RB } }, 3242 3243 { "lwzuxe", X(31,63), X_MASK, BOOKE64, { RT, RAL, RB } }, 3244 2438 3245 { "cntlzd", XRC(31,58,0), XRB_MASK, PPC64, { RA, RS } }, 2439 3246 { "cntlzd.", XRC(31,58,1), XRB_MASK, PPC64, { RA, RS } }, 2440 3247 2441 { "andc", XRC(31,60,0), X_MASK, COM, { RA, RS, RB } },2442 { "andc.", XRC(31,60,1), X_MASK, COM, { RA, RS, RB } },3248 { "andc", XRC(31,60,0), X_MASK, COM, { RA, RS, RB } }, 3249 { "andc.", XRC(31,60,1), X_MASK, COM, { RA, RS, RB } }, 2443 3250 2444 3251 { "tdlgt", XTO(31,68,TOLGT), XTO_MASK, PPC64, { RA, RB } }, … … 2474 3281 { "lbzx", X(31,87), X_MASK, COM, { RT, RA, RB } }, 2475 3282 3283 { "dcbfe", X(31,94), XRT_MASK, BOOKE64, { RA, RB } }, 3284 3285 { "lbzxe", X(31,95), X_MASK, BOOKE64, { RT, RA, RB } }, 3286 2476 3287 { "neg", XO(31,104,0,0), XORB_MASK, COM, { RT, RA } }, 2477 3288 { "neg.", XO(31,104,0,1), XORB_MASK, COM, { RT, RA } }, … … 2486 3297 { "mtsrdin", X(31,114), XRA_MASK, PPC64, { RS, RB } }, 2487 3298 2488 { "clf", X(31,118), X RB_MASK, POWER, { RT, RA} },3299 { "clf", X(31,118), XTO_MASK, POWER, { RA, RB } }, 2489 3300 2490 3301 { "lbzux", X(31,119), X_MASK, COM, { RT, RAL, RB } }, … … 2495 3306 { "nor.", XRC(31,124,1), X_MASK, COM, { RA, RS, RB } }, 2496 3307 3308 { "lwarxe", X(31,126), X_MASK, BOOKE64, { RT, RA, RB } }, 3309 3310 { "lbzuxe", X(31,127), X_MASK, BOOKE64, { RT, RAL, RB } }, 3311 2497 3312 { "wrtee", X(31,131), XRARB_MASK, PPC403, { RS } }, 3313 { "wrtee", X(31,131), XRARB_MASK, BOOKE, { RS } }, 3314 3315 { "dcbtstls",X(31,134), X_MASK, PPCCHLK, { CT, RA, RB }}, 2498 3316 2499 3317 { "subfe", XO(31,136,0,0), XO_MASK, PPCCOM, { RT, RA, RB } }, … … 2515 3333 { "aeo.", XO(31,138,1,1), XO_MASK, PWRCOM, { RT, RA, RB } }, 2516 3334 3335 { "dcbtstlse",X(31,142),X_MASK, PPCCHLK64, { CT, RA, RB }}, 3336 2517 3337 { "mtcr", XFXM(31,144,0xff), XFXFXM_MASK|FXM_MASK, COM, { RS }}, 2518 3338 { "mtcrf", X(31,144), XFXFXM_MASK, COM, { FXM, RS } }, … … 2527 3347 { "stx", X(31,151), X_MASK, PWRCOM, { RS, RA, RB } }, 2528 3348 3349 { "stwcxe.", XRC(31,158,1), X_MASK, BOOKE64, { RS, RA, RB } }, 3350 3351 { "stwxe", X(31,159), X_MASK, BOOKE64, { RS, RA, RB } }, 3352 2529 3353 { "slq", XRC(31,152,0), X_MASK, M601, { RA, RS, RB } }, 2530 3354 { "slq.", XRC(31,152,1), X_MASK, M601, { RA, RS, RB } }, … … 2534 3358 2535 3359 { "wrteei", X(31,163), XE_MASK, PPC403, { E } }, 2536 2537 { "mtmsrd", X(31,178), XRARB_MASK, PPC64, { RS } }, 3360 { "wrteei", X(31,163), XE_MASK, BOOKE, { E } }, 3361 3362 { "dcbtls", X(31,166), X_MASK, PPCCHLK, { CT, RA, RB }}, 3363 { "dcbtlse", X(31,174), X_MASK, PPCCHLK64, { CT, RA, RB }}, 3364 3365 { "mtmsrd", X(31,178), XRLARB_MASK, PPC64, { RS, MTMSRD_L } }, 2538 3366 2539 3367 { "stdux", X(31,181), X_MASK, PPC64, { RS, RAS, RB } }, … … 2544 3372 { "sliq", XRC(31,184,0), X_MASK, M601, { RA, RS, SH } }, 2545 3373 { "sliq.", XRC(31,184,1), X_MASK, M601, { RA, RS, SH } }, 3374 3375 { "stwuxe", X(31,191), X_MASK, BOOKE64, { RS, RAS, RB } }, 2546 3376 2547 3377 { "subfze", XO(31,200,0,0), XORB_MASK, PPCCOM, { RT, RA } }, … … 2567 3397 { "stdcx.", XRC(31,214,1), X_MASK, PPC64, { RS, RA, RB } }, 2568 3398 2569 { "stbx", X(31,215), X_MASK, COM, { RS, RA, RB } },3399 { "stbx", X(31,215), X_MASK, COM, { RS, RA, RB } }, 2570 3400 2571 3401 { "sllq", XRC(31,216,0), X_MASK, M601, { RA, RS, RB } }, … … 2574 3404 { "sleq", XRC(31,217,0), X_MASK, M601, { RA, RS, RB } }, 2575 3405 { "sleq.", XRC(31,217,1), X_MASK, M601, { RA, RS, RB } }, 3406 3407 { "stbxe", X(31,223), X_MASK, BOOKE64, { RS, RA, RB } }, 3408 3409 { "icblc", X(31,230), X_MASK, PPCCHLK, { CT, RA, RB }}, 2576 3410 2577 3411 { "subfme", XO(31,232,0,0), XORB_MASK, PPCCOM, { RT, RA } }, … … 2607 3441 { "mulso.", XO(31,235,1,1), XO_MASK, PWRCOM, { RT, RA, RB } }, 2608 3442 3443 { "icblce", X(31,238), X_MASK, PPCCHLK64, { CT, RA, RB }}, 2609 3444 { "mtsrin", X(31,242), XRA_MASK, PPC32, { RS, RB } }, 2610 3445 { "mtsri", X(31,242), XRA_MASK, POWER32, { RS, RB } }, 2611 3446 2612 { "dcbtst", X(31,246), XRT_MASK, PPC, { RA, RB } },3447 { "dcbtst", X(31,246), XRT_MASK, PPC, { CT, RA, RB } }, 2613 3448 2614 3449 { "stbux", X(31,247), X_MASK, COM, { RS, RAS, RB } }, … … 2616 3451 { "slliq", XRC(31,248,0), X_MASK, M601, { RA, RS, SH } }, 2617 3452 { "slliq.", XRC(31,248,1), X_MASK, M601, { RA, RS, SH } }, 3453 3454 { "dcbtste", X(31,253), X_MASK, BOOKE64, { CT, RA, RB } }, 3455 3456 { "stbuxe", X(31,255), X_MASK, BOOKE64, { RS, RAS, RB } }, 3457 3458 { "mfdcrx", X(31,259), X_MASK, BOOKE, { RS, RA } }, 3459 3460 { "icbt", X(31,262), XRT_MASK, PPC403, { RA, RB } }, 2618 3461 2619 3462 { "doz", XO(31,264,0,0), XO_MASK, M601, { RT, RA, RB } }, … … 2631 3474 { "caxo.", XO(31,266,1,1), XO_MASK, PWRCOM, { RT, RA, RB } }, 2632 3475 3476 { "tlbiel", X(31,274), XRTRA_MASK, POWER4, { RB } }, 3477 3478 { "mfapidi", X(31,275), X_MASK, BOOKE, { RT, RA } }, 3479 2633 3480 { "lscbx", XRC(31,277,0), X_MASK, M601, { RT, RA, RB } }, 2634 3481 { "lscbx.", XRC(31,277,1), X_MASK, M601, { RT, RA, RB } }, 2635 3482 2636 { "dcbt", X(31,278), XRT_MASK, PPC, { RA, RB } },3483 { "dcbt", X(31,278), XRT_MASK, PPC, { CT, RA, RB } }, 2637 3484 2638 3485 { "lhzx", X(31,279), X_MASK, COM, { RT, RA, RB } }, 2639 2640 { "icbt", X(31,262), XRT_MASK, PPC403, { RA, RB } },2641 3486 2642 3487 { "eqv", XRC(31,284,0), X_MASK, COM, { RA, RS, RB } }, 2643 3488 { "eqv.", XRC(31,284,1), X_MASK, COM, { RA, RS, RB } }, 2644 3489 2645 { "tlbie", X(31,306), XRTRA_MASK, PPC, { RB } }, 3490 { "dcbte", X(31,286), X_MASK, BOOKE64, { CT, RA, RB } }, 3491 3492 { "lhzxe", X(31,287), X_MASK, BOOKE64, { RT, RA, RB } }, 3493 3494 { "tlbie", X(31,306), XRTLRA_MASK, PPC, { RB, L } }, 2646 3495 { "tlbi", X(31,306), XRT_MASK, POWER, { RA, RB } }, 2647 3496 … … 2653 3502 { "xor.", XRC(31,316,1), X_MASK, COM, { RA, RS, RB } }, 2654 3503 2655 { "mfexisr", XSPR(31,323,64), XSPR_MASK, PPC403, { RT } }, 2656 { "mfexier", XSPR(31,323,66), XSPR_MASK, PPC403, { RT } }, 2657 { "mfbr0", XSPR(31,323,128), XSPR_MASK, PPC403, { RT } }, 2658 { "mfbr1", XSPR(31,323,129), XSPR_MASK, PPC403, { RT } }, 2659 { "mfbr2", XSPR(31,323,130), XSPR_MASK, PPC403, { RT } }, 2660 { "mfbr3", XSPR(31,323,131), XSPR_MASK, PPC403, { RT } }, 2661 { "mfbr4", XSPR(31,323,132), XSPR_MASK, PPC403, { RT } }, 2662 { "mfbr5", XSPR(31,323,133), XSPR_MASK, PPC403, { RT } }, 2663 { "mfbr6", XSPR(31,323,134), XSPR_MASK, PPC403, { RT } }, 2664 { "mfbr7", XSPR(31,323,135), XSPR_MASK, PPC403, { RT } }, 2665 { "mfbear", XSPR(31,323,144), XSPR_MASK, PPC403, { RT } }, 2666 { "mfbesr", XSPR(31,323,145), XSPR_MASK, PPC403, { RT } }, 2667 { "mfiocr", XSPR(31,323,160), XSPR_MASK, PPC403, { RT } }, 3504 { "lhzuxe", X(31,319), X_MASK, BOOKE64, { RT, RAL, RB } }, 3505 3506 { "mfexisr", XSPR(31,323,64), XSPR_MASK, PPC403, { RT } }, 3507 { "mfexier", XSPR(31,323,66), XSPR_MASK, PPC403, { RT } }, 3508 { "mfbr0", XSPR(31,323,128), XSPR_MASK, PPC403, { RT } }, 3509 { "mfbr1", XSPR(31,323,129), XSPR_MASK, PPC403, { RT } }, 3510 { "mfbr2", XSPR(31,323,130), XSPR_MASK, PPC403, { RT } }, 3511 { "mfbr3", XSPR(31,323,131), XSPR_MASK, PPC403, { RT } }, 3512 { "mfbr4", XSPR(31,323,132), XSPR_MASK, PPC403, { RT } }, 3513 { "mfbr5", XSPR(31,323,133), XSPR_MASK, PPC403, { RT } }, 3514 { "mfbr6", XSPR(31,323,134), XSPR_MASK, PPC403, { RT } }, 3515 { "mfbr7", XSPR(31,323,135), XSPR_MASK, PPC403, { RT } }, 3516 { "mfbear", XSPR(31,323,144), XSPR_MASK, PPC403, { RT } }, 3517 { "mfbesr", XSPR(31,323,145), XSPR_MASK, PPC403, { RT } }, 3518 { "mfiocr", XSPR(31,323,160), XSPR_MASK, PPC403, { RT } }, 2668 3519 { "mfdmacr0", XSPR(31,323,192), XSPR_MASK, PPC403, { RT } }, 2669 3520 { "mfdmact0", XSPR(31,323,193), XSPR_MASK, PPC403, { RT } }, … … 2686 3537 { "mfdmasa3", XSPR(31,323,219), XSPR_MASK, PPC403, { RT } }, 2687 3538 { "mfdmacc3", XSPR(31,323,220), XSPR_MASK, PPC403, { RT } }, 2688 { "mfdmasr", XSPR(31,323,224), XSPR_MASK, PPC403, { RT } }, 2689 { "mfdcr", X(31,323), X_MASK, PPC403, { RT, SPR } }, 3539 { "mfdmasr", XSPR(31,323,224), XSPR_MASK, PPC403, { RT } }, 3540 { "mfdcr", X(31,323), X_MASK, PPC403, { RT, SPR } }, 3541 { "mfdcr", X(31,323), X_MASK, BOOKE, { RT, SPR } }, 2690 3542 2691 3543 { "div", XO(31,331,0,0), XO_MASK, M601, { RT, RA, RB } }, … … 2694 3546 { "divo.", XO(31,331,1,1), XO_MASK, M601, { RT, RA, RB } }, 2695 3547 2696 { "mfmq", XSPR(31,339,0), XSPR_MASK, M601, { RT } }, 2697 { "mfxer", XSPR(31,339,1), XSPR_MASK, COM, { RT } }, 2698 { "mfrtcu", XSPR(31,339,4), XSPR_MASK, COM, { RT } }, 2699 { "mfrtcl", XSPR(31,339,5), XSPR_MASK, COM, { RT } }, 2700 { "mfdec", XSPR(31,339,6), XSPR_MASK, MFDEC1, { RT } }, 2701 { "mflr", XSPR(31,339,8), XSPR_MASK, COM, { RT } }, 2702 { "mfctr", XSPR(31,339,9), XSPR_MASK, COM, { RT } }, 2703 { "mftid", XSPR(31,339,17), XSPR_MASK, POWER, { RT } }, 2704 { "mfdsisr", XSPR(31,339,18), XSPR_MASK, COM, { RT } }, 2705 { "mfdar", XSPR(31,339,19), XSPR_MASK, COM, { RT } }, 2706 { "mfdec", XSPR(31,339,22), XSPR_MASK, MFDEC2, { RT } }, 2707 { "mfsdr0", XSPR(31,339,24), XSPR_MASK, POWER, { RT } }, 2708 { "mfsdr1", XSPR(31,339,25), XSPR_MASK, COM, { RT } }, 2709 { "mfsrr0", XSPR(31,339,26), XSPR_MASK, COM, { RT } }, 2710 { "mfsrr1", XSPR(31,339,27), XSPR_MASK, COM, { RT } }, 2711 { "mfcmpa", XSPR(31,339,144), XSPR_MASK, PPC860, { RT } }, 2712 { "mfcmpb", XSPR(31,339,145), XSPR_MASK, PPC860, { RT } }, 2713 { "mfcmpc", XSPR(31,339,146), XSPR_MASK, PPC860, { RT } }, 2714 { "mfcmpd", XSPR(31,339,147), XSPR_MASK, PPC860, { RT } }, 2715 { "mficr", XSPR(31,339,148), XSPR_MASK, PPC860, { RT } }, 2716 { "mfder", XSPR(31,339,149), XSPR_MASK, PPC860, { RT } }, 2717 { "mfcounta", XSPR(31,339,150), XSPR_MASK, PPC860, { RT } }, 2718 { "mfcountb", XSPR(31,339,151), XSPR_MASK, PPC860, { RT } }, 2719 { "mfcmpe", XSPR(31,339,152), XSPR_MASK, PPC860, { RT } }, 2720 { "mfcmpf", XSPR(31,339,153), XSPR_MASK, PPC860, { RT } }, 2721 { "mfcmpg", XSPR(31,339,154), XSPR_MASK, PPC860, { RT } }, 2722 { "mfcmph", XSPR(31,339,155), XSPR_MASK, PPC860, { RT } }, 2723 { "mflctrl1", XSPR(31,339,156), XSPR_MASK, PPC860, { RT } }, 2724 { "mflctrl2", XSPR(31,339,157), XSPR_MASK, PPC860, { RT } }, 2725 { "mfictrl", XSPR(31,339,158), XSPR_MASK, PPC860, { RT } }, 2726 { "mfbar", XSPR(31,339,159), XSPR_MASK, PPC860, { RT } }, 2727 { "mfsprg4", XSPR(31,339,260), XSPR_MASK, PPC405, { RT } }, 2728 { "mfsprg5", XSPR(31,339,261), XSPR_MASK, PPC405, { RT } }, 2729 { "mfsprg6", XSPR(31,339,262), XSPR_MASK, PPC405, { RT } }, 2730 { "mfsprg7", XSPR(31,339,263), XSPR_MASK, PPC405, { RT } }, 2731 { "mfsprg", XSPR(31,339,272), XSPRG_MASK, PPC, { RT, SPRG } }, 2732 { "mfsprg0", XSPR(31,339,272), XSPR_MASK, PPC, { RT } }, 2733 { "mfsprg1", XSPR(31,339,273), XSPR_MASK, PPC, { RT } }, 2734 { "mfsprg2", XSPR(31,339,274), XSPR_MASK, PPC, { RT } }, 2735 { "mfsprg3", XSPR(31,339,275), XSPR_MASK, PPC, { RT } }, 2736 { "mfasr", XSPR(31,339,280), XSPR_MASK, PPC64, { RT } }, 2737 { "mfear", XSPR(31,339,282), XSPR_MASK, PPC, { RT } }, 2738 { "mfpvr", XSPR(31,339,287), XSPR_MASK, PPC, { RT } }, 2739 { "mfibatu", XSPR(31,339,528), XSPRBAT_MASK, PPC, { RT, SPRBAT } }, 2740 { "mfibatl", XSPR(31,339,529), XSPRBAT_MASK, PPC, { RT, SPRBAT } }, 2741 { "mfdbatu", XSPR(31,339,536), XSPRBAT_MASK, PPC, { RT, SPRBAT } }, 2742 { "mfdbatl", XSPR(31,339,537), XSPRBAT_MASK, PPC, { RT, SPRBAT } }, 2743 { "mfic_cst", XSPR(31,339,560), XSPR_MASK, PPC860, { RT } }, 2744 { "mfic_adr", XSPR(31,339,561), XSPR_MASK, PPC860, { RT } }, 2745 { "mfic_dat", XSPR(31,339,562), XSPR_MASK, PPC860, { RT } }, 2746 { "mfdc_cst", XSPR(31,339,568), XSPR_MASK, PPC860, { RT } }, 2747 { "mfdc_adr", XSPR(31,339,569), XSPR_MASK, PPC860, { RT } }, 2748 { "mfdc_dat", XSPR(31,339,570), XSPR_MASK, PPC860, { RT } }, 2749 { "mfdpdr", XSPR(31,339,630), XSPR_MASK, PPC860, { RT } }, 2750 { "mfdpir", XSPR(31,339,631), XSPR_MASK, PPC860, { RT } }, 2751 { "mfimmr", XSPR(31,339,638), XSPR_MASK, PPC860, { RT } }, 2752 { "mfmi_ctr", XSPR(31,339,784), XSPR_MASK, PPC860, { RT } }, 2753 { "mfmi_ap", XSPR(31,339,786), XSPR_MASK, PPC860, { RT } }, 2754 { "mfmi_epn", XSPR(31,339,787), XSPR_MASK, PPC860, { RT } }, 2755 { "mfmi_twc", XSPR(31,339,789), XSPR_MASK, PPC860, { RT } }, 2756 { "mfmi_rpn", XSPR(31,339,790), XSPR_MASK, PPC860, { RT } }, 2757 { "mfmd_ctr", XSPR(31,339,792), XSPR_MASK, PPC860, { RT } }, 2758 { "mfm_casid",XSPR(31,339,793), XSPR_MASK, PPC860, { RT } }, 2759 { "mfmd_ap", XSPR(31,339,794), XSPR_MASK, PPC860, { RT } }, 2760 { "mfmd_epn", XSPR(31,339,795), XSPR_MASK, PPC860, { RT } }, 2761 { "mfmd_twb", XSPR(31,339,796), XSPR_MASK, PPC860, { RT } }, 2762 { "mfmd_twc", XSPR(31,339,797), XSPR_MASK, PPC860, { RT } }, 2763 { "mfmd_rpn", XSPR(31,339,798), XSPR_MASK, PPC860, { RT } }, 2764 { "mfm_tw", XSPR(31,339,799), XSPR_MASK, PPC860, { RT } }, 2765 { "mfmi_dbcam",XSPR(31,339,816), XSPR_MASK, PPC860, { RT } }, 2766 { "mfmi_dbram0",XSPR(31,339,817), XSPR_MASK, PPC860, { RT } }, 2767 { "mfmi_dbram1",XSPR(31,339,818), XSPR_MASK, PPC860, { RT } }, 2768 { "mfmd_dbcam", XSPR(31,339,824), XSPR_MASK, PPC860, { RT } }, 2769 { "mfmd_dbram0",XSPR(31,339,825), XSPR_MASK, PPC860, { RT } }, 2770 { "mfmd_dbram1",XSPR(31,339,826), XSPR_MASK, PPC860, { RT } }, 2771 { "mfzpr", XSPR(31,339,944), XSPR_MASK, PPC403, { RT } }, 2772 { "mfpid", XSPR(31,339,945), XSPR_MASK, PPC403, { RT } }, 2773 { "mfccr0", XSPR(31,339,947), XSPR_MASK, PPC405, { RT } }, 2774 { "mficdbdr", XSPR(31,339,979), XSPR_MASK, PPC403, { RT } }, 2775 { "mfummcr0", XSPR(31,339,936), XSPR_MASK, PPC750, { RT } }, 2776 { "mfupmc1", XSPR(31,339,937), XSPR_MASK, PPC750, { RT } }, 2777 { "mfupmc2", XSPR(31,339,938), XSPR_MASK, PPC750, { RT } }, 2778 { "mfusia", XSPR(31,339,939), XSPR_MASK, PPC750, { RT } }, 2779 { "mfummcr1", XSPR(31,339,940), XSPR_MASK, PPC750, { RT } }, 2780 { "mfupmc3", XSPR(31,339,941), XSPR_MASK, PPC750, { RT } }, 2781 { "mfupmc4", XSPR(31,339,942), XSPR_MASK, PPC750, { RT } }, 3548 { "mfpmr", X(31,334), X_MASK, PPCPMR, { RT, PMR }}, 3549 3550 { "mfmq", XSPR(31,339,0), XSPR_MASK, M601, { RT } }, 3551 { "mfxer", XSPR(31,339,1), XSPR_MASK, COM, { RT } }, 3552 { "mfrtcu", XSPR(31,339,4), XSPR_MASK, COM, { RT } }, 3553 { "mfrtcl", XSPR(31,339,5), XSPR_MASK, COM, { RT } }, 3554 { "mfdec", XSPR(31,339,6), XSPR_MASK, MFDEC1, { RT } }, 3555 { "mflr", XSPR(31,339,8), XSPR_MASK, COM, { RT } }, 3556 { "mfctr", XSPR(31,339,9), XSPR_MASK, COM, { RT } }, 3557 { "mftid", XSPR(31,339,17), XSPR_MASK, POWER, { RT } }, 3558 { "mfdsisr", XSPR(31,339,18), XSPR_MASK, COM, { RT } }, 3559 { "mfdar", XSPR(31,339,19), XSPR_MASK, COM, { RT } }, 3560 { "mfdec", XSPR(31,339,22), XSPR_MASK, MFDEC2, { RT } }, 3561 { "mfsdr0", XSPR(31,339,24), XSPR_MASK, POWER, { RT } }, 3562 { "mfsdr1", XSPR(31,339,25), XSPR_MASK, COM, { RT } }, 3563 { "mfsrr0", XSPR(31,339,26), XSPR_MASK, COM, { RT } }, 3564 { "mfsrr1", XSPR(31,339,27), XSPR_MASK, COM, { RT } }, 3565 { "mfpid", XSPR(31,339,48), XSPR_MASK, BOOKE, { RT } }, 3566 { "mfcsrr0", XSPR(31,339,58), XSPR_MASK, BOOKE, { RT } }, 3567 { "mfcsrr1", XSPR(31,339,59), XSPR_MASK, BOOKE, { RT } }, 3568 { "mfdear", XSPR(31,339,61), XSPR_MASK, BOOKE, { RT } }, 3569 { "mfesr", XSPR(31,339,62), XSPR_MASK, BOOKE, { RT } }, 3570 { "mfivpr", XSPR(31,339,63), XSPR_MASK, BOOKE, { RT } }, 3571 { "mfcmpa", XSPR(31,339,144), XSPR_MASK, PPC860, { RT } }, 3572 { "mfcmpb", XSPR(31,339,145), XSPR_MASK, PPC860, { RT } }, 3573 { "mfcmpc", XSPR(31,339,146), XSPR_MASK, PPC860, { RT } }, 3574 { "mfcmpd", XSPR(31,339,147), XSPR_MASK, PPC860, { RT } }, 3575 { "mficr", XSPR(31,339,148), XSPR_MASK, PPC860, { RT } }, 3576 { "mfder", XSPR(31,339,149), XSPR_MASK, PPC860, { RT } }, 3577 { "mfcounta", XSPR(31,339,150), XSPR_MASK, PPC860, { RT } }, 3578 { "mfcountb", XSPR(31,339,151), XSPR_MASK, PPC860, { RT } }, 3579 { "mfcmpe", XSPR(31,339,152), XSPR_MASK, PPC860, { RT } }, 3580 { "mfcmpf", XSPR(31,339,153), XSPR_MASK, PPC860, { RT } }, 3581 { "mfcmpg", XSPR(31,339,154), XSPR_MASK, PPC860, { RT } }, 3582 { "mfcmph", XSPR(31,339,155), XSPR_MASK, PPC860, { RT } }, 3583 { "mflctrl1", XSPR(31,339,156), XSPR_MASK, PPC860, { RT } }, 3584 { "mflctrl2", XSPR(31,339,157), XSPR_MASK, PPC860, { RT } }, 3585 { "mfictrl", XSPR(31,339,158), XSPR_MASK, PPC860, { RT } }, 3586 { "mfbar", XSPR(31,339,159), XSPR_MASK, PPC860, { RT } }, 3587 { "mfvrsave", XSPR(31,339,256), XSPR_MASK, PPCVEC, { RT } }, 3588 { "mfusprg0", XSPR(31,339,256), XSPR_MASK, BOOKE, { RT } }, 3589 { "mfsprg4", XSPR(31,339,260), XSPR_MASK, PPC405, { RT } }, 3590 { "mfsprg5", XSPR(31,339,261), XSPR_MASK, PPC405, { RT } }, 3591 { "mfsprg6", XSPR(31,339,262), XSPR_MASK, PPC405, { RT } }, 3592 { "mfsprg7", XSPR(31,339,263), XSPR_MASK, PPC405, { RT } }, 3593 { "mftb", XSPR(31,339,268), XSPR_MASK, BOOKE, { RT } }, 3594 { "mftbl", XSPR(31,339,268), XSPR_MASK, BOOKE, { RT } }, 3595 { "mftbu", XSPR(31,339,269), XSPR_MASK, BOOKE, { RT } }, 3596 { "mfsprg", XSPR(31,339,272), XSPRG_MASK, PPC, { RT, SPRG } }, 3597 { "mfsprg0", XSPR(31,339,272), XSPR_MASK, PPC, { RT } }, 3598 { "mfsprg1", XSPR(31,339,273), XSPR_MASK, PPC, { RT } }, 3599 { "mfsprg2", XSPR(31,339,274), XSPR_MASK, PPC, { RT } }, 3600 { "mfsprg3", XSPR(31,339,275), XSPR_MASK, PPC, { RT } }, 3601 { "mfasr", XSPR(31,339,280), XSPR_MASK, PPC64, { RT } }, 3602 { "mfear", XSPR(31,339,282), XSPR_MASK, PPC, { RT } }, 3603 { "mfpir", XSPR(31,339,286), XSPR_MASK, BOOKE, { RT } }, 3604 { "mfpvr", XSPR(31,339,287), XSPR_MASK, PPC, { RT } }, 3605 { "mfdbsr", XSPR(31,339,304), XSPR_MASK, BOOKE, { RT } }, 3606 { "mfdbcr0", XSPR(31,339,308), XSPR_MASK, BOOKE, { RT } }, 3607 { "mfdbcr1", XSPR(31,339,309), XSPR_MASK, BOOKE, { RT } }, 3608 { "mfdbcr2", XSPR(31,339,310), XSPR_MASK, BOOKE, { RT } }, 3609 { "mfiac1", XSPR(31,339,312), XSPR_MASK, BOOKE, { RT } }, 3610 { "mfiac2", XSPR(31,339,313), XSPR_MASK, BOOKE, { RT } }, 3611 { "mfiac3", XSPR(31,339,314), XSPR_MASK, BOOKE, { RT } }, 3612 { "mfiac4", XSPR(31,339,315), XSPR_MASK, BOOKE, { RT } }, 3613 { "mfdac1", XSPR(31,339,316), XSPR_MASK, BOOKE, { RT } }, 3614 { "mfdac2", XSPR(31,339,317), XSPR_MASK, BOOKE, { RT } }, 3615 { "mfdvc1", XSPR(31,339,318), XSPR_MASK, BOOKE, { RT } }, 3616 { "mfdvc2", XSPR(31,339,319), XSPR_MASK, BOOKE, { RT } }, 3617 { "mftsr", XSPR(31,339,336), XSPR_MASK, BOOKE, { RT } }, 3618 { "mftcr", XSPR(31,339,340), XSPR_MASK, BOOKE, { RT } }, 3619 { "mfivor0", XSPR(31,339,400), XSPR_MASK, BOOKE, { RT } }, 3620 { "mfivor1", XSPR(31,339,401), XSPR_MASK, BOOKE, { RT } }, 3621 { "mfivor2", XSPR(31,339,402), XSPR_MASK, BOOKE, { RT } }, 3622 { "mfivor3", XSPR(31,339,403), XSPR_MASK, BOOKE, { RT } }, 3623 { "mfivor4", XSPR(31,339,404), XSPR_MASK, BOOKE, { RT } }, 3624 { "mfivor5", XSPR(31,339,405), XSPR_MASK, BOOKE, { RT } }, 3625 { "mfivor6", XSPR(31,339,406), XSPR_MASK, BOOKE, { RT } }, 3626 { "mfivor7", XSPR(31,339,407), XSPR_MASK, BOOKE, { RT } }, 3627 { "mfivor8", XSPR(31,339,408), XSPR_MASK, BOOKE, { RT } }, 3628 { "mfivor9", XSPR(31,339,409), XSPR_MASK, BOOKE, { RT } }, 3629 { "mfivor10", XSPR(31,339,410), XSPR_MASK, BOOKE, { RT } }, 3630 { "mfivor11", XSPR(31,339,411), XSPR_MASK, BOOKE, { RT } }, 3631 { "mfivor12", XSPR(31,339,412), XSPR_MASK, BOOKE, { RT } }, 3632 { "mfivor13", XSPR(31,339,413), XSPR_MASK, BOOKE, { RT } }, 3633 { "mfivor14", XSPR(31,339,414), XSPR_MASK, BOOKE, { RT } }, 3634 { "mfivor15", XSPR(31,339,415), XSPR_MASK, BOOKE, { RT } }, 3635 { "mfspefscr", XSPR(31,339,512), XSPR_MASK, PPCSPE, { RT } }, 3636 { "mfbbear", XSPR(31,339,513), XSPR_MASK, PPCBRLK, { RT } }, 3637 { "mfbbtar", XSPR(31,339,514), XSPR_MASK, PPCBRLK, { RT } }, 3638 { "mfibatu", XSPR(31,339,528), XSPRBAT_MASK, PPC, { RT, SPRBAT } }, 3639 { "mfibatl", XSPR(31,339,529), XSPRBAT_MASK, PPC, { RT, SPRBAT } }, 3640 { "mfdbatu", XSPR(31,339,536), XSPRBAT_MASK, PPC, { RT, SPRBAT } }, 3641 { "mfdbatl", XSPR(31,339,537), XSPRBAT_MASK, PPC, { RT, SPRBAT } }, 3642 { "mfic_cst", XSPR(31,339,560), XSPR_MASK, PPC860, { RT } }, 3643 { "mfic_adr", XSPR(31,339,561), XSPR_MASK, PPC860, { RT } }, 3644 { "mfic_dat", XSPR(31,339,562), XSPR_MASK, PPC860, { RT } }, 3645 { "mfdc_cst", XSPR(31,339,568), XSPR_MASK, PPC860, { RT } }, 3646 { "mfdc_adr", XSPR(31,339,569), XSPR_MASK, PPC860, { RT } }, 3647 { "mfdc_dat", XSPR(31,339,570), XSPR_MASK, PPC860, { RT } }, 3648 { "mfmcsrr0", XSPR(31,339,570), XSPR_MASK, PPCRFMCI, { RT } }, 3649 { "mfmcsrr1", XSPR(31,339,571), XSPR_MASK, PPCRFMCI, { RT } }, 3650 { "mfmcsr", XSPR(31,339,572), XSPR_MASK, PPCRFMCI, { RT } }, 3651 { "mfdpdr", XSPR(31,339,630), XSPR_MASK, PPC860, { RT } }, 3652 { "mfdpir", XSPR(31,339,631), XSPR_MASK, PPC860, { RT } }, 3653 { "mfimmr", XSPR(31,339,638), XSPR_MASK, PPC860, { RT } }, 3654 { "mfmi_ctr", XSPR(31,339,784), XSPR_MASK, PPC860, { RT } }, 3655 { "mfmi_ap", XSPR(31,339,786), XSPR_MASK, PPC860, { RT } }, 3656 { "mfmi_epn", XSPR(31,339,787), XSPR_MASK, PPC860, { RT } }, 3657 { "mfmi_twc", XSPR(31,339,789), XSPR_MASK, PPC860, { RT } }, 3658 { "mfmi_rpn", XSPR(31,339,790), XSPR_MASK, PPC860, { RT } }, 3659 { "mfmd_ctr", XSPR(31,339,792), XSPR_MASK, PPC860, { RT } }, 3660 { "mfm_casid", XSPR(31,339,793), XSPR_MASK, PPC860, { RT } }, 3661 { "mfmd_ap", XSPR(31,339,794), XSPR_MASK, PPC860, { RT } }, 3662 { "mfmd_epn", XSPR(31,339,795), XSPR_MASK, PPC860, { RT } }, 3663 { "mfmd_twb", XSPR(31,339,796), XSPR_MASK, PPC860, { RT } }, 3664 { "mfmd_twc", XSPR(31,339,797), XSPR_MASK, PPC860, { RT } }, 3665 { "mfmd_rpn", XSPR(31,339,798), XSPR_MASK, PPC860, { RT } }, 3666 { "mfm_tw", XSPR(31,339,799), XSPR_MASK, PPC860, { RT } }, 3667 { "mfmi_dbcam", XSPR(31,339,816), XSPR_MASK, PPC860, { RT } }, 3668 { "mfmi_dbram0",XSPR(31,339,817), XSPR_MASK, PPC860, { RT } }, 3669 { "mfmi_dbram1",XSPR(31,339,818), XSPR_MASK, PPC860, { RT } }, 3670 { "mfmd_dbcam", XSPR(31,339,824), XSPR_MASK, PPC860, { RT } }, 3671 { "mfmd_dbram0",XSPR(31,339,825), XSPR_MASK, PPC860, { RT } }, 3672 { "mfmd_dbram1",XSPR(31,339,826), XSPR_MASK, PPC860, { RT } }, 3673 { "mfummcr0", XSPR(31,339,936), XSPR_MASK, PPC750, { RT } }, 3674 { "mfupmc1", XSPR(31,339,937), XSPR_MASK, PPC750, { RT } }, 3675 { "mfupmc2", XSPR(31,339,938), XSPR_MASK, PPC750, { RT } }, 3676 { "mfusia", XSPR(31,339,939), XSPR_MASK, PPC750, { RT } }, 3677 { "mfummcr1", XSPR(31,339,940), XSPR_MASK, PPC750, { RT } }, 3678 { "mfupmc3", XSPR(31,339,941), XSPR_MASK, PPC750, { RT } }, 3679 { "mfupmc4", XSPR(31,339,942), XSPR_MASK, PPC750, { RT } }, 3680 { "mfzpr", XSPR(31,339,944), XSPR_MASK, PPC403, { RT } }, 3681 { "mfpid", XSPR(31,339,945), XSPR_MASK, PPC403, { RT } }, 3682 { "mfccr0", XSPR(31,339,947), XSPR_MASK, PPC405, { RT } }, 2782 3683 { "mfiac3", XSPR(31,339,948), XSPR_MASK, PPC405, { RT } }, 2783 3684 { "mfiac4", XSPR(31,339,949), XSPR_MASK, PPC405, { RT } }, … … 2796 3697 { "mfdbcr1", XSPR(31,339,957), XSPR_MASK, PPC405, { RT } }, 2797 3698 { "mfpmc4", XSPR(31,339,958), XSPR_MASK, PPC750, { RT } }, 2798 { "mfesr", XSPR(31,339,980), XSPR_MASK, PPC403, { RT } }, 2799 { "mfdear", XSPR(31,339,981), XSPR_MASK, PPC403, { RT } }, 2800 { "mfevpr", XSPR(31,339,982), XSPR_MASK, PPC403, { RT } }, 2801 { "mfcdbcr", XSPR(31,339,983), XSPR_MASK, PPC403, { RT } }, 2802 { "mftsr", XSPR(31,339,984), XSPR_MASK, PPC403, { RT } }, 2803 { "mftcr", XSPR(31,339,986), XSPR_MASK, PPC403, { RT } }, 2804 { "mfpit", XSPR(31,339,987), XSPR_MASK, PPC403, { RT } }, 2805 { "mftbhi", XSPR(31,339,988), XSPR_MASK, PPC403, { RT } }, 2806 { "mftblo", XSPR(31,339,989), XSPR_MASK, PPC403, { RT } }, 2807 { "mfsrr2", XSPR(31,339,990), XSPR_MASK, PPC403, { RT } }, 2808 { "mfsrr3", XSPR(31,339,991), XSPR_MASK, PPC403, { RT } }, 2809 { "mfdbsr", XSPR(31,339,1008), XSPR_MASK, PPC403, { RT } }, 2810 { "mfdbcr0", XSPR(31,339,1010), XSPR_MASK, PPC405, { RT } }, 2811 { "mfiac1", XSPR(31,339,1012), XSPR_MASK, PPC403, { RT } }, 2812 { "mfiac2", XSPR(31,339,1013), XSPR_MASK, PPC403, { RT } }, 2813 { "mfdac1", XSPR(31,339,1014), XSPR_MASK, PPC403, { RT } }, 2814 { "mfdac2", XSPR(31,339,1015), XSPR_MASK, PPC403, { RT } }, 2815 { "mfdccr", XSPR(31,339,1018), XSPR_MASK, PPC403, { RT } }, 2816 { "mficcr", XSPR(31,339,1019), XSPR_MASK, PPC403, { RT } }, 2817 { "mfpbl1", XSPR(31,339,1020), XSPR_MASK, PPC403, { RT } }, 2818 { "mfpbu1", XSPR(31,339,1021), XSPR_MASK, PPC403, { RT } }, 2819 { "mfpbl2", XSPR(31,339,1022), XSPR_MASK, PPC403, { RT } }, 2820 { "mfpbu2", XSPR(31,339,1023), XSPR_MASK, PPC403, { RT } }, 2821 { "mfl2cr", XSPR(31,339,1017), XSPR_MASK, PPC750, { RT } }, 2822 { "mfictc", XSPR(31,339,1019), XSPR_MASK, PPC750, { RT } }, 2823 { "mfthrm1", XSPR(31,339,1020), XSPR_MASK, PPC750, { RT } }, 2824 { "mfthrm2", XSPR(31,339,1021), XSPR_MASK, PPC750, { RT } }, 2825 { "mfthrm3", XSPR(31,339,1022), XSPR_MASK, PPC750, { RT } }, 2826 { "mfspr", X(31,339), X_MASK, COM, { RT, SPR } }, 3699 { "mficdbdr", XSPR(31,339,979), XSPR_MASK, PPC403, { RT } }, 3700 { "mfesr", XSPR(31,339,980), XSPR_MASK, PPC403, { RT } }, 3701 { "mfdear", XSPR(31,339,981), XSPR_MASK, PPC403, { RT } }, 3702 { "mfevpr", XSPR(31,339,982), XSPR_MASK, PPC403, { RT } }, 3703 { "mfcdbcr", XSPR(31,339,983), XSPR_MASK, PPC403, { RT } }, 3704 { "mftsr", XSPR(31,339,984), XSPR_MASK, PPC403, { RT } }, 3705 { "mftcr", XSPR(31,339,986), XSPR_MASK, PPC403, { RT } }, 3706 { "mfpit", XSPR(31,339,987), XSPR_MASK, PPC403, { RT } }, 3707 { "mftbhi", XSPR(31,339,988), XSPR_MASK, PPC403, { RT } }, 3708 { "mftblo", XSPR(31,339,989), XSPR_MASK, PPC403, { RT } }, 3709 { "mfsrr2", XSPR(31,339,990), XSPR_MASK, PPC403, { RT } }, 3710 { "mfsrr3", XSPR(31,339,991), XSPR_MASK, PPC403, { RT } }, 3711 { "mfdbsr", XSPR(31,339,1008), XSPR_MASK, PPC403, { RT } }, 3712 { "mfdbcr0", XSPR(31,339,1010), XSPR_MASK, PPC405, { RT } }, 3713 { "mfiac1", XSPR(31,339,1012), XSPR_MASK, PPC403, { RT } }, 3714 { "mfiac2", XSPR(31,339,1013), XSPR_MASK, PPC403, { RT } }, 3715 { "mfdac1", XSPR(31,339,1014), XSPR_MASK, PPC403, { RT } }, 3716 { "mfdac2", XSPR(31,339,1015), XSPR_MASK, PPC403, { RT } }, 3717 { "mfl2cr", XSPR(31,339,1017), XSPR_MASK, PPC750, { RT } }, 3718 { "mfdccr", XSPR(31,339,1018), XSPR_MASK, PPC403, { RT } }, 3719 { "mficcr", XSPR(31,339,1019), XSPR_MASK, PPC403, { RT } }, 3720 { "mfictc", XSPR(31,339,1019), XSPR_MASK, PPC750, { RT } }, 3721 { "mfpbl1", XSPR(31,339,1020), XSPR_MASK, PPC403, { RT } }, 3722 { "mfthrm1", XSPR(31,339,1020), XSPR_MASK, PPC750, { RT } }, 3723 { "mfpbu1", XSPR(31,339,1021), XSPR_MASK, PPC403, { RT } }, 3724 { "mfthrm2", XSPR(31,339,1021), XSPR_MASK, PPC750, { RT } }, 3725 { "mfpbl2", XSPR(31,339,1022), XSPR_MASK, PPC403, { RT } }, 3726 { "mfthrm3", XSPR(31,339,1022), XSPR_MASK, PPC750, { RT } }, 3727 { "mfpbu2", XSPR(31,339,1023), XSPR_MASK, PPC403, { RT } }, 3728 { "mfspr", X(31,339), X_MASK, COM, { RT, SPR } }, 2827 3729 2828 3730 { "lwax", X(31,341), X_MASK, PPC64, { RT, RA, RB } }, 2829 3731 3732 { "dst", XDSS(31,342,0), XDSS_MASK, PPCVEC, { RA, RB, STRM } }, 3733 { "dstt", XDSS(31,342,1), XDSS_MASK, PPCVEC, { RA, RB, STRM } }, 3734 2830 3735 { "lhax", X(31,343), X_MASK, COM, { RT, RA, RB } }, 3736 3737 { "lhaxe", X(31,351), X_MASK, BOOKE64, { RT, RA, RB } }, 3738 3739 { "dstst", XDSS(31,374,0), XDSS_MASK, PPCVEC, { RA, RB, STRM } }, 3740 { "dststt", XDSS(31,374,1), XDSS_MASK, PPCVEC, { RA, RB, STRM } }, 2831 3741 2832 3742 { "dccci", X(31,454), XRT_MASK, PPC403, { RA, RB } }, … … 2844 3754 { "tlbia", X(31,370), 0xffffffff, PPC, { 0 } }, 2845 3755 2846 { "mftbl", XSPR(31,371,268), XSPR_MASK, PPC,{ RT } },2847 { "mftbu", XSPR(31,371,269), XSPR_MASK, PPC,{ RT } },2848 { "mftb", X(31,371), X_MASK, PPC,{ RT, TBR } },3756 { "mftbl", XSPR(31,371,268), XSPR_MASK, CLASSIC, { RT } }, 3757 { "mftbu", XSPR(31,371,269), XSPR_MASK, CLASSIC, { RT } }, 3758 { "mftb", X(31,371), X_MASK, CLASSIC, { RT, TBR } }, 2849 3759 2850 3760 { "lwaux", X(31,373), X_MASK, PPC64, { RT, RAL, RB } }, 2851 3761 2852 3762 { "lhaux", X(31,375), X_MASK, COM, { RT, RAL, RB } }, 3763 3764 { "lhauxe", X(31,383), X_MASK, BOOKE64, { RT, RAL, RB } }, 3765 3766 { "mtdcrx", X(31,387), X_MASK, BOOKE, { RA, RS } }, 3767 3768 { "dcblc", X(31,390), X_MASK, PPCCHLK, { CT, RA, RB }}, 3769 3770 { "subfe64", XO(31,392,0,0), XO_MASK, BOOKE64, { RT, RA, RB } }, 3771 { "subfe64o",XO(31,392,1,0), XO_MASK, BOOKE64, { RT, RA, RB } }, 3772 3773 { "adde64", XO(31,394,0,0), XO_MASK, BOOKE64, { RT, RA, RB } }, 3774 { "adde64o", XO(31,394,1,0), XO_MASK, BOOKE64, { RT, RA, RB } }, 3775 3776 { "dcblce", X(31,398), X_MASK, PPCCHLK64, { CT, RA, RB }}, 3777 3778 { "slbmte", X(31,402), XRA_MASK, PPC64, { RS, RB } }, 2853 3779 2854 3780 { "sthx", X(31,407), X_MASK, COM, { RS, RA, RB } }, … … 2868 3794 { "sradi.", XS(31,413,1), XS_MASK, PPC64, { RA, RS, SH6 } }, 2869 3795 3796 { "sthxe", X(31,415), X_MASK, BOOKE64, { RS, RA, RB } }, 3797 2870 3798 { "slbie", X(31,434), XRTRA_MASK, PPC64, { RB } }, 2871 3799 … … 2873 3801 2874 3802 { "sthux", X(31,439), X_MASK, COM, { RS, RAS, RB } }, 3803 3804 { "sthuxe", X(31,447), X_MASK, BOOKE64, { RS, RAS, RB } }, 2875 3805 2876 3806 { "mr", XRC(31,444,0), X_MASK, COM, { RA, RS, RBS } }, … … 2879 3809 { "or.", XRC(31,444,1), X_MASK, COM, { RA, RS, RB } }, 2880 3810 2881 { "mtexisr", XSPR(31,451,64),XSPR_MASK, PPC403, { RT } },2882 { "mtexier", XSPR(31,451,66),XSPR_MASK, PPC403, { RT } },2883 { "mtbr0", XSPR(31,451,128), XSPR_MASK, PPC403, { RT } },2884 { "mtbr1", XSPR(31,451,129), XSPR_MASK, PPC403, { RT } },2885 { "mtbr2", XSPR(31,451,130), XSPR_MASK, PPC403, { RT } },2886 { "mtbr3", XSPR(31,451,131), XSPR_MASK, PPC403, { RT } },2887 { "mtbr4", XSPR(31,451,132), XSPR_MASK, PPC403, { RT } },2888 { "mtbr5", XSPR(31,451,133), XSPR_MASK, PPC403, { RT } },2889 { "mtbr6", XSPR(31,451,134), XSPR_MASK, PPC403, { RT } },2890 { "mtbr7", XSPR(31,451,135), XSPR_MASK, PPC403, { RT } },2891 { "mtbear", XSPR(31,451,144), XSPR_MASK, PPC403, { RT } },2892 { "mtbesr", XSPR(31,451,145), XSPR_MASK, PPC403, { RT } },2893 { "mtiocr", XSPR(31,451,160), XSPR_MASK, PPC403, { RT } },3811 { "mtexisr", XSPR(31,451,64), XSPR_MASK, PPC403, { RT } }, 3812 { "mtexier", XSPR(31,451,66), XSPR_MASK, PPC403, { RT } }, 3813 { "mtbr0", XSPR(31,451,128), XSPR_MASK, PPC403, { RT } }, 3814 { "mtbr1", XSPR(31,451,129), XSPR_MASK, PPC403, { RT } }, 3815 { "mtbr2", XSPR(31,451,130), XSPR_MASK, PPC403, { RT } }, 3816 { "mtbr3", XSPR(31,451,131), XSPR_MASK, PPC403, { RT } }, 3817 { "mtbr4", XSPR(31,451,132), XSPR_MASK, PPC403, { RT } }, 3818 { "mtbr5", XSPR(31,451,133), XSPR_MASK, PPC403, { RT } }, 3819 { "mtbr6", XSPR(31,451,134), XSPR_MASK, PPC403, { RT } }, 3820 { "mtbr7", XSPR(31,451,135), XSPR_MASK, PPC403, { RT } }, 3821 { "mtbear", XSPR(31,451,144), XSPR_MASK, PPC403, { RT } }, 3822 { "mtbesr", XSPR(31,451,145), XSPR_MASK, PPC403, { RT } }, 3823 { "mtiocr", XSPR(31,451,160), XSPR_MASK, PPC403, { RT } }, 2894 3824 { "mtdmacr0", XSPR(31,451,192), XSPR_MASK, PPC403, { RT } }, 2895 3825 { "mtdmact0", XSPR(31,451,193), XSPR_MASK, PPC403, { RT } }, … … 2912 3842 { "mtdmasa3", XSPR(31,451,219), XSPR_MASK, PPC403, { RT } }, 2913 3843 { "mtdmacc3", XSPR(31,451,220), XSPR_MASK, PPC403, { RT } }, 2914 { "mtdmasr", XSPR(31,451,224), XSPR_MASK, PPC403, { RT } }, 2915 { "mtdcr", X(31,451), X_MASK, PPC403, { SPR, RS } }, 3844 { "mtdmasr", XSPR(31,451,224), XSPR_MASK, PPC403, { RT } }, 3845 { "mtdcr", X(31,451), X_MASK, PPC403, { SPR, RS } }, 3846 { "mtdcr", X(31,451), X_MASK, BOOKE, { SPR, RS } }, 3847 3848 { "subfze64",XO(31,456,0,0), XORB_MASK, BOOKE64, { RT, RA } }, 3849 { "subfze64o",XO(31,456,1,0), XORB_MASK, BOOKE64, { RT, RA } }, 2916 3850 2917 3851 { "divdu", XO(31,457,0,0), XO_MASK, PPC64, { RT, RA, RB } }, … … 2920 3854 { "divduo.", XO(31,457,1,1), XO_MASK, PPC64, { RT, RA, RB } }, 2921 3855 3856 { "addze64", XO(31,458,0,0), XORB_MASK, BOOKE64, { RT, RA } }, 3857 { "addze64o",XO(31,458,1,0), XORB_MASK, BOOKE64, { RT, RA } }, 3858 2922 3859 { "divwu", XO(31,459,0,0), XO_MASK, PPC, { RT, RA, RB } }, 2923 3860 { "divwu.", XO(31,459,0,1), XO_MASK, PPC, { RT, RA, RB } }, … … 2925 3862 { "divwuo.", XO(31,459,1,1), XO_MASK, PPC, { RT, RA, RB } }, 2926 3863 2927 { "mtmq", XSPR(31,467,0), XSPR_MASK, M601, { RS } }, 2928 { "mtxer", XSPR(31,467,1), XSPR_MASK, COM, { RS } }, 2929 { "mtlr", XSPR(31,467,8), XSPR_MASK, COM, { RS } }, 2930 { "mtctr", XSPR(31,467,9), XSPR_MASK, COM, { RS } }, 2931 { "mttid", XSPR(31,467,17), XSPR_MASK, POWER, { RS } }, 2932 { "mtdsisr", XSPR(31,467,18), XSPR_MASK, COM, { RS } }, 2933 { "mtdar", XSPR(31,467,19), XSPR_MASK, COM, { RS } }, 2934 { "mtrtcu", XSPR(31,467,20), XSPR_MASK, COM, { RS } }, 2935 { "mtrtcl", XSPR(31,467,21), XSPR_MASK, COM, { RS } }, 2936 { "mtdec", XSPR(31,467,22), XSPR_MASK, COM, { RS } }, 2937 { "mtsdr0", XSPR(31,467,24), XSPR_MASK, POWER, { RS } }, 2938 { "mtsdr1", XSPR(31,467,25), XSPR_MASK, COM, { RS } }, 2939 { "mtsrr0", XSPR(31,467,26), XSPR_MASK, COM, { RS } }, 2940 { "mtsrr1", XSPR(31,467,27), XSPR_MASK, COM, { RS } }, 2941 { "mtcmpa", XSPR(31,467,144), XSPR_MASK, PPC860, { RT } }, 2942 { "mtcmpb", XSPR(31,467,145), XSPR_MASK, PPC860, { RT } }, 2943 { "mtcmpc", XSPR(31,467,146), XSPR_MASK, PPC860, { RT } }, 2944 { "mtcmpd", XSPR(31,467,147), XSPR_MASK, PPC860, { RT } }, 2945 { "mticr", XSPR(31,467,148), XSPR_MASK, PPC860, { RT } }, 2946 { "mtder", XSPR(31,467,149), XSPR_MASK, PPC860, { RT } }, 2947 { "mtcounta", XSPR(31,467,150), XSPR_MASK, PPC860, { RT } }, 2948 { "mtcountb", XSPR(31,467,151), XSPR_MASK, PPC860, { RT } }, 2949 { "mtcmpe", XSPR(31,467,152), XSPR_MASK, PPC860, { RT } }, 2950 { "mtcmpf", XSPR(31,467,153), XSPR_MASK, PPC860, { RT } }, 2951 { "mtcmpg", XSPR(31,467,154), XSPR_MASK, PPC860, { RT } }, 2952 { "mtcmph", XSPR(31,467,155), XSPR_MASK, PPC860, { RT } }, 2953 { "mtlctrl1", XSPR(31,467,156), XSPR_MASK, PPC860, { RT } }, 2954 { "mtlctrl2", XSPR(31,467,157), XSPR_MASK, PPC860, { RT } }, 2955 { "mtictrl", XSPR(31,467,158), XSPR_MASK, PPC860, { RT } }, 2956 { "mtbar", XSPR(31,467,159), XSPR_MASK, PPC860, { RT } }, 2957 { "mtsprg", XSPR(31,467,272), XSPRG_MASK, PPC, { SPRG, RS } }, 2958 { "mtsprg0", XSPR(31,467,272), XSPR_MASK, PPC, { RT } }, 2959 { "mtsprg1", XSPR(31,467,273), XSPR_MASK, PPC, { RT } }, 2960 { "mtsprg2", XSPR(31,467,274), XSPR_MASK, PPC, { RT } }, 2961 { "mtsprg3", XSPR(31,467,275), XSPR_MASK, PPC, { RT } }, 2962 { "mtsprg4", XSPR(31,467,276), XSPR_MASK, PPC405, { RT } }, 2963 { "mtsprg5", XSPR(31,467,277), XSPR_MASK, PPC405, { RT } }, 2964 { "mtsprg6", XSPR(31,467,278), XSPR_MASK, PPC405, { RT } }, 2965 { "mtsprg7", XSPR(31,467,279), XSPR_MASK, PPC405, { RT } }, 2966 { "mtasr", XSPR(31,467,280), XSPR_MASK, PPC64, { RS } }, 2967 { "mtear", XSPR(31,467,282), XSPR_MASK, PPC, { RS } }, 2968 { "mttbl", XSPR(31,467,284), XSPR_MASK, PPC, { RS } }, 2969 { "mttbu", XSPR(31,467,285), XSPR_MASK, PPC, { RS } }, 2970 { "mtibatu", XSPR(31,467,528), XSPRBAT_MASK, PPC, { SPRBAT, RS } }, 2971 { "mtibatl", XSPR(31,467,529), XSPRBAT_MASK, PPC, { SPRBAT, RS } }, 2972 { "mtdbatu", XSPR(31,467,536), XSPRBAT_MASK, PPC, { SPRBAT, RS } }, 2973 { "mtdbatl", XSPR(31,467,537), XSPRBAT_MASK, PPC, { SPRBAT, RS } }, 2974 { "mtzpr", XSPR(31,467,944), XSPR_MASK, PPC403, { RT } }, 2975 { "mtpid", XSPR(31,467,945), XSPR_MASK, PPC403, { RT } }, 2976 { "mtccr0", XSPR(31,467,947), XSPR_MASK, PPC405, { RT } }, 2977 { "mtiac3", XSPR(31,467,948), XSPR_MASK, PPC405, { RT } }, 2978 { "mtiac4", XSPR(31,467,949), XSPR_MASK, PPC405, { RT } }, 2979 { "mtdvc1", XSPR(31,467,950), XSPR_MASK, PPC405, { RT } }, 2980 { "mtdvc2", XSPR(31,467,951), XSPR_MASK, PPC405, { RT } }, 2981 { "mtsgr", XSPR(31,467,953), XSPR_MASK, PPC403, { RT } }, 2982 { "mtdcwr", XSPR(31,467,954), XSPR_MASK, PPC403, { RT } }, 2983 { "mtsler", XSPR(31,467,955), XSPR_MASK, PPC405, { RT } }, 2984 { "mtsu0r", XSPR(31,467,956), XSPR_MASK, PPC405, { RT } }, 2985 { "mtdbcr1", XSPR(31,467,957), XSPR_MASK, PPC405, { RT } }, 2986 { "mticdbdr",XSPR(31,467,979), XSPR_MASK, PPC403, { RT } }, 2987 { "mtesr", XSPR(31,467,980), XSPR_MASK, PPC403, { RT } }, 2988 { "mtdear", XSPR(31,467,981), XSPR_MASK, PPC403, { RT } }, 2989 { "mtevpr", XSPR(31,467,982), XSPR_MASK, PPC403, { RT } }, 2990 { "mtcdbcr", XSPR(31,467,983), XSPR_MASK, PPC403, { RT } }, 2991 { "mttsr", XSPR(31,467,984), XSPR_MASK, PPC403, { RT } }, 2992 { "mttcr", XSPR(31,467,986), XSPR_MASK, PPC403, { RT } }, 2993 { "mtpit", XSPR(31,467,987), XSPR_MASK, PPC403, { RT } }, 2994 { "mttbhi", XSPR(31,467,988), XSPR_MASK, PPC403, { RT } }, 2995 { "mttblo", XSPR(31,467,989), XSPR_MASK, PPC403, { RT } }, 2996 { "mtsrr2", XSPR(31,467,990), XSPR_MASK, PPC403, { RT } }, 2997 { "mtsrr3", XSPR(31,467,991), XSPR_MASK, PPC403, { RT } }, 2998 { "mtdbsr", XSPR(31,467,1008), XSPR_MASK, PPC403, { RT } }, 2999 { "mtdbcr0", XSPR(31,467,1010), XSPR_MASK, PPC405, { RT } }, 3000 { "mtiac1", XSPR(31,467,1012), XSPR_MASK, PPC403, { RT } }, 3001 { "mtiac2", XSPR(31,467,1013), XSPR_MASK, PPC403, { RT } }, 3002 { "mtdac1", XSPR(31,467,1014), XSPR_MASK, PPC403, { RT } }, 3003 { "mtdac2", XSPR(31,467,1015), XSPR_MASK, PPC403, { RT } }, 3004 { "mtdccr", XSPR(31,467,1018), XSPR_MASK, PPC403, { RT } }, 3005 { "mticcr", XSPR(31,467,1019), XSPR_MASK, PPC403, { RT } }, 3006 { "mtpbl1", XSPR(31,467,1020), XSPR_MASK, PPC403, { RT } }, 3007 { "mtpbu1", XSPR(31,467,1021), XSPR_MASK, PPC403, { RT } }, 3008 { "mtpbl2", XSPR(31,467,1022), XSPR_MASK, PPC403, { RT } }, 3009 { "mtpbu2", XSPR(31,467,1023), XSPR_MASK, PPC403, { RT } }, 3010 { "mtummcr0", XSPR(31,467,936), XSPR_MASK, PPC750, { RT } }, 3011 { "mtupmc1", XSPR(31,467,937), XSPR_MASK, PPC750, { RT } }, 3012 { "mtupmc2", XSPR(31,467,938), XSPR_MASK, PPC750, { RT } }, 3013 { "mtusia", XSPR(31,467,939), XSPR_MASK, PPC750, { RT } }, 3014 { "mtummcr1", XSPR(31,467,940), XSPR_MASK, PPC750, { RT } }, 3015 { "mtupmc3", XSPR(31,467,941), XSPR_MASK, PPC750, { RT } }, 3016 { "mtupmc4", XSPR(31,467,942), XSPR_MASK, PPC750, { RT } }, 3017 { "mtmmcr0", XSPR(31,467,952), XSPR_MASK, PPC750, { RT } }, 3018 { "mtpmc1", XSPR(31,467,953), XSPR_MASK, PPC750, { RT } }, 3019 { "mtpmc2", XSPR(31,467,954), XSPR_MASK, PPC750, { RT } }, 3020 { "mtsia", XSPR(31,467,955), XSPR_MASK, PPC750, { RT } }, 3021 { "mtmmcr1", XSPR(31,467,956), XSPR_MASK, PPC750, { RT } }, 3022 { "mtpmc3", XSPR(31,467,957), XSPR_MASK, PPC750, { RT } }, 3023 { "mtpmc4", XSPR(31,467,958), XSPR_MASK, PPC750, { RT } }, 3024 { "mtl2cr", XSPR(31,467,1017), XSPR_MASK, PPC750, { RT } }, 3025 { "mtictc", XSPR(31,467,1019), XSPR_MASK, PPC750, { RT } }, 3026 { "mtthrm1", XSPR(31,467,1020), XSPR_MASK, PPC750, { RT } }, 3027 { "mtthrm2", XSPR(31,467,1021), XSPR_MASK, PPC750, { RT } }, 3028 { "mtthrm3", XSPR(31,467,1022), XSPR_MASK, PPC750, { RT } }, 3029 { "mtspr", X(31,467), X_MASK, COM, { SPR, RS } }, 3864 { "mtmq", XSPR(31,467,0), XSPR_MASK, M601, { RS } }, 3865 { "mtxer", XSPR(31,467,1), XSPR_MASK, COM, { RS } }, 3866 { "mtlr", XSPR(31,467,8), XSPR_MASK, COM, { RS } }, 3867 { "mtctr", XSPR(31,467,9), XSPR_MASK, COM, { RS } }, 3868 { "mttid", XSPR(31,467,17), XSPR_MASK, POWER, { RS } }, 3869 { "mtdsisr", XSPR(31,467,18), XSPR_MASK, COM, { RS } }, 3870 { "mtdar", XSPR(31,467,19), XSPR_MASK, COM, { RS } }, 3871 { "mtrtcu", XSPR(31,467,20), XSPR_MASK, COM, { RS } }, 3872 { "mtrtcl", XSPR(31,467,21), XSPR_MASK, COM, { RS } }, 3873 { "mtdec", XSPR(31,467,22), XSPR_MASK, COM, { RS } }, 3874 { "mtsdr0", XSPR(31,467,24), XSPR_MASK, POWER, { RS } }, 3875 { "mtsdr1", XSPR(31,467,25), XSPR_MASK, COM, { RS } }, 3876 { "mtsrr0", XSPR(31,467,26), XSPR_MASK, COM, { RS } }, 3877 { "mtsrr1", XSPR(31,467,27), XSPR_MASK, COM, { RS } }, 3878 { "mtpid", XSPR(31,467,48), XSPR_MASK, BOOKE, { RS } }, 3879 { "mtdecar", XSPR(31,467,54), XSPR_MASK, BOOKE, { RS } }, 3880 { "mtcsrr0", XSPR(31,467,58), XSPR_MASK, BOOKE, { RS } }, 3881 { "mtcsrr1", XSPR(31,467,59), XSPR_MASK, BOOKE, { RS } }, 3882 { "mtdear", XSPR(31,467,61), XSPR_MASK, BOOKE, { RS } }, 3883 { "mtesr", XSPR(31,467,62), XSPR_MASK, BOOKE, { RS } }, 3884 { "mtivpr", XSPR(31,467,63), XSPR_MASK, BOOKE, { RS } }, 3885 { "mtcmpa", XSPR(31,467,144), XSPR_MASK, PPC860, { RT } }, 3886 { "mtcmpb", XSPR(31,467,145), XSPR_MASK, PPC860, { RT } }, 3887 { "mtcmpc", XSPR(31,467,146), XSPR_MASK, PPC860, { RT } }, 3888 { "mtcmpd", XSPR(31,467,147), XSPR_MASK, PPC860, { RT } }, 3889 { "mticr", XSPR(31,467,148), XSPR_MASK, PPC860, { RT } }, 3890 { "mtder", XSPR(31,467,149), XSPR_MASK, PPC860, { RT } }, 3891 { "mtcounta", XSPR(31,467,150), XSPR_MASK, PPC860, { RT } }, 3892 { "mtcountb", XSPR(31,467,151), XSPR_MASK, PPC860, { RT } }, 3893 { "mtcmpe", XSPR(31,467,152), XSPR_MASK, PPC860, { RT } }, 3894 { "mtcmpf", XSPR(31,467,153), XSPR_MASK, PPC860, { RT } }, 3895 { "mtcmpg", XSPR(31,467,154), XSPR_MASK, PPC860, { RT } }, 3896 { "mtcmph", XSPR(31,467,155), XSPR_MASK, PPC860, { RT } }, 3897 { "mtlctrl1", XSPR(31,467,156), XSPR_MASK, PPC860, { RT } }, 3898 { "mtlctrl2", XSPR(31,467,157), XSPR_MASK, PPC860, { RT } }, 3899 { "mtictrl", XSPR(31,467,158), XSPR_MASK, PPC860, { RT } }, 3900 { "mtbar", XSPR(31,467,159), XSPR_MASK, PPC860, { RT } }, 3901 { "mtvrsave", XSPR(31,467,256), XSPR_MASK, PPCVEC, { RT } }, 3902 { "mtusprg0", XSPR(31,467,256), XSPR_MASK, BOOKE, { RS } }, 3903 { "mtsprg", XSPR(31,467,272), XSPRG_MASK,PPC, { SPRG, RS } }, 3904 { "mtsprg0", XSPR(31,467,272), XSPR_MASK, PPC, { RT } }, 3905 { "mtsprg1", XSPR(31,467,273), XSPR_MASK, PPC, { RT } }, 3906 { "mtsprg2", XSPR(31,467,274), XSPR_MASK, PPC, { RT } }, 3907 { "mtsprg3", XSPR(31,467,275), XSPR_MASK, PPC, { RT } }, 3908 { "mtsprg4", XSPR(31,467,276), XSPR_MASK, PPC405, { RT } }, 3909 { "mtsprg4", XSPR(31,467,276), XSPR_MASK, BOOKE, { RS } }, 3910 { "mtsprg5", XSPR(31,467,277), XSPR_MASK, PPC405, { RT } }, 3911 { "mtsprg5", XSPR(31,467,277), XSPR_MASK, BOOKE, { RS } }, 3912 { "mtsprg6", XSPR(31,467,278), XSPR_MASK, PPC405, { RT } }, 3913 { "mtsprg6", XSPR(31,467,278), XSPR_MASK, BOOKE, { RS } }, 3914 { "mtsprg7", XSPR(31,467,279), XSPR_MASK, PPC405, { RT } }, 3915 { "mtsprg7", XSPR(31,467,279), XSPR_MASK, BOOKE, { RS } }, 3916 { "mtasr", XSPR(31,467,280), XSPR_MASK, PPC64, { RS } }, 3917 { "mtear", XSPR(31,467,282), XSPR_MASK, PPC, { RS } }, 3918 { "mttbl", XSPR(31,467,284), XSPR_MASK, PPC, { RS } }, 3919 { "mttbu", XSPR(31,467,285), XSPR_MASK, PPC, { RS } }, 3920 { "mtdbsr", XSPR(31,467,304), XSPR_MASK, BOOKE, { RS } }, 3921 { "mtdbcr0", XSPR(31,467,308), XSPR_MASK, BOOKE, { RS } }, 3922 { "mtdbcr1", XSPR(31,467,309), XSPR_MASK, BOOKE, { RS } }, 3923 { "mtdbcr2", XSPR(31,467,310), XSPR_MASK, BOOKE, { RS } }, 3924 { "mtiac1", XSPR(31,467,312), XSPR_MASK, BOOKE, { RS } }, 3925 { "mtiac2", XSPR(31,467,313), XSPR_MASK, BOOKE, { RS } }, 3926 { "mtiac3", XSPR(31,467,314), XSPR_MASK, BOOKE, { RS } }, 3927 { "mtiac4", XSPR(31,467,315), XSPR_MASK, BOOKE, { RS } }, 3928 { "mtdac1", XSPR(31,467,316), XSPR_MASK, BOOKE, { RS } }, 3929 { "mtdac2", XSPR(31,467,317), XSPR_MASK, BOOKE, { RS } }, 3930 { "mtdvc1", XSPR(31,467,318), XSPR_MASK, BOOKE, { RS } }, 3931 { "mtdvc2", XSPR(31,467,319), XSPR_MASK, BOOKE, { RS } }, 3932 { "mttsr", XSPR(31,467,336), XSPR_MASK, BOOKE, { RS } }, 3933 { "mttcr", XSPR(31,467,340), XSPR_MASK, BOOKE, { RS } }, 3934 { "mtivor0", XSPR(31,467,400), XSPR_MASK, BOOKE, { RS } }, 3935 { "mtivor1", XSPR(31,467,401), XSPR_MASK, BOOKE, { RS } }, 3936 { "mtivor2", XSPR(31,467,402), XSPR_MASK, BOOKE, { RS } }, 3937 { "mtivor3", XSPR(31,467,403), XSPR_MASK, BOOKE, { RS } }, 3938 { "mtivor4", XSPR(31,467,404), XSPR_MASK, BOOKE, { RS } }, 3939 { "mtivor5", XSPR(31,467,405), XSPR_MASK, BOOKE, { RS } }, 3940 { "mtivor6", XSPR(31,467,406), XSPR_MASK, BOOKE, { RS } }, 3941 { "mtivor7", XSPR(31,467,407), XSPR_MASK, BOOKE, { RS } }, 3942 { "mtivor8", XSPR(31,467,408), XSPR_MASK, BOOKE, { RS } }, 3943 { "mtivor9", XSPR(31,467,409), XSPR_MASK, BOOKE, { RS } }, 3944 { "mtivor10", XSPR(31,467,410), XSPR_MASK, BOOKE, { RS } }, 3945 { "mtivor11", XSPR(31,467,411), XSPR_MASK, BOOKE, { RS } }, 3946 { "mtivor12", XSPR(31,467,412), XSPR_MASK, BOOKE, { RS } }, 3947 { "mtivor13", XSPR(31,467,413), XSPR_MASK, BOOKE, { RS } }, 3948 { "mtivor14", XSPR(31,467,414), XSPR_MASK, BOOKE, { RS } }, 3949 { "mtivor15", XSPR(31,467,415), XSPR_MASK, BOOKE, { RS } }, 3950 { "mtspefscr", XSPR(31,467,512), XSPR_MASK, PPCSPE, { RS } }, 3951 { "mtbbear", XSPR(31,467,513), XSPR_MASK, PPCBRLK, { RS } }, 3952 { "mtbbtar", XSPR(31,467,514), XSPR_MASK, PPCBRLK, { RS } }, 3953 { "mtibatu", XSPR(31,467,528), XSPRBAT_MASK, PPC, { SPRBAT, RS } }, 3954 { "mtibatl", XSPR(31,467,529), XSPRBAT_MASK, PPC, { SPRBAT, RS } }, 3955 { "mtdbatu", XSPR(31,467,536), XSPRBAT_MASK, PPC, { SPRBAT, RS } }, 3956 { "mtdbatl", XSPR(31,467,537), XSPRBAT_MASK, PPC, { SPRBAT, RS } }, 3957 { "mtmcsrr0", XSPR(31,467,570), XSPR_MASK, PPCRFMCI, { RS } }, 3958 { "mtmcsrr1", XSPR(31,467,571), XSPR_MASK, PPCRFMCI, { RS } }, 3959 { "mtmcsr", XSPR(31,467,572), XSPR_MASK, PPCRFMCI, { RS } }, 3960 { "mtummcr0", XSPR(31,467,936), XSPR_MASK, PPC750, { RT } }, 3961 { "mtupmc1", XSPR(31,467,937), XSPR_MASK, PPC750, { RT } }, 3962 { "mtupmc2", XSPR(31,467,938), XSPR_MASK, PPC750, { RT } }, 3963 { "mtusia", XSPR(31,467,939), XSPR_MASK, PPC750, { RT } }, 3964 { "mtummcr1", XSPR(31,467,940), XSPR_MASK, PPC750, { RT } }, 3965 { "mtupmc3", XSPR(31,467,941), XSPR_MASK, PPC750, { RT } }, 3966 { "mtupmc4", XSPR(31,467,942), XSPR_MASK, PPC750, { RT } }, 3967 { "mtzpr", XSPR(31,467,944), XSPR_MASK, PPC403, { RT } }, 3968 { "mtpid", XSPR(31,467,945), XSPR_MASK, PPC403, { RT } }, 3969 { "mtccr0", XSPR(31,467,947), XSPR_MASK, PPC405, { RT } }, 3970 { "mtiac3", XSPR(31,467,948), XSPR_MASK, PPC405, { RT } }, 3971 { "mtiac4", XSPR(31,467,949), XSPR_MASK, PPC405, { RT } }, 3972 { "mtdvc1", XSPR(31,467,950), XSPR_MASK, PPC405, { RT } }, 3973 { "mtdvc2", XSPR(31,467,951), XSPR_MASK, PPC405, { RT } }, 3974 { "mtmmcr0", XSPR(31,467,952), XSPR_MASK, PPC750, { RT } }, 3975 { "mtsgr", XSPR(31,467,953), XSPR_MASK, PPC403, { RT } }, 3976 { "mtpmc1", XSPR(31,467,953), XSPR_MASK, PPC750, { RT } }, 3977 { "mtdcwr", XSPR(31,467,954), XSPR_MASK, PPC403, { RT } }, 3978 { "mtpmc2", XSPR(31,467,954), XSPR_MASK, PPC750, { RT } }, 3979 { "mtsler", XSPR(31,467,955), XSPR_MASK, PPC405, { RT } }, 3980 { "mtsia", XSPR(31,467,955), XSPR_MASK, PPC750, { RT } }, 3981 { "mtsu0r", XSPR(31,467,956), XSPR_MASK, PPC405, { RT } }, 3982 { "mtmmcr1", XSPR(31,467,956), XSPR_MASK, PPC750, { RT } }, 3983 { "mtdbcr1", XSPR(31,467,957), XSPR_MASK, PPC405, { RT } }, 3984 { "mtpmc3", XSPR(31,467,957), XSPR_MASK, PPC750, { RT } }, 3985 { "mtpmc4", XSPR(31,467,958), XSPR_MASK, PPC750, { RT } }, 3986 { "mticdbdr", XSPR(31,467,979), XSPR_MASK, PPC403, { RT } }, 3987 { "mtesr", XSPR(31,467,980), XSPR_MASK, PPC403, { RT } }, 3988 { "mtdear", XSPR(31,467,981), XSPR_MASK, PPC403, { RT } }, 3989 { "mtevpr", XSPR(31,467,982), XSPR_MASK, PPC403, { RT } }, 3990 { "mtcdbcr", XSPR(31,467,983), XSPR_MASK, PPC403, { RT } }, 3991 { "mttsr", XSPR(31,467,984), XSPR_MASK, PPC403, { RT } }, 3992 { "mttcr", XSPR(31,467,986), XSPR_MASK, PPC403, { RT } }, 3993 { "mtpit", XSPR(31,467,987), XSPR_MASK, PPC403, { RT } }, 3994 { "mttbhi", XSPR(31,467,988), XSPR_MASK, PPC403, { RT } }, 3995 { "mttblo", XSPR(31,467,989), XSPR_MASK, PPC403, { RT } }, 3996 { "mtsrr2", XSPR(31,467,990), XSPR_MASK, PPC403, { RT } }, 3997 { "mtsrr3", XSPR(31,467,991), XSPR_MASK, PPC403, { RT } }, 3998 { "mtdbsr", XSPR(31,467,1008), XSPR_MASK, PPC403, { RT } }, 3999 { "mtdbcr0", XSPR(31,467,1010), XSPR_MASK, PPC405, { RT } }, 4000 { "mtiac1", XSPR(31,467,1012), XSPR_MASK, PPC403, { RT } }, 4001 { "mtiac2", XSPR(31,467,1013), XSPR_MASK, PPC403, { RT } }, 4002 { "mtdac1", XSPR(31,467,1014), XSPR_MASK, PPC403, { RT } }, 4003 { "mtdac2", XSPR(31,467,1015), XSPR_MASK, PPC403, { RT } }, 4004 { "mtl2cr", XSPR(31,467,1017), XSPR_MASK, PPC750, { RT } }, 4005 { "mtdccr", XSPR(31,467,1018), XSPR_MASK, PPC403, { RT } }, 4006 { "mticcr", XSPR(31,467,1019), XSPR_MASK, PPC403, { RT } }, 4007 { "mtictc", XSPR(31,467,1019), XSPR_MASK, PPC750, { RT } }, 4008 { "mtpbl1", XSPR(31,467,1020), XSPR_MASK, PPC403, { RT } }, 4009 { "mtthrm1", XSPR(31,467,1020), XSPR_MASK, PPC750, { RT } }, 4010 { "mtpbu1", XSPR(31,467,1021), XSPR_MASK, PPC403, { RT } }, 4011 { "mtthrm2", XSPR(31,467,1021), XSPR_MASK, PPC750, { RT } }, 4012 { "mtpbl2", XSPR(31,467,1022), XSPR_MASK, PPC403, { RT } }, 4013 { "mtthrm3", XSPR(31,467,1022), XSPR_MASK, PPC750, { RT } }, 4014 { "mtpbu2", XSPR(31,467,1023), XSPR_MASK, PPC403, { RT } }, 4015 { "mtspr", X(31,467), X_MASK, COM, { SPR, RS } }, 3030 4016 3031 4017 { "dcbi", X(31,470), XRT_MASK, PPC, { RA, RB } }, … … 3034 4020 { "nand.", XRC(31,476,1), X_MASK, COM, { RA, RS, RB } }, 3035 4021 4022 { "dcbie", X(31,478), XRT_MASK, BOOKE64, { RA, RB } }, 4023 3036 4024 { "dcread", X(31,486), X_MASK, PPC403, { RT, RA, RB }}, 3037 4025 4026 { "mtpmr", X(31,462), X_MASK, PPCPMR, { PMR, RS }}, 4027 4028 { "icbtls", X(31,486), X_MASK, PPCCHLK, { CT, RA, RB }}, 4029 3038 4030 { "nabs", XO(31,488,0,0), XORB_MASK, M601, { RT, RA } }, 4031 { "subfme64",XO(31,488,0,0), XORB_MASK, BOOKE64, { RT, RA } }, 3039 4032 { "nabs.", XO(31,488,0,1), XORB_MASK, M601, { RT, RA } }, 3040 4033 { "nabso", XO(31,488,1,0), XORB_MASK, M601, { RT, RA } }, 4034 { "subfme64o",XO(31,488,1,0), XORB_MASK, BOOKE64, { RT, RA } }, 3041 4035 { "nabso.", XO(31,488,1,1), XORB_MASK, M601, { RT, RA } }, 3042 4036 … … 3046 4040 { "divdo.", XO(31,489,1,1), XO_MASK, PPC64, { RT, RA, RB } }, 3047 4041 4042 { "addme64", XO(31,490,0,0), XORB_MASK, BOOKE64, { RT, RA } }, 4043 { "addme64o",XO(31,490,1,0), XORB_MASK, BOOKE64, { RT, RA } }, 4044 3048 4045 { "divw", XO(31,491,0,0), XO_MASK, PPC, { RT, RA, RB } }, 3049 4046 { "divw.", XO(31,491,0,1), XO_MASK, PPC, { RT, RA, RB } }, … … 3051 4048 { "divwo.", XO(31,491,1,1), XO_MASK, PPC, { RT, RA, RB } }, 3052 4049 4050 { "icbtlse", X(31,494), X_MASK, PPCCHLK64, { CT, RA, RB }}, 4051 3053 4052 { "slbia", X(31,498), 0xffffffff, PPC64, { 0 } }, 3054 4053 3055 4054 { "cli", X(31,502), XRB_MASK, POWER, { RT, RA } }, 3056 4055 4056 { "stdcxe.", XRC(31,511,1), X_MASK, BOOKE64, { RS, RA, RB } }, 4057 3057 4058 { "mcrxr", X(31,512), XRARB_MASK|(3<<21), COM, { BF } }, 4059 4060 { "bblels", X(31,518), X_MASK, PPCBRLK, { 0 }}, 4061 { "mcrxr64", X(31,544), XRARB_MASK|(3<<21), BOOKE64, { BF } }, 3058 4062 3059 4063 { "clcs", X(31,531), XRB_MASK, M601, { RT, RA } }, … … 3081 4085 { "maskir.", XRC(31,541,1), X_MASK, M601, { RA, RS, RB } }, 3082 4086 4087 { "lwbrxe", X(31,542), X_MASK, BOOKE64, { RT, RA, RB } }, 4088 4089 { "lfsxe", X(31,543), X_MASK, BOOKE64, { FRT, RA, RB } }, 4090 4091 { "bbelr", X(31,550), X_MASK, PPCBRLK, { 0 }}, 3083 4092 { "tlbsync", X(31,566), 0xffffffff, PPC, { 0 } }, 3084 4093 3085 4094 { "lfsux", X(31,567), X_MASK, COM, { FRT, RAS, RB } }, 4095 4096 { "lfsuxe", X(31,575), X_MASK, BOOKE64, { FRT, RAS, RB } }, 3086 4097 3087 4098 { "mfsr", X(31,595), XRB_MASK|(1<<20), COM32, { RT, SR } }, … … 3090 4101 { "lsi", X(31,597), X_MASK, PWRCOM, { RT, RA, NB } }, 3091 4102 3092 { "sync", X(31,598), 0xffffffff, PPCCOM, { 0 } }, 4103 { "lwsync", XSYNC(31,598,1), 0xffffffff, PPCONLY, { 0 } }, 4104 { "ptesync", XSYNC(31,598,2), 0xffffffff, PPC64, { 0 } }, 4105 { "msync", X(31,598), 0xffffffff, BOOKE, { 0 } }, 4106 { "sync", X(31,598), XSYNC_MASK, PPCCOM, { LS } }, 3093 4107 { "dcs", X(31,598), 0xffffffff, PWRCOM, { 0 } }, 3094 4108 3095 4109 { "lfdx", X(31,599), X_MASK, COM, { FRT, RA, RB } }, 3096 4110 4111 { "lfdxe", X(31,607), X_MASK, BOOKE64, { FRT, RA, RB } }, 4112 3097 4113 { "mfsri", X(31,627), X_MASK, PWRCOM, { RT, RA, RB } }, 3098 4114 … … 3100 4116 3101 4117 { "lfdux", X(31,631), X_MASK, COM, { FRT, RAS, RB } }, 4118 4119 { "lfduxe", X(31,639), X_MASK, BOOKE64, { FRT, RAS, RB } }, 3102 4120 3103 4121 { "mfsrin", X(31,659), XRA_MASK, PPC32, { RT, RB } }, … … 3117 4135 { "sre.", XRC(31,665,1), X_MASK, M601, { RA, RS, RB } }, 3118 4136 4137 { "stwbrxe", X(31,670), X_MASK, BOOKE64, { RS, RA, RB } }, 4138 4139 { "stfsxe", X(31,671), X_MASK, BOOKE64, { FRS, RA, RB } }, 4140 3119 4141 { "stfsux", X(31,695), X_MASK, COM, { FRS, RAS, RB } }, 3120 4142 … … 3122 4144 { "sriq.", XRC(31,696,1), X_MASK, M601, { RA, RS, SH } }, 3123 4145 4146 { "stfsuxe", X(31,703), X_MASK, BOOKE64, { FRS, RAS, RB } }, 4147 3124 4148 { "stswi", X(31,725), X_MASK, PPCCOM, { RS, RA, NB } }, 3125 4149 { "stsi", X(31,725), X_MASK, PWRCOM, { RS, RA, NB } }, … … 3133 4157 { "sreq.", XRC(31,729,1), X_MASK, M601, { RA, RS, RB } }, 3134 4158 4159 { "stfdxe", X(31,735), X_MASK, BOOKE64, { FRS, RA, RB } }, 4160 3135 4161 { "dcba", X(31,758), XRT_MASK, PPC405, { RA, RB } }, 4162 { "dcba", X(31,758), XRT_MASK, BOOKE, { RA, RB } }, 3136 4163 3137 4164 { "stfdux", X(31,759), X_MASK, COM, { FRS, RAS, RB } }, … … 3139 4166 { "srliq", XRC(31,760,0), X_MASK, M601, { RA, RS, SH } }, 3140 4167 { "srliq.", XRC(31,760,1), X_MASK, M601, { RA, RS, SH } }, 4168 4169 { "dcbae", X(31,766), XRT_MASK, BOOKE64, { RA, RB } }, 4170 4171 { "stfduxe", X(31,767), X_MASK, BOOKE64, { FRS, RAS, RB } }, 4172 4173 { "tlbivax", X(31,786), XRT_MASK, BOOKE, { RA, RB } }, 4174 { "tlbivaxe",X(31,787), XRT_MASK, BOOKE64, { RA, RB } }, 3141 4175 3142 4176 { "lhbrx", X(31,790), X_MASK, COM, { RT, RA, RB } }, … … 3150 4184 { "srad.", XRC(31,794,1), X_MASK, PPC64, { RA, RS, RB } }, 3151 4185 4186 { "lhbrxe", X(31,798), X_MASK, BOOKE64, { RT, RA, RB } }, 4187 4188 { "ldxe", X(31,799), X_MASK, BOOKE64, { RT, RA, RB } }, 4189 { "lduxe", X(31,831), X_MASK, BOOKE64, { RT, RA, RB } }, 4190 3152 4191 { "rac", X(31,818), X_MASK, PWRCOM, { RT, RA, RB } }, 4192 4193 { "dss", XDSS(31,822,0), XDSS_MASK, PPCVEC, { STRM } }, 4194 { "dssall", XDSS(31,822,1), XDSS_MASK, PPCVEC, { 0 } }, 3153 4195 3154 4196 { "srawi", XRC(31,824,0), X_MASK, PPCCOM, { RA, RS, SH } }, … … 3157 4199 { "srai.", XRC(31,824,1), X_MASK, PWRCOM, { RA, RS, SH } }, 3158 4200 4201 { "slbmfev", X(31,851), XRA_MASK, PPC64, { RT, RB } }, 4202 4203 { "mbar", X(31,854), X_MASK, BOOKE, { MO } }, 3159 4204 { "eieio", X(31,854), 0xffffffff, PPC, { 0 } }, 3160 4205 3161 { "tlbsx", XRC(31,914,0), X_MASK, PPC403, { RT, RA, RB } }, 3162 { "tlbsx.", XRC(31,914,1), X_MASK, PPC403, { RT, RA, RB } }, 4206 { "tlbsx", XRC(31,914,0), X_MASK, PPC403, { RT, RA, RB } }, 4207 { "tlbsx.", XRC(31,914,1), X_MASK, PPC403, { RT, RA, RB } }, 4208 4209 { "tlbsx", XRC(31,914,0), X_MASK, BOOKE, { RA, RB } }, 4210 { "tlbsx.", XRC(31,914,1), X_MASK, BOOKE, { RA, RB } }, 4211 { "tlbsxe", XRC(31,915,0), X_MASK, BOOKE64, { RA, RB } }, 4212 { "tlbsxe.", XRC(31,915,1), X_MASK, BOOKE64, { RA, RB } }, 4213 4214 { "slbmfee", X(31,915), XRA_MASK, PPC64, { RT, RB } }, 3163 4215 3164 4216 { "sthbrx", X(31,918), X_MASK, COM, { RS, RA, RB } }, … … 3175 4227 { "exts.", XRC(31,922,1), XRB_MASK, PWRCOM, { RA, RS } }, 3176 4228 4229 { "sthbrxe", X(31,926), X_MASK, BOOKE64, { RS, RA, RB } }, 4230 4231 { "stdxe", X(31,927), X_MASK, BOOKE64, { RS, RA, RB } }, 4232 4233 { "tlbre", X(31,946), X_MASK, BOOKE, { 0 } }, 4234 3177 4235 { "tlbrehi", XTLB(31,946,0), XTLB_MASK, PPC403, { RT, RA } }, 3178 4236 { "tlbrelo", XTLB(31,946,1), XTLB_MASK, PPC403, { RT, RA } }, 3179 { "tlbre", X(31,946), X_MASK, PPC403, { R T, RA, SH } },4237 { "tlbre", X(31,946), X_MASK, PPC403, { RS, RA, SH } }, 3180 4238 3181 4239 { "sraiq", XRC(31,952,0), X_MASK, M601, { RA, RS, SH } }, … … 3185 4243 { "extsb.", XRC(31,954,1), XRB_MASK, PPC, { RA, RS} }, 3186 4244 4245 { "stduxe", X(31,959), X_MASK, BOOKE64, { RS, RAS, RB } }, 4246 3187 4247 { "iccci", X(31,966), XRT_MASK, PPC403, { RA, RB } }, 4248 4249 { "tlbwe", X(31,978), X_MASK, BOOKE, { 0 } }, 3188 4250 3189 4251 { "tlbld", X(31,978), XRTRA_MASK, PPC, { RB } }, … … 3197 4259 { "stfiwx", X(31,983), X_MASK, PPC, { FRS, RA, RB } }, 3198 4260 3199 { "extsw", XRC(31,986,0), XRB_MASK, PPC ,{ RA, RS } },3200 { "extsw.", XRC(31,986,1), XRB_MASK, PPC , { RA, RS } },4261 { "extsw", XRC(31,986,0), XRB_MASK, PPC64 | BOOKE64,{ RA, RS } }, 4262 { "extsw.", XRC(31,986,1), XRB_MASK, PPC64, { RA, RS } }, 3201 4263 3202 4264 { "icread", X(31,998), XRT_MASK, PPC403, { RA, RB } }, 4265 4266 { "icbie", X(31,990), XRT_MASK, BOOKE64, { RA, RB } }, 4267 { "stfiwxe", X(31,991), X_MASK, BOOKE64, { FRS, RA, RB } }, 3203 4268 3204 4269 { "tlbli", X(31,1010), XRTRA_MASK, PPC, { RB } }, … … 3206 4271 { "dcbz", X(31,1014), XRT_MASK, PPC, { RA, RB } }, 3207 4272 { "dclz", X(31,1014), XRT_MASK, PPC, { RA, RB } }, 4273 4274 { "dcbze", X(31,1022), XRT_MASK, BOOKE64, { RA, RB } }, 3208 4275 3209 4276 { "lvebx", X(31, 7), X_MASK, PPCVEC, { VD, RA, RB } }, … … 3278 4345 { "lfqu", OP(57), OP_MASK, POWER2, { FRT, D, RA } }, 3279 4346 4347 { "lbze", DEO(58,0), DE_MASK, BOOKE64, { RT, DE, RA } }, 4348 { "lbzue", DEO(58,1), DE_MASK, BOOKE64, { RT, DE, RAL } }, 4349 { "lhze", DEO(58,2), DE_MASK, BOOKE64, { RT, DE, RA } }, 4350 { "lhzue", DEO(58,3), DE_MASK, BOOKE64, { RT, DE, RAL } }, 4351 { "lhae", DEO(58,4), DE_MASK, BOOKE64, { RT, DE, RA } }, 4352 { "lhaue", DEO(58,5), DE_MASK, BOOKE64, { RT, DE, RAL } }, 4353 { "lwze", DEO(58,6), DE_MASK, BOOKE64, { RT, DE, RA } }, 4354 { "lwzue", DEO(58,7), DE_MASK, BOOKE64, { RT, DE, RAL } }, 4355 { "stbe", DEO(58,8), DE_MASK, BOOKE64, { RS, DE, RA } }, 4356 { "stbue", DEO(58,9), DE_MASK, BOOKE64, { RS, DE, RAS } }, 4357 { "sthe", DEO(58,10), DE_MASK, BOOKE64, { RS, DE, RA } }, 4358 { "sthue", DEO(58,11), DE_MASK, BOOKE64, { RS, DE, RAS } }, 4359 { "stwe", DEO(58,14), DE_MASK, BOOKE64, { RS, DE, RA } }, 4360 { "stwue", DEO(58,15), DE_MASK, BOOKE64, { RS, DE, RAS } }, 4361 3280 4362 { "ld", DSO(58,0), DS_MASK, PPC64, { RT, DS, RA } }, 3281 4363 … … 3317 4399 3318 4400 { "stfqu", OP(61), OP_MASK, POWER2, { FRS, D, RA } }, 4401 4402 { "lde", DEO(62,0), DE_MASK, BOOKE64, { RT, DES, RA } }, 4403 { "ldue", DEO(62,1), DE_MASK, BOOKE64, { RT, DES, RA } }, 4404 { "lfse", DEO(62,4), DE_MASK, BOOKE64, { FRT, DES, RA } }, 4405 { "lfsue", DEO(62,5), DE_MASK, BOOKE64, { FRT, DES, RAS } }, 4406 { "lfde", DEO(62,6), DE_MASK, BOOKE64, { FRT, DES, RA } }, 4407 { "lfdue", DEO(62,7), DE_MASK, BOOKE64, { FRT, DES, RAS } }, 4408 { "stde", DEO(62,8), DE_MASK, BOOKE64, { RS, DES, RA } }, 4409 { "stdue", DEO(62,9), DE_MASK, BOOKE64, { RS, DES, RAS } }, 4410 { "stfse", DEO(62,12), DE_MASK, BOOKE64, { FRS, DES, RA } }, 4411 { "stfsue", DEO(62,13), DE_MASK, BOOKE64, { FRS, DES, RAS } }, 4412 { "stfde", DEO(62,14), DE_MASK, BOOKE64, { FRS, DES, RA } }, 4413 { "stfdue", DEO(62,15), DE_MASK, BOOKE64, { FRS, DES, RAS } }, 3319 4414 3320 4415 { "std", DSO(62,0), DS_MASK, PPC64, { RS, DS, RA } }, … … 3464 4559 { "extlwi", 4, PPCCOM, "rlwinm %0,%1,%3,0,(%2)-1" }, 3465 4560 { "extlwi.", 4, PPCCOM, "rlwinm. %0,%1,%3,0,(%2)-1" }, 3466 { "extrwi", 4, PPCCOM, "rlwinm %0,%1,( %2)+(%3),32-(%2),31" },3467 { "extrwi.", 4, PPCCOM, "rlwinm. %0,%1,( %2)+(%3),32-(%2),31" },4561 { "extrwi", 4, PPCCOM, "rlwinm %0,%1,((%2)+(%3))&((%2)+(%3)<>32),32-(%2),31" }, 4562 { "extrwi.", 4, PPCCOM, "rlwinm. %0,%1,((%2)+(%3))&((%2)+(%3)<>32),32-(%2),31" }, 3468 4563 { "inslwi", 4, PPCCOM, "rlwimi %0,%1,(-(%3)!31)&((%3)|31),%3,(%2)+(%3)-1" }, 3469 4564 { "inslwi.", 4, PPCCOM, "rlwimi. %0,%1,(-(%3)!31)&((%3)|31),%3,(%2)+(%3)-1"}, … … 3484 4579 { "clrlslwi",4, PPCCOM, "rlwinm %0,%1,%3,(%2)-(%3),31-(%3)" }, 3485 4580 { "clrlslwi.",4, PPCCOM, "rlwinm. %0,%1,%3,(%2)-(%3),31-(%3)" }, 3486 3487 4581 }; 3488 4582 -
Property cvs2svn:cvs-rev
changed from
Note:
See TracChangeset
for help on using the changeset viewer.