12159047fSniklas /* ns32k-opcode.h -- Opcode table for National Semi 32k processor
2*c074d1c9Sdrahn    Copyright 1987, 1991, 1994, 2002 Free Software Foundation, Inc.
32159047fSniklas 
42159047fSniklas This file is part of GAS, the GNU Assembler.
52159047fSniklas 
62159047fSniklas GAS is free software; you can redistribute it and/or modify
72159047fSniklas it under the terms of the GNU General Public License as published by
82159047fSniklas the Free Software Foundation; either version 1, or (at your option)
92159047fSniklas any later version.
102159047fSniklas 
112159047fSniklas GAS is distributed in the hope that it will be useful,
122159047fSniklas but WITHOUT ANY WARRANTY; without even the implied warranty of
132159047fSniklas MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
142159047fSniklas GNU General Public License for more details.
152159047fSniklas 
162159047fSniklas You should have received a copy of the GNU General Public License
172159047fSniklas along with GAS; see the file COPYING.  If not, write to
182159047fSniklas the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
192159047fSniklas 
202159047fSniklas 
212159047fSniklas #ifdef SEQUENT_COMPATABILITY
222159047fSniklas #define DEF_MODEC 20
232159047fSniklas #define DEF_MODEL 21
242159047fSniklas #endif
252159047fSniklas 
262159047fSniklas #ifndef DEF_MODEC
272159047fSniklas #define DEF_MODEC 20
282159047fSniklas #endif
292159047fSniklas 
302159047fSniklas #ifndef DEF_MODEL
312159047fSniklas #define DEF_MODEL 20
322159047fSniklas #endif
332159047fSniklas /*
342159047fSniklas    After deciding the instruction entry (via hash.c) the instruction parser
352159047fSniklas    will try to match the operands after the instruction to the required set
362159047fSniklas    given in the entry operandfield. Every operand will result in a change in
372159047fSniklas    the opcode or the addition of data to the opcode.
382159047fSniklas    The operands in the source instruction are checked for inconsistent
392159047fSniklas    semantics.
402159047fSniklas 
412159047fSniklas 	F : 32 bit float	general form
422159047fSniklas 	L : 64 bit float	    "
432159047fSniklas 	B : byte		    "
442159047fSniklas 	W : word		    "
452159047fSniklas 	D : double-word		    "
462159047fSniklas 	A : double-word		gen-address-form ie no regs, no immediate
472159047fSniklas 	I : integer writeable   gen int except immediate (A + reg)
482159047fSniklas 	Z : floating writeable	gen float except immediate (Z + freg)
492159047fSniklas 	d : displacement
502159047fSniklas 	b : displacement - pc relative addressing  acb
512159047fSniklas 	p : displacement - pc relative addressing  br bcond bsr cxp
522159047fSniklas 	q : quick
532159047fSniklas 	i : immediate (8 bits)
542159047fSniklas 	    This is not a standard ns32k operandtype, it is used to build
552159047fSniklas 	    instructions like    svc arg1,arg2
562159047fSniklas 	    Svc is the instruction SuperVisorCall and is sometimes used to
572159047fSniklas 	    call OS-routines from usermode. Some args might be handy!
582159047fSniklas 	r : register number (3 bits)
592159047fSniklas 	O : setcfg instruction optionslist
602159047fSniklas 	C : cinv instruction optionslist
612159047fSniklas 	S : stringinstruction optionslist
622159047fSniklas 	U : registerlist	save,enter
632159047fSniklas 	u : registerlist	restore,exit
642159047fSniklas 	M : mmu register
652159047fSniklas 	P : cpu register
662159047fSniklas 	g : 3:rd operand of inss or exts instruction
672159047fSniklas 	G : 4:th operand of inss or exts instruction
682159047fSniklas 	    Those operands are encoded in the same byte.
692159047fSniklas 	    This byte is placed last in the instruction.
702159047fSniklas 	f : operand of sfsr
712159047fSniklas 	H : sequent-hack for bsr (Warning)
722159047fSniklas 
732159047fSniklas column	1 	instructions
742159047fSniklas 	2 	number of bits in opcode.
752159047fSniklas 	3 	number of bits in opcode explicitly
762159047fSniklas 		determined by the instruction type.
772159047fSniklas 	4 	opcodeseed, the number we build our opcode
782159047fSniklas 		from.
792159047fSniklas 	5 	operandtypes, used by operandparser.
802159047fSniklas 	6 	size in bytes of immediate
812159047fSniklas */
822159047fSniklas struct ns32k_opcode {
83*c074d1c9Sdrahn   const char *name;
842159047fSniklas   unsigned char opcode_id_size; /* not used by the assembler */
852159047fSniklas   unsigned char opcode_size;
862159047fSniklas   unsigned long opcode_seed;
87*c074d1c9Sdrahn   const char *operands;
882159047fSniklas   unsigned char im_size;	/* not used by dissassembler */
89*c074d1c9Sdrahn   const char *default_args;	/* default to those args when none given */
902159047fSniklas   char default_modec;		/* default to this addr-mode when ambigous
912159047fSniklas 				   ie when the argument of a general addr-mode
922159047fSniklas 				   is a plain constant */
932159047fSniklas   char default_model;		/* is a plain label */
942159047fSniklas };
952159047fSniklas 
962159047fSniklas #ifdef comment
972159047fSniklas /* This section was from the gdb version of this file. */
982159047fSniklas 
992159047fSniklas #ifndef ns32k_opcodeT
1002159047fSniklas #define ns32k_opcodeT int
1012159047fSniklas #endif /* no ns32k_opcodeT */
1022159047fSniklas 
1032159047fSniklas struct not_wot			/* ns32k opcode table: wot to do with this */
1042159047fSniklas 				/* particular opcode */
1052159047fSniklas {
1062159047fSniklas   int obits;			/* number of opcode bits */
1072159047fSniklas   int ibits;			/* number of instruction bits */
1082159047fSniklas   ns32k_opcodeT code;		/* op-code (may be > 8 bits!) */
109*c074d1c9Sdrahn   const char *args;		/* how to compile said opcode */
1102159047fSniklas };
1112159047fSniklas 
1122159047fSniklas struct not			/* ns32k opcode text */
1132159047fSniklas {
114*c074d1c9Sdrahn   const char *name;		/* opcode name: lowercase string  [key]  */
1152159047fSniklas   struct not_wot detail;	/* rest of opcode table          [datum] */
1162159047fSniklas };
1172159047fSniklas 
1182159047fSniklas /* Instructions look like this:
1192159047fSniklas 
1202159047fSniklas    basic instruction--1, 2, or 3 bytes
1212159047fSniklas    index byte for operand A, if operand A is indexed--1 byte
1222159047fSniklas    index byte for operand B, if operand B is indexed--1 byte
1232159047fSniklas    addressing extension for operand A
1242159047fSniklas    addressing extension for operand B
1252159047fSniklas    implied operands
1262159047fSniklas 
1272159047fSniklas    Operand A is the operand listed first in the following opcode table.
1282159047fSniklas    Operand B is the operand listed second in the following opcode table.
1292159047fSniklas    All instructions have at most 2 general operands, so this is enough.
1302159047fSniklas    The implied operands are associated with operands other than A and B.
1312159047fSniklas 
1322159047fSniklas    Each operand has a digit and a letter.
1332159047fSniklas 
1342159047fSniklas    The digit gives the position in the assembly language.  The letter,
1352159047fSniklas    one of the following, tells us what kind of operand it is.  */
1362159047fSniklas 
1372159047fSniklas /* F : 32 bit float
1382159047fSniklas  * L : 64 bit float
1392159047fSniklas  * B : byte
1402159047fSniklas  * W : word
1412159047fSniklas  * D : double-word
1422159047fSniklas  * I : integer not immediate
1432159047fSniklas  * Z : floating not immediate
1442159047fSniklas  * d : displacement
1452159047fSniklas  * q : quick
1462159047fSniklas  * i : immediate (8 bits)
1472159047fSniklas  * r : register number (3 bits)
1482159047fSniklas  * p : displacement - pc relative addressing
1492159047fSniklas */
1502159047fSniklas 
1512159047fSniklas 
1522159047fSniklas #endif /* comment */
1532159047fSniklas 
1542159047fSniklas static const struct ns32k_opcode ns32k_opcodes[]=
1552159047fSniklas {
1562159047fSniklas   { "absf",	14,24,	0x35be,	"1F2Z",		4,	"",	DEF_MODEC,DEF_MODEL	},
1572159047fSniklas   { "absl",	14,24,	0x34be,	"1L2Z",		8,	"",	DEF_MODEC,DEF_MODEL	},
1582159047fSniklas   { "absb",	14,24,	0x304e, "1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
1592159047fSniklas   { "absw",	14,24,	0x314e, "1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
1602159047fSniklas   { "absd",	14,24,	0x334e, "1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
1612159047fSniklas   { "acbb",	 7,16,	0x4c,	"2I1q3p",	1,	"",	DEF_MODEC,DEF_MODEL	},
1622159047fSniklas   { "acbw",	 7,16,	0x4d,	"2I1q3p",	2,	"",	DEF_MODEC,DEF_MODEL	},
1632159047fSniklas   { "acbd",	 7,16,	0x4f,	"2I1q3p",	4,	"",	DEF_MODEC,DEF_MODEL	},
1642159047fSniklas   { "addf",	14,24,	0x01be,	"1F2Z",		4,	"",	DEF_MODEC,DEF_MODEL	},
1652159047fSniklas   { "addl",	14,24,	0x00be, "1L2Z",		8,	"",	DEF_MODEC,DEF_MODEL	},
1662159047fSniklas   { "addb",	 6,16,	0x00,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
1672159047fSniklas   { "addw",	 6,16,	0x01,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
1682159047fSniklas   { "addd",	 6,16,	0x03,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
1692159047fSniklas   { "addcb",	 6,16,	0x10,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
1702159047fSniklas   { "addcw",	 6,16,	0x11,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
1712159047fSniklas   { "addcd",	 6,16,	0x13,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
1722159047fSniklas   { "addpb",	14,24,	0x3c4e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
1732159047fSniklas   { "addpw",	14,24,	0x3d4e,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
1742159047fSniklas   { "addpd",	14,24,	0x3f4e,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
1752159047fSniklas   { "addqb",	 7,16,	0x0c,	"2I1q",		1,	"",	DEF_MODEC,DEF_MODEL	},
1762159047fSniklas   { "addqw",	 7,16,	0x0d,	"2I1q",		2,	"",	DEF_MODEC,DEF_MODEL	},
1772159047fSniklas   { "addqd",	 7,16,	0x0f,	"2I1q",		4,	"",	DEF_MODEC,DEF_MODEL	},
1782159047fSniklas   { "addr",	 6,16,	0x27,	"1A2I",		4,	"",	21,21	},
1792159047fSniklas   { "adjspb",	11,16,	0x057c,	"1B",		1,	"",	DEF_MODEC,DEF_MODEL	},
1802159047fSniklas   { "adjspw",	11,16,	0x057d,	"1W", 		2,	"",	DEF_MODEC,DEF_MODEL	},
1812159047fSniklas   { "adjspd",	11,16,	0x057f,	"1D", 		4,	"",	DEF_MODEC,DEF_MODEL	},
1822159047fSniklas   { "andb",	 6,16,	0x28,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
1832159047fSniklas   { "andw",	 6,16,	0x29,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
1842159047fSniklas   { "andd",	 6,16,	0x2b,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
1852159047fSniklas   { "ashb",	14,24,	0x044e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
1862159047fSniklas   { "ashw",	14,24,	0x054e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
1872159047fSniklas   { "ashd",	14,24,	0x074e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
1882159047fSniklas   { "beq",	 8,8,	0x0a,	"1p",		0,	"",	21,21	},
1892159047fSniklas   { "bne",	 8,8,	0x1a,	"1p",		0,	"",	21,21	},
1902159047fSniklas   { "bcs",	 8,8,	0x2a,	"1p",		0,	"",	21,21	},
1912159047fSniklas   { "bcc",	 8,8,	0x3a,	"1p",		0,	"",	21,21	},
1922159047fSniklas   { "bhi",	 8,8,	0x4a,	"1p",		0,	"",	21,21	},
1932159047fSniklas   { "bls",	 8,8,	0x5a,	"1p",		0,	"",	21,21	},
1942159047fSniklas   { "bgt",	 8,8,	0x6a,	"1p",		0,	"",	21,21	},
1952159047fSniklas   { "ble",	 8,8,	0x7a,	"1p",		0,	"",	21,21	},
1962159047fSniklas   { "bfs",	 8,8,	0x8a,	"1p",		0,	"",	21,21	},
1972159047fSniklas   { "bfc",	 8,8,	0x9a,	"1p",		0,	"",	21,21	},
1982159047fSniklas   { "blo",	 8,8,	0xaa,	"1p",		0,	"",	21,21	},
1992159047fSniklas   { "bhs",	 8,8,	0xba,	"1p",		0,	"",	21,21	},
2002159047fSniklas   { "blt",	 8,8,	0xca,	"1p",		0,	"",	21,21	},
2012159047fSniklas   { "bge",	 8,8,	0xda,	"1p",		0,	"",	21,21	},
2022159047fSniklas   { "but",	 8,8,	0xea,	"1p",		0,	"",	21,21	},
2032159047fSniklas   { "buf",	 8,8,	0xfa,	"1p",		0,	"",	21,21	},
2042159047fSniklas   { "bicb",	 6,16,	0x08,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
2052159047fSniklas   { "bicw",	 6,16,	0x09,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
2062159047fSniklas   { "bicd",	 6,16,	0x0b,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
2072159047fSniklas   { "bicpsrb",	11,16,	0x17c,	"1B",		1,	"",	DEF_MODEC,DEF_MODEL	},
2082159047fSniklas   { "bicpsrw",	11,16,	0x17d,	"1W",		2,	"",	DEF_MODEC,DEF_MODEL	},
2092159047fSniklas   { "bispsrb",	11,16,	0x37c,	"1B",		1,	"",	DEF_MODEC,DEF_MODEL	},
2102159047fSniklas   { "bispsrw",	11,16,	0x37d,	"1W",		2,	"",	DEF_MODEC,DEF_MODEL	},
2112159047fSniklas   { "bpt",	 8,8,	0xf2,	"",		0,	"",	DEF_MODEC,DEF_MODEL	},
2122159047fSniklas   { "br",	 8,8,	0xea,	"1p",		0,	"",	21,21	},
2132159047fSniklas #ifdef SEQUENT_COMPATABILITY
2142159047fSniklas   { "bsr",	 8,8,	0x02,	"1H",		0,	"",	21,21	},
2152159047fSniklas #else
2162159047fSniklas   { "bsr",	 8,8,	0x02,	"1p",		0,	"",	21,21	},
2172159047fSniklas #endif
2182159047fSniklas   { "caseb",	11,16,	0x77c,	"1B",		1,	"",	DEF_MODEC,DEF_MODEL	},
2192159047fSniklas   { "casew",	11,16,	0x77d,	"1W",		2,	"",	DEF_MODEC,DEF_MODEL	},
2202159047fSniklas   { "cased",	11,16,	0x77f,	"1D",		4,	"",	DEF_MODEC,DEF_MODEL	},
2212159047fSniklas   { "cbitb",	14,24,	0x084e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
2222159047fSniklas   { "cbitw",	14,24,	0x094e,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
2232159047fSniklas   { "cbitd",	14,24,	0x0b4e,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
2242159047fSniklas   { "cbitib",	14,24,	0x0c4e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
2252159047fSniklas   { "cbitiw",	14,24,	0x0d4e,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
2262159047fSniklas   { "cbitid",	14,24,	0x0f4e,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
2272159047fSniklas   { "checkb",	11,24,	0x0ee,	"2A3B1r",	1,	"",	DEF_MODEC,DEF_MODEL	},
2282159047fSniklas   { "checkw",	11,24,	0x1ee,	"2A3W1r",	2,	"",	DEF_MODEC,DEF_MODEL	},
2292159047fSniklas   { "checkd",	11,24,	0x3ee,	"2A3D1r",	4,	"",	DEF_MODEC,DEF_MODEL	},
2302159047fSniklas   { "cinv",	14,24,	0x271e,	"2D1C",		4,	"",	DEF_MODEC,DEF_MODEL	},
2312159047fSniklas   { "cmpf",	14,24,	0x09be,	"1F2F",		4,	"",	DEF_MODEC,DEF_MODEL	},
2322159047fSniklas   { "cmpl",	14,24,	0x08be,	"1L2L",		8,	"",	DEF_MODEC,DEF_MODEL	},
2332159047fSniklas   { "cmpb",	 6,16,	0x04,	"1B2B",		1,	"",	DEF_MODEC,DEF_MODEL	},
2342159047fSniklas   { "cmpw",	 6,16,	0x05,	"1W2W",		2,	"",	DEF_MODEC,DEF_MODEL	},
2352159047fSniklas   { "cmpd",	 6,16,	0x07,	"1D2D",		4,	"",	DEF_MODEC,DEF_MODEL	},
2362159047fSniklas   { "cmpmb",	14,24,	0x04ce,	"1A2A3b",	1,	"",	DEF_MODEC,DEF_MODEL	},
2372159047fSniklas   { "cmpmw",	14,24,	0x05ce,	"1A2A3b",	2,	"",	DEF_MODEC,DEF_MODEL	},
2382159047fSniklas   { "cmpmd",	14,24,	0x07ce,	"1A2A3b",	4,	"",	DEF_MODEC,DEF_MODEL	},
2392159047fSniklas   { "cmpqb",	 7,16,	0x1c,	"2B1q",		1,	"",	DEF_MODEC,DEF_MODEL	},
2402159047fSniklas   { "cmpqw",	 7,16,	0x1d,	"2W1q",		2,	"",	DEF_MODEC,DEF_MODEL	},
2412159047fSniklas   { "cmpqd",	 7,16,	0x1f,	"2D1q",		4,	"",	DEF_MODEC,DEF_MODEL	},
2422159047fSniklas   { "cmpsb",	16,24,	0x040e,	"1S",		0,	"[]",	DEF_MODEC,DEF_MODEL	},
2432159047fSniklas   { "cmpsw",	16,24,	0x050e,	"1S",		0,	"[]",	DEF_MODEC,DEF_MODEL	},
2442159047fSniklas   { "cmpsd",	16,24,	0x070e,	"1S",		0,	"[]",	DEF_MODEC,DEF_MODEL	},
2452159047fSniklas   { "cmpst",	16,24,	0x840e,	"1S",		0,	"[]",	DEF_MODEC,DEF_MODEL	},
2462159047fSniklas   { "comb",	14,24,	0x344e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
2472159047fSniklas   { "comw",	14,24,	0x354e,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
2482159047fSniklas   { "comd",	14,24,	0x374e,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
2492159047fSniklas   { "cvtp",	11,24,	0x036e,	"2A3D1r",	4,	"",	DEF_MODEC,DEF_MODEL	},
2502159047fSniklas   { "cxp",	 8,8,	0x22,	"1p",		0,	"",	21,21	},
2512159047fSniklas   { "cxpd",	11,16,	0x07f,	"1A",		4,	"",	DEF_MODEC,DEF_MODEL	},
2522159047fSniklas   { "deib",	14,24,	0x2cce,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
2532159047fSniklas   { "deiw",	14,24,	0x2dce,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
2542159047fSniklas   { "deid",	14,24,	0x2fce,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
2552159047fSniklas   { "dia",	 8,8,	0xc2,	"",		1,	"",	DEF_MODEC,DEF_MODEL	},
2562159047fSniklas   { "divf",	14,24,	0x21be,	"1F2Z",		4,	"",	DEF_MODEC,DEF_MODEL	},
2572159047fSniklas   { "divl",	14,24,	0x20be,	"1L2Z",		8,	"",	DEF_MODEC,DEF_MODEL	},
2582159047fSniklas   { "divb",	14,24,	0x3cce,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
2592159047fSniklas   { "divw",	14,24,	0x3dce,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
2602159047fSniklas   { "divd",	14,24,	0x3fce,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
2612159047fSniklas   { "enter",	 8,8,	0x82,	"1U2d",		0,	"",	DEF_MODEC,DEF_MODEL	},
2622159047fSniklas   { "exit",	 8,8,	0x92,	"1u",		0,	"",	DEF_MODEC,DEF_MODEL	},
2632159047fSniklas   { "extb",	11,24,	0x02e,	"2I3B1r4d",	1,	"",	DEF_MODEC,DEF_MODEL	},
2642159047fSniklas   { "extw",	11,24,	0x12e,	"2I3W1r4d",	2,	"",	DEF_MODEC,DEF_MODEL	},
2652159047fSniklas   { "extd",	11,24,	0x32e,	"2I3D1r4d",	4,	"",	DEF_MODEC,DEF_MODEL	},
2662159047fSniklas   { "extsb",	14,24,	0x0cce,	"1I2I4G3g",	1,	"",	DEF_MODEC,DEF_MODEL	},
2672159047fSniklas   { "extsw",	14,24,	0x0dce,	"1I2I4G3g",	2,	"",	DEF_MODEC,DEF_MODEL	},
2682159047fSniklas   { "extsd",	14,24,	0x0fce,	"1I2I4G3g",	4,	"",	DEF_MODEC,DEF_MODEL	},
2692159047fSniklas   { "ffsb",	14,24,	0x046e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
2702159047fSniklas   { "ffsw",	14,24,	0x056e,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
2712159047fSniklas   { "ffsd",	14,24,	0x076e,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
2722159047fSniklas   { "flag",	 8,8,	0xd2,	"",		0,	"",	DEF_MODEC,DEF_MODEL	},
2732159047fSniklas   { "floorfb",	14,24,	0x3c3e,	"1F2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
2742159047fSniklas   { "floorfw",	14,24,	0x3d3e,	"1F2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
2752159047fSniklas   { "floorfd",	14,24,	0x3f3e,	"1F2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
2762159047fSniklas   { "floorlb",	14,24,	0x383e,	"1L2I",		8,	"",	DEF_MODEC,DEF_MODEL	},
2772159047fSniklas   { "floorlw",	14,24,	0x393e,	"1L2I",		8,	"",	DEF_MODEC,DEF_MODEL	},
2782159047fSniklas   { "floorld",	14,24,	0x3b3e,	"1L2I",		8,	"",	DEF_MODEC,DEF_MODEL	},
2792159047fSniklas   { "ibitb",	14,24,	0x384e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
2802159047fSniklas   { "ibitw",	14,24,	0x394e,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
2812159047fSniklas   { "ibitd",	14,24,	0x3b4e,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
2822159047fSniklas   { "indexb",	11,24,	0x42e,	"2B3B1r",	1,	"",	DEF_MODEC,DEF_MODEL	},
2832159047fSniklas   { "indexw",	11,24,	0x52e,	"2W3W1r",	2,	"",	DEF_MODEC,DEF_MODEL	},
2842159047fSniklas   { "indexd",	11,24,	0x72e,	"2D3D1r",	4,	"",	DEF_MODEC,DEF_MODEL	},
2852159047fSniklas   { "insb",	11,24,	0x0ae,	"2B3I1r4d",	1,	"",	DEF_MODEC,DEF_MODEL	},
2862159047fSniklas   { "insw",	11,24,	0x1ae,	"2W3I1r4d",	2,	"",	DEF_MODEC,DEF_MODEL	},
2872159047fSniklas   { "insd",	11,24,	0x3ae,	"2D3I1r4d",	4,	"",	DEF_MODEC,DEF_MODEL	},
2882159047fSniklas   { "inssb",	14,24,	0x08ce,	"1B2I4G3g",	1,	"",	DEF_MODEC,DEF_MODEL	},
2892159047fSniklas   { "inssw",	14,24,	0x09ce,	"1W2I4G3g",	2,	"",	DEF_MODEC,DEF_MODEL	},
2902159047fSniklas   { "inssd",	14,24,	0x0bce,	"1D2I4G3g",	4,	"",	DEF_MODEC,DEF_MODEL	},
2912159047fSniklas   { "jsr",	11,16,	0x67f,	"1A",		4,	"",	21,21	},
2922159047fSniklas   { "jump",	11,16,	0x27f,	"1A",		4,	"",	21,21	},
2932159047fSniklas   { "lfsr",	19,24,	0x00f3e,"1D",		4,	"",	DEF_MODEC,DEF_MODEL	},
2942159047fSniklas   { "lmr",	15,24,	0x0b1e,	"2D1M",		4,	"",	DEF_MODEC,DEF_MODEL	},
2952159047fSniklas   { "lprb",	 7,16,	0x6c,	"2B1P",		1,	"",	DEF_MODEC,DEF_MODEL	},
2962159047fSniklas   { "lprw",	 7,16,	0x6d,	"2W1P",		2,	"",	DEF_MODEC,DEF_MODEL	},
2972159047fSniklas   { "lprd",	 7,16,	0x6f,	"2D1P",		4,	"",	DEF_MODEC,DEF_MODEL	},
2982159047fSniklas   { "lshb",	14,24,	0x144e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
2992159047fSniklas   { "lshw",	14,24,	0x154e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3002159047fSniklas   { "lshd",	14,24,	0x174e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3012159047fSniklas   { "meib",	14,24,	0x24ce,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3022159047fSniklas   { "meiw",	14,24,	0x25ce,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
3032159047fSniklas   { "meid",	14,24,	0x27ce,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
3042159047fSniklas   { "modb",	14,24,	0x38ce,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3052159047fSniklas   { "modw",	14,24,	0x39ce,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
3062159047fSniklas   { "modd",	14,24,	0x3bce,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
3072159047fSniklas   { "movf",	14,24,	0x05be,	"1F2Z",		4,	"",	DEF_MODEC,DEF_MODEL	},
3082159047fSniklas   { "movl",	14,24,	0x04be,	"1L2Z",		8,	"",	DEF_MODEC,DEF_MODEL	},
3092159047fSniklas   { "movb",	 6,16,	0x14,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3102159047fSniklas   { "movw",	 6,16,	0x15,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
3112159047fSniklas   { "movd",	 6,16,	0x17,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
3122159047fSniklas   { "movbf",	14,24,	0x043e,	"1B2Z",		1,	"",	DEF_MODEC,DEF_MODEL	},
3132159047fSniklas   { "movwf",	14,24,	0x053e,	"1W2Z",		2,	"",	DEF_MODEC,DEF_MODEL	},
3142159047fSniklas   { "movdf",	14,24,	0x073e,	"1D2Z",		4,	"",	DEF_MODEC,DEF_MODEL	},
3152159047fSniklas   { "movbl",	14,24,	0x003e,	"1B2Z",		1,	"",	DEF_MODEC,DEF_MODEL	},
3162159047fSniklas   { "movwl",	14,24,	0x013e,	"1W2Z",		2,	"",	DEF_MODEC,DEF_MODEL	},
3172159047fSniklas   { "movdl",	14,24,	0x033e,	"1D2Z",		4,	"",	DEF_MODEC,DEF_MODEL	},
3182159047fSniklas   { "movfl",	14,24,	0x1b3e,	"1F2Z",		4,	"",	DEF_MODEC,DEF_MODEL	},
3192159047fSniklas   { "movlf",	14,24,	0x163e,	"1L2Z",		8,	"",	DEF_MODEC,DEF_MODEL	},
3202159047fSniklas   { "movmb",	14,24,	0x00ce,	"1A2A3b",	1,	"",	DEF_MODEC,DEF_MODEL	},
3212159047fSniklas   { "movmw",	14,24,	0x01ce,	"1A2A3b",	2,	"",	DEF_MODEC,DEF_MODEL	},
3222159047fSniklas   { "movmd",	14,24,	0x03ce,	"1A2A3b",	4,	"",	DEF_MODEC,DEF_MODEL	},
3232159047fSniklas   { "movqb",	 7,16,	0x5c,	"2I1q",		1,	"",	DEF_MODEC,DEF_MODEL	},
3242159047fSniklas   { "movqw",	 7,16,	0x5d,	"2I1q",		2,	"",	DEF_MODEC,DEF_MODEL	},
3252159047fSniklas   { "movqd",	 7,16,	0x5f,	"2I1q",		4,	"",	DEF_MODEC,DEF_MODEL	},
3262159047fSniklas   { "movsb",	16,24,	0x000e,	"1S",		0,	"[]",	DEF_MODEC,DEF_MODEL	},
3272159047fSniklas   { "movsw",	16,24,	0x010e,	"1S",		0,	"[]",	DEF_MODEC,DEF_MODEL	},
3282159047fSniklas   { "movsd",	16,24,	0x030e,	"1S",		0,	"[]",	DEF_MODEC,DEF_MODEL	},
3292159047fSniklas   { "movst",	16,24,	0x800e,	"1S",		0,	"[]",	DEF_MODEC,DEF_MODEL	},
3302159047fSniklas   { "movsub",	14,24,	0x0cae,	"1A2A",		1,	"",	DEF_MODEC,DEF_MODEL	},
3312159047fSniklas   { "movsuw",	14,24,	0x0dae,	"1A2A",		2,	"",	DEF_MODEC,DEF_MODEL	},
3322159047fSniklas   { "movsud",	14,24,	0x0fae,	"1A2A",		4,	"",	DEF_MODEC,DEF_MODEL	},
3332159047fSniklas   { "movusb",	14,24,	0x1cae,	"1A2A",		1,	"",	DEF_MODEC,DEF_MODEL	},
3342159047fSniklas   { "movusw",	14,24,	0x1dae,	"1A2A",		2,	"",	DEF_MODEC,DEF_MODEL	},
3352159047fSniklas   { "movusd",	14,24,	0x1fae,	"1A2A",		4,	"",	DEF_MODEC,DEF_MODEL	},
3362159047fSniklas   { "movxbd",	14,24,	0x1cce,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3372159047fSniklas   { "movxwd",	14,24,	0x1dce,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
3382159047fSniklas   { "movxbw",	14,24,	0x10ce,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3392159047fSniklas   { "movzbd",	14,24,	0x18ce,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3402159047fSniklas   { "movzwd",	14,24,	0x19ce,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
3412159047fSniklas   { "movzbw",	14,24,	0x14ce,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3422159047fSniklas   { "mulf",	14,24,	0x31be,	"1F2Z",		4,	"",	DEF_MODEC,DEF_MODEL	},
3432159047fSniklas   { "mull",	14,24,	0x30be,	"1L2Z",		8,	"",	DEF_MODEC,DEF_MODEL	},
3442159047fSniklas   { "mulb",	14,24,	0x20ce, "1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3452159047fSniklas   { "mulw",	14,24,	0x21ce, "1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
3462159047fSniklas   { "muld",	14,24,	0x23ce, "1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
3472159047fSniklas   { "negf",	14,24,	0x15be, "1F2Z",		4,	"",	DEF_MODEC,DEF_MODEL	},
3482159047fSniklas   { "negl",	14,24,	0x14be, "1L2Z",		8,	"",	DEF_MODEC,DEF_MODEL	},
3492159047fSniklas   { "negb",	14,24,	0x204e, "1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3502159047fSniklas   { "negw",	14,24,	0x214e, "1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
3512159047fSniklas   { "negd",	14,24,	0x234e, "1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
3522159047fSniklas   { "nop",	 8,8,	0xa2,	"",		0,	"",	DEF_MODEC,DEF_MODEL	},
3532159047fSniklas   { "notb",	14,24,	0x244e, "1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3542159047fSniklas   { "notw",	14,24,	0x254e, "1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
3552159047fSniklas   { "notd",	14,24,	0x274e, "1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
3562159047fSniklas   { "orb",	 6,16,	0x18,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3572159047fSniklas   { "orw",	 6,16,	0x19,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
3582159047fSniklas   { "ord",	 6,16,	0x1b,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
3592159047fSniklas   { "quob",	14,24,	0x30ce,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3602159047fSniklas   { "quow",	14,24,	0x31ce,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
3612159047fSniklas   { "quod",	14,24,	0x33ce,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
3622159047fSniklas   { "rdval",	19,24,	0x0031e,"1A",		4,	"",	DEF_MODEC,DEF_MODEL	},
3632159047fSniklas   { "remb",	14,24,	0x34ce,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3642159047fSniklas   { "remw",	14,24,	0x35ce,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
3652159047fSniklas   { "remd",	14,24,	0x37ce,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
3662159047fSniklas   { "restore",	 8,8,	0x72,	"1u",		0,	"",	DEF_MODEC,DEF_MODEL	},
3672159047fSniklas   { "ret",	 8,8,	0x12,	"1d",		0,	"",	DEF_MODEC,DEF_MODEL	},
3682159047fSniklas   { "reti",	 8,8,	0x52,	"",		0,	"",	DEF_MODEC,DEF_MODEL	},
3692159047fSniklas   { "rett",	 8,8,	0x42,	"1d",		0,	"",	DEF_MODEC,DEF_MODEL	},
3702159047fSniklas   { "rotb",	14,24,	0x004e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3712159047fSniklas   { "rotw",	14,24,	0x014e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3722159047fSniklas   { "rotd",	14,24,	0x034e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
3732159047fSniklas   { "roundfb",	14,24,	0x243e,	"1F2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
3742159047fSniklas   { "roundfw",	14,24,	0x253e,	"1F2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
3752159047fSniklas   { "roundfd",	14,24,	0x273e,	"1F2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
3762159047fSniklas   { "roundlb",	14,24,	0x203e,	"1L2I",		8,	"",	DEF_MODEC,DEF_MODEL	},
3772159047fSniklas   { "roundlw",	14,24,	0x213e,	"1L2I",		8,	"",	DEF_MODEC,DEF_MODEL	},
3782159047fSniklas   { "roundld",	14,24,	0x233e,	"1L2I",		8,	"",	DEF_MODEC,DEF_MODEL	},
3792159047fSniklas   { "rxp",	 8,8,	0x32,	"1d",		0,	"",	DEF_MODEC,DEF_MODEL	},
3802159047fSniklas   { "seqb",	11,16,	0x3c,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
3812159047fSniklas   { "seqw",	11,16,	0x3d,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
3822159047fSniklas   { "seqd",	11,16,	0x3f,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
3832159047fSniklas   { "sneb",	11,16,	0xbc,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
3842159047fSniklas   { "snew",	11,16,	0xbd,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
3852159047fSniklas   { "sned",	11,16,	0xbf,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
3862159047fSniklas   { "scsb",	11,16,	0x13c,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
3872159047fSniklas   { "scsw",	11,16,	0x13d,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
3882159047fSniklas   { "scsd",	11,16,	0x13f,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
3892159047fSniklas   { "sccb",	11,16,	0x1bc,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
3902159047fSniklas   { "sccw",	11,16,	0x1bd,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
3912159047fSniklas   { "sccd",	11,16,	0x1bf,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
3922159047fSniklas   { "shib",	11,16,	0x23c,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
3932159047fSniklas   { "shiw",	11,16,	0x23d,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
3942159047fSniklas   { "shid",	11,16,	0x23f,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
3952159047fSniklas   { "slsb",	11,16,	0x2bc,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
3962159047fSniklas   { "slsw",	11,16,	0x2bd,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
3972159047fSniklas   { "slsd",	11,16,	0x2bf,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
3982159047fSniklas   { "sgtb",	11,16,	0x33c,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
3992159047fSniklas   { "sgtw",	11,16,	0x33d,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
4002159047fSniklas   { "sgtd",	11,16,	0x33f,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
4012159047fSniklas   { "sleb",	11,16,	0x3bc,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
4022159047fSniklas   { "slew",	11,16,	0x3bd,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
4032159047fSniklas   { "sled",	11,16,	0x3bf,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
4042159047fSniklas   { "sfsb",	11,16,	0x43c,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
4052159047fSniklas   { "sfsw",	11,16,	0x43d,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
4062159047fSniklas   { "sfsd",	11,16,	0x43f,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
4072159047fSniklas   { "sfcb",	11,16,	0x4bc,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
4082159047fSniklas   { "sfcw",	11,16,	0x4bd,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
4092159047fSniklas   { "sfcd",	11,16,	0x4bf,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
4102159047fSniklas   { "slob",	11,16,	0x53c,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
4112159047fSniklas   { "slow",	11,16,	0x53d,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
4122159047fSniklas   { "slod",	11,16,	0x53f,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
4132159047fSniklas   { "shsb",	11,16,	0x5bc,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
4142159047fSniklas   { "shsw",	11,16,	0x5bd,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
4152159047fSniklas   { "shsd",	11,16,	0x5bf,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
4162159047fSniklas   { "sltb",	11,16,	0x63c,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
4172159047fSniklas   { "sltw",	11,16,	0x63d,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
4182159047fSniklas   { "sltd",	11,16,	0x63f,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
4192159047fSniklas   { "sgeb",	11,16,	0x6bc,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
4202159047fSniklas   { "sgew",	11,16,	0x6bd,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
4212159047fSniklas   { "sged",	11,16,	0x6bf,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
4222159047fSniklas   { "sutb",	11,16,	0x73c,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
4232159047fSniklas   { "sutw",	11,16,	0x73d,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
4242159047fSniklas   { "sutd",	11,16,	0x73f,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
4252159047fSniklas   { "sufb",	11,16,	0x7bc,	"1B",		0,	"",	DEF_MODEC,DEF_MODEL	},
4262159047fSniklas   { "sufw",	11,16,	0x7bd,	"1W",		0,	"",	DEF_MODEC,DEF_MODEL	},
4272159047fSniklas   { "sufd",	11,16,	0x7bf,	"1D",		0,	"",	DEF_MODEC,DEF_MODEL	},
4282159047fSniklas   { "save",	 8,8,	0x62,	"1U",		0,	"",	DEF_MODEC,DEF_MODEL	},
4292159047fSniklas   { "sbitb",    14,24,	0x184e,	"1B2A",		1,	"",	DEF_MODEC,DEF_MODEL	},
4302159047fSniklas   { "sbitw",	14,24,	0x194e,	"1W2A",		2,	"",	DEF_MODEC,DEF_MODEL	},
4312159047fSniklas   { "sbitd",	14,24,	0x1b4e,	"1D2A",		4,	"",	DEF_MODEC,DEF_MODEL	},
4322159047fSniklas   { "sbitib",	14,24,	0x1c4e,	"1B2A",		1,	"",	DEF_MODEC,DEF_MODEL	},
4332159047fSniklas   { "sbitiw",	14,24,	0x1d4e,	"1W2A",		2,	"",	DEF_MODEC,DEF_MODEL	},
4342159047fSniklas   { "sbitid",	14,24,	0x1f4e,	"1D2A",		4,	"",	DEF_MODEC,DEF_MODEL	},
4352159047fSniklas   { "setcfg",	15,24,	0x0b0e,	"1O",		0,	"",	DEF_MODEC,DEF_MODEL	},
4362159047fSniklas   { "sfsr",	14,24,	0x373e,	"1f",		0,	"",	DEF_MODEC,DEF_MODEL	},
4372159047fSniklas   { "skpsb",	16,24,	0x0c0e,	"1S",		0,	"[]",	DEF_MODEC,DEF_MODEL	},
4382159047fSniklas   { "skpsw",	16,24,	0x0d0e,	"1S",		0,	"[]",	DEF_MODEC,DEF_MODEL	},
4392159047fSniklas   { "skpsd",	16,24,	0x0f0e, "1S",		0,	"[]",	DEF_MODEC,DEF_MODEL	},
4402159047fSniklas   { "skpst",	16,24,	0x8c0e,	"1S",		0,	"[]",	DEF_MODEC,DEF_MODEL	},
4412159047fSniklas   { "smr",	15,24,	0x0f1e,	"2I1M",		4,	"",	DEF_MODEC,DEF_MODEL	},
4422159047fSniklas   { "sprb",	 7,16,	0x2c,	"2I1P",		1,	"",	DEF_MODEC,DEF_MODEL	},
4432159047fSniklas   { "sprw",	 7,16,	0x2d,	"2I1P",		2,	"",	DEF_MODEC,DEF_MODEL	},
4442159047fSniklas   { "sprd",	 7,16,	0x2f,	"2I1P",		4,	"",	DEF_MODEC,DEF_MODEL	},
4452159047fSniklas   { "subf",	14,24,	0x11be,	"1F2Z",		4,	"",	DEF_MODEC,DEF_MODEL	},
4462159047fSniklas   { "subl",	14,24,	0x10be,	"1L2Z",		8,	"",	DEF_MODEC,DEF_MODEL	},
4472159047fSniklas   { "subb",	 6,16,	0x20,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
4482159047fSniklas   { "subw",	 6,16,	0x21,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
4492159047fSniklas   { "subd",	 6,16,	0x23,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
4502159047fSniklas   { "subcb",	 6,16,	0x30,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
4512159047fSniklas   { "subcw",	 6,16,	0x31,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
4522159047fSniklas   { "subcd",	 6,16,	0x33,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
4532159047fSniklas   { "subpb",	14,24,	0x2c4e,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
4542159047fSniklas   { "subpw",	14,24,	0x2d4e,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
4552159047fSniklas   { "subpd",	14,24,	0x2f4e,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
4562159047fSniklas #ifdef NS32K_SVC_IMMED_OPERANDS
4572159047fSniklas   { "svc",	 8,8,	0xe2,	"2i1i",		1,	"",	DEF_MODEC,DEF_MODEL	}, /* not really, but some unix uses it */
4582159047fSniklas #else
4592159047fSniklas   { "svc",	 8,8,	0xe2,	"",		0,	"",	DEF_MODEC,DEF_MODEL	},
4602159047fSniklas #endif
4612159047fSniklas   { "tbitb",	 6,16,	0x34,	"1B2A",		1,	"",	DEF_MODEC,DEF_MODEL	},
4622159047fSniklas   { "tbitw",	 6,16,	0x35,	"1W2A",		2,	"",	DEF_MODEC,DEF_MODEL	},
4632159047fSniklas   { "tbitd",	 6,16,	0x37,	"1D2A",		4,	"",	DEF_MODEC,DEF_MODEL	},
4642159047fSniklas   { "truncfb",	14,24,	0x2c3e,	"1F2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
4652159047fSniklas   { "truncfw",	14,24,	0x2d3e,	"1F2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
4662159047fSniklas   { "truncfd",	14,24,	0x2f3e,	"1F2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
4672159047fSniklas   { "trunclb",	14,24,	0x283e,	"1L2I",		8,	"",	DEF_MODEC,DEF_MODEL	},
4682159047fSniklas   { "trunclw",	14,24,	0x293e,	"1L2I",		8,	"",	DEF_MODEC,DEF_MODEL	},
4692159047fSniklas   { "truncld",	14,24,	0x2b3e,	"1L2I",		8,	"",	DEF_MODEC,DEF_MODEL	},
4702159047fSniklas   { "wait",	 8,8,	0xb2,	"",		0,	"",	DEF_MODEC,DEF_MODEL	},
4712159047fSniklas   { "wrval",	19,24,	0x0071e,"1A",		0,	"",	DEF_MODEC,DEF_MODEL	},
4722159047fSniklas   { "xorb",	 6,16,	0x38,	"1B2I",		1,	"",	DEF_MODEC,DEF_MODEL	},
4732159047fSniklas   { "xorw",	 6,16,	0x39,	"1W2I",		2,	"",	DEF_MODEC,DEF_MODEL	},
4742159047fSniklas   { "xord",	 6,16,	0x3b,	"1D2I",		4,	"",	DEF_MODEC,DEF_MODEL	},
4752159047fSniklas   { "dotf",	14,24,  0x0dfe, "1F2F",		4,	"",	DEF_MODEC,DEF_MODEL	},
4762159047fSniklas   { "dotl",	14,24,  0x0cfe, "1L2L",		8,	"",	DEF_MODEC,DEF_MODEL	},
4772159047fSniklas   { "logbf",	14,24,  0x15fe, "1F2Z",		4,	"",	DEF_MODEC,DEF_MODEL	},
4782159047fSniklas   { "logbl",	14,24,  0x14fe, "1L2Z",		8,	"",	DEF_MODEC,DEF_MODEL	},
4792159047fSniklas   { "polyf",	14,24,  0x09fe, "1F2F",		4,	"",	DEF_MODEC,DEF_MODEL	},
4802159047fSniklas   { "polyl",	14,24,  0x08fe, "1L2L",		8,	"",	DEF_MODEC,DEF_MODEL	},
4812159047fSniklas   { "scalbf",	14,24,  0x11fe, "1F2Z",		4,	"",	DEF_MODEC,DEF_MODEL	},
4822159047fSniklas   { "scalbl",	14,24,  0x10fe, "1L2Z",		8,	"",	DEF_MODEC,DEF_MODEL	},
4832159047fSniklas };
4842159047fSniklas 
4852159047fSniklas #define MAX_ARGS 4
4862159047fSniklas #define ARG_LEN 50
4872159047fSniklas 
488