27 #if !defined(__STDC__) && !defined(const)
54 #define FLAG_STRICT 0x1
278 static const char *
const completer_chars =
",CcY<>?!@+&U~FfGHINnOoZMadu|/=0123%e$m}";
316 {
"ldi", 0x34000000, 0xffe00000,
"l,x",
pa20w, 0 },
317 {
"ldi", 0x34000000, 0xffe0c000,
"j,x",
pa10, 0 },
321 {
"comib", 0x84000000, 0xfc000000,
"?nn5,b,w",
pa10, 0 },
324 {
"comib", 0x8c000000, 0xfc000000,
"?nn5,b,w",
pa10, 0 },
327 {
"comb", 0x80000000, 0xfc000000,
"?nnx,b,w",
pa10, 0 },
330 {
"comb", 0x88000000, 0xfc000000,
"?nnx,b,w",
pa10, 0 },
332 {
"addb", 0xa0000000, 0xfc000000,
"?@nx,b,w",
pa10, 0 },
335 {
"addb", 0xa8000000, 0xfc000000,
"?@nx,b,w",
pa10, 0 },
337 {
"addib", 0xa4000000, 0xfc000000,
"?@n5,b,w",
pa10, 0 },
340 {
"addib", 0xac000000, 0xfc000000,
"?@n5,b,w",
pa10, 0 },
341 {
"nop", 0x08000240, 0xffffffff,
"",
pa10, 0 },
342 {
"copy", 0x08000240, 0xffe0ffe0,
"x,t",
pa10, 0 },
343 {
"mtsar", 0x01601840, 0xffe0ffff,
"x",
pa10, 0 },
373 {
"ldw", 0x48000000, 0xfc00c000,
"j(b),x",
pa10, 0 },
374 {
"ldw", 0x48000000, 0xfc000000,
"j(s,b),x",
pa10, 0 },
386 {
"ldh", 0x44000000, 0xfc00c000,
"j(b),x",
pa10, 0 },
387 {
"ldh", 0x44000000, 0xfc000000,
"j(s,b),x",
pa10, 0 },
399 {
"ldb", 0x40000000, 0xfc00c000,
"j(b),x",
pa10, 0 },
400 {
"ldb", 0x40000000, 0xfc000000,
"j(s,b),x",
pa10, 0 },
421 {
"stw", 0x68000000, 0xfc00c000,
"x,j(b)",
pa10, 0 },
422 {
"stw", 0x68000000, 0xfc000000,
"x,j(s,b)",
pa10, 0 },
430 {
"sth", 0x64000000, 0xfc00c000,
"x,j(b)",
pa10, 0 },
431 {
"sth", 0x64000000, 0xfc000000,
"x,j(s,b)",
pa10, 0 },
439 {
"stb", 0x60000000, 0xfc00c000,
"x,j(b)",
pa10, 0 },
440 {
"stb", 0x60000000, 0xfc000000,
"x,j(s,b)",
pa10, 0 },
441 {
"ldwm", 0x4c000000, 0xfc00c000,
"j(b),x",
pa10, 0 },
442 {
"ldwm", 0x4c000000, 0xfc000000,
"j(s,b),x",
pa10, 0 },
443 {
"stwm", 0x6c000000, 0xfc00c000,
"x,j(b)",
pa10, 0 },
444 {
"stwm", 0x6c000000, 0xfc000000,
"x,j(s,b)",
pa10, 0 },
449 {
"ldwx", 0x0c000080, 0xfc00dfc0,
"cXx(b),t",
pa10, 0 },
450 {
"ldwx", 0x0c000080, 0xfc001fc0,
"cXx(s,b),t",
pa10, 0 },
455 {
"ldhx", 0x0c000040, 0xfc00dfc0,
"cXx(b),t",
pa10, 0 },
456 {
"ldhx", 0x0c000040, 0xfc001fc0,
"cXx(s,b),t",
pa10, 0 },
461 {
"ldbx", 0x0c000000, 0xfc00dfc0,
"cXx(b),t",
pa10, 0 },
462 {
"ldbx", 0x0c000000, 0xfc001fc0,
"cXx(s,b),t",
pa10, 0 },
494 {
"ldwax", 0x0c000180, 0xfc00dfc0,
"cXx(b),t",
pa10, 0 },
498 {
"ldcwx", 0x0c0001c0, 0xfc0013c0,
"cxcdx(s,b),t",
pa11,
FLAG_STRICT },
499 {
"ldcwx", 0x0c0001c0, 0xfc00dfc0,
"cXx(b),t",
pa10, 0 },
500 {
"ldcwx", 0x0c0001c0, 0xfc001fc0,
"cXx(s,b),t",
pa10, 0 },
505 {
"ldws", 0x0c001080, 0xfc00dfc0,
"cM5(b),t",
pa10, 0 },
506 {
"ldws", 0x0c001080, 0xfc001fc0,
"cM5(s,b),t",
pa10, 0 },
511 {
"ldhs", 0x0c001040, 0xfc00dfc0,
"cM5(b),t",
pa10, 0 },
512 {
"ldhs", 0x0c001040, 0xfc001fc0,
"cM5(s,b),t",
pa10, 0 },
517 {
"ldbs", 0x0c001000, 0xfc00dfc0,
"cM5(b),t",
pa10, 0 },
518 {
"ldbs", 0x0c001000, 0xfc001fc0,
"cM5(s,b),t",
pa10, 0 },
521 {
"ldwas", 0x0c001180, 0xfc00dfc0,
"cM5(b),t",
pa10, 0 },
525 {
"ldcws", 0x0c0011c0, 0xfc0013c0,
"cmcd5(s,b),t",
pa11,
FLAG_STRICT },
526 {
"ldcws", 0x0c0011c0, 0xfc00dfc0,
"cM5(b),t",
pa10, 0 },
527 {
"ldcws", 0x0c0011c0, 0xfc001fc0,
"cM5(s,b),t",
pa10, 0 },
532 {
"stws", 0x0c001280, 0xfc00dfc0,
"cMx,V(b)",
pa10, 0 },
533 {
"stws", 0x0c001280, 0xfc001fc0,
"cMx,V(s,b)",
pa10, 0 },
538 {
"sths", 0x0c001240, 0xfc00dfc0,
"cMx,V(b)",
pa10, 0 },
539 {
"sths", 0x0c001240, 0xfc001fc0,
"cMx,V(s,b)",
pa10, 0 },
544 {
"stbs", 0x0c001200, 0xfc00dfc0,
"cMx,V(b)",
pa10, 0 },
545 {
"stbs", 0x0c001200, 0xfc001fc0,
"cMx,V(s,b)",
pa10, 0 },
548 {
"stwas", 0x0c001380, 0xfc00dfc0,
"cMx,V(b)",
pa10, 0 },
550 {
"stdby", 0x0c001340, 0xfc0013c0,
"cscCx,V(s,b)",
pa20,
FLAG_STRICT },
554 {
"stbys", 0x0c001300, 0xfc0013c0,
"cscCx,V(s,b)",
pa11,
FLAG_STRICT },
555 {
"stbys", 0x0c001300, 0xfc00dfc0,
"cAx,V(b)",
pa10, 0 },
556 {
"stbys", 0x0c001300, 0xfc001fc0,
"cAx,V(s,b)",
pa10, 0 },
559 {
"ldo", 0x34000000, 0xfc000000,
"l(b),x",
pa20w, 0 },
560 {
"ldo", 0x34000000, 0xfc00c000,
"j(b),x",
pa10, 0 },
561 {
"ldil", 0x20000000, 0xfc000000,
"k,b",
pa10, 0 },
562 {
"addil", 0x28000000, 0xfc000000,
"k,b,Z",
pa10, 0 },
563 {
"addil", 0x28000000, 0xfc000000,
"k,b",
pa10, 0 },
570 {
"b", 0xe8000000, 0xffe0e000,
"nW",
pa10, 0 },
571 {
"bl", 0xe8000000, 0xfc00e000,
"nW,b",
pa10, 0 },
572 {
"gate", 0xe8002000, 0xfc00e000,
"nW,b",
pa10, 0 },
573 {
"blr", 0xe8004000, 0xfc00e001,
"nx,b",
pa10, 0 },
574 {
"bv", 0xe800c000, 0xfc00fffd,
"nx(b)",
pa10, 0 },
575 {
"bv", 0xe800c000, 0xfc00fffd,
"n(b)",
pa10, 0 },
582 {
"be", 0xe0000000, 0xfc000000,
"nz(S,b)",
pa10, 0 },
583 {
"be", 0xe0000000, 0xfc000000,
"nz(b)",
pa10, 0 },
584 {
"ble", 0xe4000000, 0xfc000000,
"nz(S,b)",
pa10, 0 },
585 {
"movb", 0xc8000000, 0xfc000000,
"?ynx,b,w",
pa10, 0 },
586 {
"movib", 0xcc000000, 0xfc000000,
"?yn5,b,w",
pa10, 0 },
587 {
"combt", 0x80000000, 0xfc000000,
"?tnx,b,w",
pa10, 0 },
588 {
"combf", 0x88000000, 0xfc000000,
"?tnx,b,w",
pa10, 0 },
589 {
"comibt", 0x84000000, 0xfc000000,
"?tn5,b,w",
pa10, 0 },
590 {
"comibf", 0x8c000000, 0xfc000000,
"?tn5,b,w",
pa10, 0 },
591 {
"addbt", 0xa0000000, 0xfc000000,
"?dnx,b,w",
pa10, 0 },
592 {
"addbf", 0xa8000000, 0xfc000000,
"?dnx,b,w",
pa10, 0 },
593 {
"addibt", 0xa4000000, 0xfc000000,
"?dn5,b,w",
pa10, 0 },
594 {
"addibf", 0xac000000, 0xfc000000,
"?dn5,b,w",
pa10, 0 },
599 {
"bb", 0xc4004000, 0xfc006000,
"?bnx,Q,w",
pa10, 0 },
600 {
"bvb", 0xc0004000, 0xffe04000,
"?bnx,w",
pa10, 0 },
610 {
"comclr", 0x08000880, 0xfc000fe0,
"?sx,b,t",
pa10, 0 },
612 {
"or", 0x08000240, 0xfc000fe0,
"?lx,b,t",
pa10, 0 },
614 {
"xor", 0x08000280, 0xfc000fe0,
"?lx,b,t",
pa10, 0 },
616 {
"and", 0x08000200, 0xfc000fe0,
"?lx,b,t",
pa10, 0 },
618 {
"andcm", 0x08000000, 0xfc000fe0,
"?lx,b,t",
pa10, 0 },
620 {
"uxor", 0x08000380, 0xfc000fe0,
"?ux,b,t",
pa10, 0 },
623 {
"uaddcm", 0x08000980, 0xfc000fe0,
"?ux,b,t",
pa10, 0 },
624 {
"uaddcmt", 0x080009c0, 0xfc000fe0,
"?ux,b,t",
pa10, 0 },
627 {
"dcor", 0x08000b80, 0xfc1f0fe0,
"?ub,t",
pa10, 0 },
628 {
"idcor", 0x08000bc0, 0xfc1f0fe0,
"?ub,t",
pa10, 0 },
631 {
"addi", 0xb4000000, 0xfc000800,
"?ai,b,x",
pa10, 0 },
632 {
"addio", 0xb4000800, 0xfc000800,
"?ai,b,x",
pa10, 0 },
633 {
"addit", 0xb0000000, 0xfc000800,
"?ai,b,x",
pa10, 0 },
634 {
"addito", 0xb0000800, 0xfc000800,
"?ai,b,x",
pa10, 0 },
639 {
"add", 0x08000600, 0xfc000fe0,
"?ax,b,t",
pa10, 0 },
640 {
"addl", 0x08000a00, 0xfc000fe0,
"?ax,b,t",
pa10, 0 },
641 {
"addo", 0x08000e00, 0xfc000fe0,
"?ax,b,t",
pa10, 0 },
642 {
"addc", 0x08000700, 0xfc000fe0,
"?ax,b,t",
pa10, 0 },
643 {
"addco", 0x08000f00, 0xfc000fe0,
"?ax,b,t",
pa10, 0 },
650 {
"sub", 0x08000400, 0xfc000fe0,
"?sx,b,t",
pa10, 0 },
651 {
"subo", 0x08000c00, 0xfc000fe0,
"?sx,b,t",
pa10, 0 },
652 {
"subb", 0x08000500, 0xfc000fe0,
"?sx,b,t",
pa10, 0 },
653 {
"subbo", 0x08000d00, 0xfc000fe0,
"?sx,b,t",
pa10, 0 },
654 {
"subt", 0x080004c0, 0xfc000fe0,
"?sx,b,t",
pa10, 0 },
655 {
"subto", 0x08000cc0, 0xfc000fe0,
"?sx,b,t",
pa10, 0 },
656 {
"ds", 0x08000440, 0xfc000fe0,
"?sx,b,t",
pa10, 0 },
658 {
"subi", 0x94000000, 0xfc000800,
"?si,b,x",
pa10, 0 },
659 {
"subio", 0x94000800, 0xfc000800,
"?si,b,x",
pa10, 0 },
662 {
"comiclr", 0x90000000, 0xfc000800,
"?si,b,x",
pa10, 0 },
663 {
"shladd", 0x08000220, 0xfc000320,
"ca?Ax,.,b,t",
pa20,
FLAG_STRICT },
664 {
"shladd", 0x08000200, 0xfc000320,
"ca?ax,.,b,t",
pa10,
FLAG_STRICT },
665 {
"sh1add", 0x08000640, 0xfc000fe0,
"?ax,b,t",
pa10, 0 },
666 {
"sh1addl", 0x08000a40, 0xfc000fe0,
"?ax,b,t",
pa10, 0 },
667 {
"sh1addo", 0x08000e40, 0xfc000fe0,
"?ax,b,t",
pa10, 0 },
668 {
"sh2add", 0x08000680, 0xfc000fe0,
"?ax,b,t",
pa10, 0 },
669 {
"sh2addl", 0x08000a80, 0xfc000fe0,
"?ax,b,t",
pa10, 0 },
670 {
"sh2addo", 0x08000e80, 0xfc000fe0,
"?ax,b,t",
pa10, 0 },
671 {
"sh3add", 0x080006c0, 0xfc000fe0,
"?ax,b,t",
pa10, 0 },
672 {
"sh3addl", 0x08000ac0, 0xfc000fe0,
"?ax,b,t",
pa10, 0 },
673 {
"sh3addo", 0x08000ec0, 0xfc000fe0,
"?ax,b,t",
pa10, 0 },
694 {
"vshd", 0xd0000000, 0xfc001fe0,
"?xx,b,t",
pa10, 0 },
695 {
"shd", 0xd0000800, 0xfc001c00,
"?xx,b,p,t",
pa10, 0 },
700 {
"vextru", 0xd0001000, 0xfc001fe0,
"?xb,T,x",
pa10, 0 },
701 {
"vextrs", 0xd0001400, 0xfc001fe0,
"?xb,T,x",
pa10, 0 },
702 {
"extru", 0xd0001800, 0xfc001c00,
"?xb,P,T,x",
pa10, 0 },
703 {
"extrs", 0xd0001c00, 0xfc001c00,
"?xb,P,T,x",
pa10, 0 },
712 {
"zvdep", 0xd4000000, 0xfc001fe0,
"?xx,T,b",
pa10, 0 },
713 {
"vdep", 0xd4000400, 0xfc001fe0,
"?xx,T,b",
pa10, 0 },
714 {
"zdep", 0xd4000800, 0xfc001c00,
"?xx,p,T,b",
pa10, 0 },
715 {
"dep", 0xd4000c00, 0xfc001c00,
"?xx,p,T,b",
pa10, 0 },
716 {
"zvdepi", 0xd4001000, 0xfc001fe0,
"?x5,T,b",
pa10, 0 },
717 {
"vdepi", 0xd4001400, 0xfc001fe0,
"?x5,T,b",
pa10, 0 },
718 {
"zdepi", 0xd4001800, 0xfc001c00,
"?x5,p,T,b",
pa10, 0 },
719 {
"depi", 0xd4001c00, 0xfc001c00,
"?x5,p,T,b",
pa10, 0 },
723 {
"break", 0x00000000, 0xfc001fe0,
"r,A",
pa10, 0 },
725 {
"rfi", 0x00000c00, 0xffffffff,
"",
pa10, 0 },
726 {
"rfir", 0x00000ca0, 0xffffffff,
"",
pa11, 0 },
728 {
"ssm", 0x00000d60, 0xffe0ffe0,
"R,t",
pa10, 0 },
730 {
"rsm", 0x00000e60, 0xffe0ffe0,
"R,t",
pa10, 0 },
731 {
"mtsm", 0x00001860, 0xffe0ffff,
"x",
pa10, 0 },
732 {
"ldsid", 0x000010a0, 0xfc1fffe0,
"(b),t",
pa10, 0 },
733 {
"ldsid", 0x000010a0, 0xfc1f3fe0,
"(s,b),t",
pa10, 0 },
734 {
"mtsp", 0x00001820, 0xffe01fff,
"x,S",
pa10, 0 },
735 {
"mtctl", 0x00001840, 0xfc00ffff,
"x,^",
pa10, 0 },
738 {
"mfsp", 0x000004a0, 0xffff1fe0,
"S,t",
pa10, 0 },
740 {
"mfctl", 0x000008a0, 0xfc1fffe0,
"^,t",
pa10, 0 },
741 {
"sync", 0x00000400, 0xffffffff,
"",
pa10, 0 },
742 {
"syncdma", 0x00100400, 0xffffffff,
"",
pa10, 0 },
746 {
"probei", 0x04003180, 0xfc003fa0,
"cw(s,b),R,t",
pa10,
FLAG_STRICT },
747 {
"prober", 0x04001180, 0xfc00ffe0,
"(b),x,t",
pa10, 0 },
748 {
"prober", 0x04001180, 0xfc003fe0,
"(s,b),x,t",
pa10, 0 },
749 {
"proberi", 0x04003180, 0xfc00ffe0,
"(b),R,t",
pa10, 0 },
750 {
"proberi", 0x04003180, 0xfc003fe0,
"(s,b),R,t",
pa10, 0 },
751 {
"probew", 0x040011c0, 0xfc00ffe0,
"(b),x,t",
pa10, 0 },
752 {
"probew", 0x040011c0, 0xfc003fe0,
"(s,b),x,t",
pa10, 0 },
753 {
"probewi", 0x040031c0, 0xfc00ffe0,
"(b),R,t",
pa10, 0 },
754 {
"probewi", 0x040031c0, 0xfc003fe0,
"(s,b),R,t",
pa10, 0 },
755 {
"lpa", 0x04001340, 0xfc00ffc0,
"cZx(b),t",
pa10, 0 },
756 {
"lpa", 0x04001340, 0xfc003fc0,
"cZx(s,b),t",
pa10, 0 },
757 {
"lci", 0x04001300, 0xfc00ffe0,
"x(b),t",
pa11, 0 },
758 {
"lci", 0x04001300, 0xfc003fe0,
"x(s,b),t",
pa11, 0 },
763 {
"pdtlb", 0x04001200, 0xfc00ffdf,
"cZx(b)",
pa10, 0 },
764 {
"pdtlb", 0x04001200, 0xfc003fdf,
"cZx(s,b)",
pa10, 0 },
767 {
"pitlb", 0x04000200, 0xfc001fdf,
"cZx(S,b)",
pa10, 0 },
768 {
"pdtlbe", 0x04001240, 0xfc00ffdf,
"cZx(b)",
pa10, 0 },
769 {
"pdtlbe", 0x04001240, 0xfc003fdf,
"cZx(s,b)",
pa10, 0 },
770 {
"pitlbe", 0x04000240, 0xfc001fdf,
"cZx(S,b)",
pa10, 0 },
771 {
"idtlba", 0x04001040, 0xfc00ffff,
"x,(b)",
pa10, 0 },
772 {
"idtlba", 0x04001040, 0xfc003fff,
"x,(s,b)",
pa10, 0 },
773 {
"iitlba", 0x04000040, 0xfc001fff,
"x,(S,b)",
pa10, 0 },
774 {
"idtlbp", 0x04001000, 0xfc00ffff,
"x,(b)",
pa10, 0 },
775 {
"idtlbp", 0x04001000, 0xfc003fff,
"x,(s,b)",
pa10, 0 },
776 {
"iitlbp", 0x04000000, 0xfc001fff,
"x,(S,b)",
pa10, 0 },
777 {
"pdc", 0x04001380, 0xfc00ffdf,
"cZx(b)",
pa10, 0 },
778 {
"pdc", 0x04001380, 0xfc003fdf,
"cZx(s,b)",
pa10, 0 },
783 {
"fdc", 0x04001280, 0xfc00ffdf,
"cZx(b)",
pa10, 0 },
784 {
"fdc", 0x04001280, 0xfc003fdf,
"cZx(s,b)",
pa10, 0 },
786 {
"fic", 0x04000280, 0xfc001fdf,
"cZx(S,b)",
pa10, 0 },
787 {
"fdce", 0x040012c0, 0xfc00ffdf,
"cZx(b)",
pa10, 0 },
788 {
"fdce", 0x040012c0, 0xfc003fdf,
"cZx(s,b)",
pa10, 0 },
789 {
"fice", 0x040002c0, 0xfc001fdf,
"cZx(S,b)",
pa10, 0 },
790 {
"diag", 0x14000000, 0xfc000000,
"D",
pa10, 0 },
797 {
"mtcpu", 0x14001600, 0xfc00ffff,
"x,^",
pa10, 0 },
798 {
"mfcpu", 0x14001A00, 0xfc00ffff,
"^,x",
pa10, 0 },
799 {
"tocen", 0x14403600, 0xffffffff,
"",
pa10, 0 },
800 {
"tocdis", 0x14401620, 0xffffffff,
"",
pa10, 0 },
801 {
"shdwgr", 0x14402600, 0xffffffff,
"",
pa10, 0 },
802 {
"grshdw", 0x14400620, 0xffffffff,
"",
pa10, 0 },
806 {
"gfw", 0x04001680, 0xfc00ffdf,
"cZx(b)",
pa11, 0 },
807 {
"gfw", 0x04001680, 0xfc003fdf,
"cZx(s,b)",
pa11, 0 },
808 {
"gfr", 0x04001a80, 0xfc00ffdf,
"cZx(b)",
pa11, 0 },
809 {
"gfr", 0x04001a80, 0xfc003fdf,
"cZx(s,b)",
pa11, 0 },
816 {
"fldw", 0x24000000, 0xfc001380,
"cxccx(s,b),fT",
pa11,
FLAG_STRICT },
818 {
"fldw", 0x24001020, 0xfc1f33a0,
"cocc@(s,b),fT",
pa20,
FLAG_STRICT },
822 {
"fldw", 0x24001000, 0xfc001380,
"cmcc5(s,b),fT",
pa11,
FLAG_STRICT },
832 {
"fldd", 0x2c000000, 0xfc0013c0,
"cxccx(s,b),ft",
pa11,
FLAG_STRICT },
834 {
"fldd", 0x2c001020, 0xfc1f33e0,
"cocc@(s,b),ft",
pa20,
FLAG_STRICT },
838 {
"fldd", 0x2c001000, 0xfc0013c0,
"cmcc5(s,b),ft",
pa11,
FLAG_STRICT },
845 {
"fstw", 0x24000200, 0xfc001380,
"cxcCfT,x(s,b)",
pa11,
FLAG_STRICT },
847 {
"fstw", 0x24001220, 0xfc1f33a0,
"cocCfT,@(s,b)",
pa20,
FLAG_STRICT },
861 {
"fstd", 0x2c000200, 0xfc0013c0,
"cxcCft,x(s,b)",
pa11,
FLAG_STRICT },
863 {
"fstd", 0x2c001220, 0xfc1f33e0,
"cocCft,@(s,b)",
pa20,
FLAG_STRICT },
867 {
"fstd", 0x2c001200, 0xfc0013c0,
"cmcCft,5(s,b)",
pa11,
FLAG_STRICT },
874 {
"fldwx", 0x24000000, 0xfc001380,
"cxccx(s,b),fT",
pa11,
FLAG_STRICT },
875 {
"fldwx", 0x24000000, 0xfc00df80,
"cXx(b),fT",
pa10, 0 },
876 {
"fldwx", 0x24000000, 0xfc001f80,
"cXx(s,b),fT",
pa10, 0 },
880 {
"flddx", 0x2c000000, 0xfc0013c0,
"cxccx(s,b),ft",
pa11,
FLAG_STRICT },
881 {
"flddx", 0x2c000000, 0xfc00dfc0,
"cXx(b),ft",
pa10, 0 },
882 {
"flddx", 0x2c000000, 0xfc001fc0,
"cXx(s,b),ft",
pa10, 0 },
886 {
"fstwx", 0x24000200, 0xfc001380,
"cxcCfT,x(s,b)",
pa11,
FLAG_STRICT },
887 {
"fstwx", 0x24000200, 0xfc00df80,
"cxfT,x(b)",
pa10, 0 },
888 {
"fstwx", 0x24000200, 0xfc001f80,
"cxfT,x(s,b)",
pa10, 0 },
892 {
"fstdx", 0x2c000200, 0xfc0013c0,
"cxcCft,x(s,b)",
pa11,
FLAG_STRICT },
893 {
"fstdx", 0x2c000200, 0xfc00dfc0,
"cxft,x(b)",
pa10, 0 },
894 {
"fstdx", 0x2c000200, 0xfc001fc0,
"cxft,x(s,b)",
pa10, 0 },
895 {
"fstqx", 0x3c000200, 0xfc00dfc0,
"cXft,x(b)",
pa10, 0 },
896 {
"fstqx", 0x3c000200, 0xfc001fc0,
"cXft,x(s,b)",
pa10, 0 },
900 {
"fldws", 0x24001000, 0xfc001380,
"cmcc5(s,b),fT",
pa11,
FLAG_STRICT },
901 {
"fldws", 0x24001000, 0xfc00df80,
"cm5(b),fT",
pa10, 0 },
902 {
"fldws", 0x24001000, 0xfc001f80,
"cm5(s,b),fT",
pa10, 0 },
906 {
"fldds", 0x2c001000, 0xfc0013c0,
"cmcc5(s,b),ft",
pa11,
FLAG_STRICT },
907 {
"fldds", 0x2c001000, 0xfc00dfc0,
"cm5(b),ft",
pa10, 0 },
908 {
"fldds", 0x2c001000, 0xfc001fc0,
"cm5(s,b),ft",
pa10, 0 },
912 {
"fstws", 0x24001200, 0xfc001380,
"cmcCfT,5(s,b)",
pa11,
FLAG_STRICT },
913 {
"fstws", 0x24001200, 0xfc00df80,
"cmfT,5(b)",
pa10, 0 },
914 {
"fstws", 0x24001200, 0xfc001f80,
"cmfT,5(s,b)",
pa10, 0 },
918 {
"fstds", 0x2c001200, 0xfc0013c0,
"cmcCft,5(s,b)",
pa11,
FLAG_STRICT },
919 {
"fstds", 0x2c001200, 0xfc00dfc0,
"cmft,5(b)",
pa10, 0 },
920 {
"fstds", 0x2c001200, 0xfc001fc0,
"cmft,5(s,b)",
pa10, 0 },
921 {
"fstqs", 0x3c001200, 0xfc00dfc0,
"cMft,5(b)",
pa10, 0 },
922 {
"fstqs", 0x3c001200, 0xfc001fc0,
"cMft,5(s,b)",
pa10, 0 },
923 {
"fadd", 0x30000600, 0xfc00e7e0,
"Ffa,fb,fT",
pa10, 0 },
924 {
"fadd", 0x38000600, 0xfc00e720,
"IfA,fB,fT",
pa10, 0 },
925 {
"fsub", 0x30002600, 0xfc00e7e0,
"Ffa,fb,fT",
pa10, 0 },
926 {
"fsub", 0x38002600, 0xfc00e720,
"IfA,fB,fT",
pa10, 0 },
927 {
"fmpy", 0x30004600, 0xfc00e7e0,
"Ffa,fb,fT",
pa10, 0 },
928 {
"fmpy", 0x38004600, 0xfc00e720,
"IfA,fB,fT",
pa10, 0 },
929 {
"fdiv", 0x30006600, 0xfc00e7e0,
"Ffa,fb,fT",
pa10, 0 },
930 {
"fdiv", 0x38006600, 0xfc00e720,
"IfA,fB,fT",
pa10, 0 },
931 {
"fsqrt", 0x30008000, 0xfc1fe7e0,
"Ffa,fT",
pa10, 0 },
932 {
"fsqrt", 0x38008000, 0xfc1fe720,
"FfA,fT",
pa10, 0 },
933 {
"fabs", 0x30006000, 0xfc1fe7e0,
"Ffa,fT",
pa10, 0 },
934 {
"fabs", 0x38006000, 0xfc1fe720,
"FfA,fT",
pa10, 0 },
935 {
"frem", 0x30008600, 0xfc00e7e0,
"Ffa,fb,fT",
pa10, 0 },
936 {
"frem", 0x38008600, 0xfc00e720,
"FfA,fB,fT",
pa10, 0 },
937 {
"frnd", 0x3000a000, 0xfc1fe7e0,
"Ffa,fT",
pa10, 0 },
938 {
"frnd", 0x3800a000, 0xfc1fe720,
"FfA,fT",
pa10, 0 },
939 {
"fcpy", 0x30004000, 0xfc1fe7e0,
"Ffa,fT",
pa10, 0 },
940 {
"fcpy", 0x38004000, 0xfc1fe720,
"FfA,fT",
pa10, 0 },
941 {
"fcnvff", 0x30000200, 0xfc1f87e0,
"FGfa,fT",
pa10, 0 },
942 {
"fcnvff", 0x38000200, 0xfc1f8720,
"FGfA,fT",
pa10, 0 },
943 {
"fcnvxf", 0x30008200, 0xfc1f87e0,
"FGfa,fT",
pa10, 0 },
944 {
"fcnvxf", 0x38008200, 0xfc1f8720,
"FGfA,fT",
pa10, 0 },
945 {
"fcnvfx", 0x30010200, 0xfc1f87e0,
"FGfa,fT",
pa10, 0 },
946 {
"fcnvfx", 0x38010200, 0xfc1f8720,
"FGfA,fT",
pa10, 0 },
947 {
"fcnvfxt", 0x30018200, 0xfc1f87e0,
"FGfa,fT",
pa10, 0 },
948 {
"fcnvfxt", 0x38018200, 0xfc1f8720,
"FGfA,fT",
pa10, 0 },
949 {
"fmpyfadd", 0xb8000000, 0xfc000020,
"IfA,fB,fC,fT",
pa20,
FLAG_STRICT },
950 {
"fmpynfadd", 0xb8000020, 0xfc000020,
"IfA,fB,fC,fT",
pa20,
FLAG_STRICT },
961 {
"fcmp", 0x30000400, 0xfc00e7e0,
"F?ffa,fb",
pa10, 0 },
962 {
"fcmp", 0x38000400, 0xfc00e720,
"I?ffA,fB",
pa10, 0 },
963 {
"xmpyu", 0x38004700, 0xfc00e720,
"fX,fB,fT",
pa11, 0 },
964 {
"fmpyadd", 0x18000000, 0xfc000000,
"Hfi,fj,fk,fl,fm",
pa11, 0 },
965 {
"fmpysub", 0x98000000, 0xfc000000,
"Hfi,fj,fk,fl,fm",
pa11, 0 },
969 {
"fid", 0x30000000, 0xffffffff,
"",
pa11, 0 },
978 {
"spop0", 0x10000000, 0xfc000600,
"v,ON",
pa10, 0 },
979 {
"spop1", 0x10000200, 0xfc000600,
"v,oNt",
pa10, 0 },
980 {
"spop2", 0x10000400, 0xfc000600,
"v,1Nb",
pa10, 0 },
981 {
"spop3", 0x10000600, 0xfc000600,
"v,0Nx,b",
pa10, 0 },
982 {
"copr", 0x30000000, 0xfc000000,
"u,2N",
pa10, 0 },
986 {
"cldw", 0x24000000, 0xfc001200,
"ucxccx(s,b),t",
pa11,
FLAG_STRICT },
988 {
"cldw", 0x24001000, 0xfc001200,
"ucocc@(s,b),t",
pa20,
FLAG_STRICT },
992 {
"cldw", 0x24001000, 0xfc001200,
"ucmcc5(s,b),t",
pa11,
FLAG_STRICT },
996 {
"cldd", 0x2c000000, 0xfc001200,
"ucxccx(s,b),t",
pa11,
FLAG_STRICT },
998 {
"cldd", 0x2c001000, 0xfc001200,
"ucocc@(s,b),t",
pa20,
FLAG_STRICT },
1002 {
"cldd", 0x2c001000, 0xfc001200,
"ucmcc5(s,b),t",
pa11,
FLAG_STRICT },
1006 {
"cstw", 0x24000200, 0xfc001200,
"ucxcCt,x(s,b)",
pa11,
FLAG_STRICT },
1008 {
"cstw", 0x24001200, 0xfc001200,
"ucocCt,@(s,b)",
pa20,
FLAG_STRICT },
1012 {
"cstw", 0x24001200, 0xfc001200,
"ucmcCt,5(s,b)",
pa11,
FLAG_STRICT },
1016 {
"cstd", 0x2c000200, 0xfc001200,
"ucxcCt,x(s,b)",
pa11,
FLAG_STRICT },
1018 {
"cstd", 0x2c001200, 0xfc001200,
"ucocCt,@(s,b)",
pa20,
FLAG_STRICT },
1022 {
"cstd", 0x2c001200, 0xfc001200,
"ucmcCt,5(s,b)",
pa11,
FLAG_STRICT },
1024 {
"cldwx", 0x24000000, 0xfc001e00,
"ucXx(s,b),t",
pa10,
FLAG_STRICT },
1025 {
"cldwx", 0x24000000, 0xfc00d200,
"ucxccx(b),t",
pa11,
FLAG_STRICT },
1026 {
"cldwx", 0x24000000, 0xfc001200,
"ucxccx(s,b),t",
pa11,
FLAG_STRICT },
1027 {
"cldwx", 0x24000000, 0xfc00de00,
"ucXx(b),t",
pa10, 0 },
1028 {
"cldwx", 0x24000000, 0xfc001e00,
"ucXx(s,b),t",
pa10, 0 },
1030 {
"clddx", 0x2c000000, 0xfc001e00,
"ucXx(s,b),t",
pa10,
FLAG_STRICT },
1031 {
"clddx", 0x2c000000, 0xfc00d200,
"ucxccx(b),t",
pa11,
FLAG_STRICT },
1032 {
"clddx", 0x2c000000, 0xfc001200,
"ucxccx(s,b),t",
pa11,
FLAG_STRICT },
1033 {
"clddx", 0x2c000000, 0xfc00de00,
"ucXx(b),t",
pa10, 0 },
1034 {
"clddx", 0x2c000000, 0xfc001e00,
"ucXx(s,b),t",
pa10, 0 },
1036 {
"cstwx", 0x24000200, 0xfc001e00,
"ucXt,x(s,b)",
pa10,
FLAG_STRICT },
1037 {
"cstwx", 0x24000200, 0xfc00d200,
"ucxcCt,x(b)",
pa11,
FLAG_STRICT },
1038 {
"cstwx", 0x24000200, 0xfc001200,
"ucxcCt,x(s,b)",
pa11,
FLAG_STRICT },
1039 {
"cstwx", 0x24000200, 0xfc00de00,
"ucXt,x(b)",
pa10, 0 },
1040 {
"cstwx", 0x24000200, 0xfc001e00,
"ucXt,x(s,b)",
pa10, 0 },
1042 {
"cstdx", 0x2c000200, 0xfc001e00,
"ucXt,x(s,b)",
pa10,
FLAG_STRICT },
1043 {
"cstdx", 0x2c000200, 0xfc00d200,
"ucxcCt,x(b)",
pa11,
FLAG_STRICT },
1044 {
"cstdx", 0x2c000200, 0xfc001200,
"ucxcCt,x(s,b)",
pa11,
FLAG_STRICT },
1045 {
"cstdx", 0x2c000200, 0xfc00de00,
"ucXt,x(b)",
pa10, 0 },
1046 {
"cstdx", 0x2c000200, 0xfc001e00,
"ucXt,x(s,b)",
pa10, 0 },
1048 {
"cldws", 0x24001000, 0xfc001e00,
"ucM5(s,b),t",
pa10,
FLAG_STRICT },
1049 {
"cldws", 0x24001000, 0xfc00d200,
"ucmcc5(b),t",
pa11,
FLAG_STRICT },
1050 {
"cldws", 0x24001000, 0xfc001200,
"ucmcc5(s,b),t",
pa11,
FLAG_STRICT },
1051 {
"cldws", 0x24001000, 0xfc00de00,
"ucM5(b),t",
pa10, 0 },
1052 {
"cldws", 0x24001000, 0xfc001e00,
"ucM5(s,b),t",
pa10, 0 },
1054 {
"cldds", 0x2c001000, 0xfc001e00,
"ucM5(s,b),t",
pa10,
FLAG_STRICT },
1055 {
"cldds", 0x2c001000, 0xfc00d200,
"ucmcc5(b),t",
pa11,
FLAG_STRICT },
1056 {
"cldds", 0x2c001000, 0xfc001200,
"ucmcc5(s,b),t",
pa11,
FLAG_STRICT },
1057 {
"cldds", 0x2c001000, 0xfc00de00,
"ucM5(b),t",
pa10, 0 },
1058 {
"cldds", 0x2c001000, 0xfc001e00,
"ucM5(s,b),t",
pa10, 0 },
1060 {
"cstws", 0x24001200, 0xfc001e00,
"ucMt,5(s,b)",
pa10,
FLAG_STRICT },
1061 {
"cstws", 0x24001200, 0xfc00d200,
"ucmcCt,5(b)",
pa11,
FLAG_STRICT },
1062 {
"cstws", 0x24001200, 0xfc001200,
"ucmcCt,5(s,b)",
pa11,
FLAG_STRICT },
1063 {
"cstws", 0x24001200, 0xfc00de00,
"ucMt,5(b)",
pa10, 0 },
1064 {
"cstws", 0x24001200, 0xfc001e00,
"ucMt,5(s,b)",
pa10, 0 },
1066 {
"cstds", 0x2c001200, 0xfc001e00,
"ucMt,5(s,b)",
pa10,
FLAG_STRICT },
1067 {
"cstds", 0x2c001200, 0xfc00d200,
"ucmcCt,5(b)",
pa11,
FLAG_STRICT },
1068 {
"cstds", 0x2c001200, 0xfc001200,
"ucmcCt,5(s,b)",
pa11,
FLAG_STRICT },
1069 {
"cstds", 0x2c001200, 0xfc00de00,
"ucMt,5(b)",
pa10, 0 },
1070 {
"cstds", 0x2c001200, 0xfc001e00,
"ucMt,5(s,b)",
pa10, 0 },
1079 #define NUMOPCODES ((sizeof pa_opcodes) / (sizeof pa_opcodes[0]))
1083 #define PA_IMM11_AT_31 'i'
1084 #define PA_IMM14_AT_31 'j'
1085 #define PA_IMM21_AT_31 'k'
1086 #define PA_DISP12 'w'
1087 #define PA_DISP17 'W'
1089 #define N_HPPA_OPERAND_FORMATS 5
static const struct pa_opcode pa_opcodes[]