|
|
1.1.1.3 ! root 1: /* Opcode table for m68000/m68020 and m68881. ! 2: Copyright (C) 1989, Free Software Foundation. ! 3: ! 4: This file is part of GAS, the GNU Assembler. ! 5: ! 6: GAS is free software; you can redistribute it and/or modify ! 7: it under the terms of the GNU General Public License as published by ! 8: the Free Software Foundation; either version 1, or (at your option) ! 9: any later version. ! 10: ! 11: GAS is distributed in the hope that it will be useful, ! 12: but WITHOUT ANY WARRANTY; without even the implied warranty of ! 13: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! 14: GNU General Public License for more details. ! 15: ! 16: You should have received a copy of the GNU General Public License ! 17: along with GAS; see the file COPYING. If not, write to ! 18: the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ ! 19: 1.1 root 20: 21: struct m68k_opcode 22: { 23: char *name; 24: unsigned long opcode; 25: unsigned long match; 26: char *args; 27: }; 28: 29: /* We store four bytes of opcode for all opcodes because that 30: is the most any of them need. The actual length of an instruction 31: is always at least 2 bytes, and is as much longer as necessary to 32: hold the operands it has. 33: 34: The match component is a mask saying which bits must match 35: particular opcode in order for an instruction to be an instance 36: of that opcode. 37: 38: The args component is a string containing two characters 39: for each operand of the instruction. The first specifies 40: the kind of operand; the second, the place it is stored. */ 41: 42: /* Kinds of operands: 43: D data register only. Stored as 3 bits. 44: A address register only. Stored as 3 bits. 45: R either kind of register. Stored as 4 bits. 46: F floating point coprocessor register only. Stored as 3 bits. 47: O an offset (or width): immediate data 0-31 or data register. 48: Stored as 6 bits in special format for BF... insns. 49: + autoincrement only. Stored as 3 bits (number of the address register). 50: - autodecrement only. Stored as 3 bits (number of the address register). 51: Q quick immediate data. Stored as 3 bits. 52: This matches an immediate operand only when value is in range 1 .. 8. 53: M moveq immediate data. Stored as 8 bits. 54: This matches an immediate operand only when value is in range -128..127 55: T trap vector immediate data. Stored as 4 bits. 56: 57: k K-factor for fmove.p instruction. Stored as a 7-bit constant or 58: a three bit register offset, depending on the field type. 59: 60: # immediate data. Stored in special places (b, w or l) 61: which say how many bits to store. 62: ^ immediate data for floating point instructions. Special places 63: are offset by 2 bytes from '#'... 64: B pc-relative address, converted to an offset 65: that is treated as immediate data. 66: d displacement and register. Stores the register as 3 bits 67: and stores the displacement in the entire second word. 68: 69: C the CCR. No need to store it; this is just for filtering validity. 70: S the SR. No need to store, just as with CCR. 71: U the USP. No need to store, just as with CCR. 72: 73: I Coprocessor ID. Not printed if 1. The Coprocessor ID is always 74: extracted from the 'd' field of word one, which means that an extended 75: coprocessor opcode can be skipped using the 'i' place, if needed. 76: 77: s System Control register for the floating point coprocessor. 78: S List of system control registers for floating point coprocessor. 79: 80: J Misc register for movec instruction, stored in 'j' format. 81: Possible values: 82: 000 SFC Source Function Code reg 83: 001 DFC Data Function Code reg 84: 002 CACR Cache Control Register 85: 800 USP User Stack Pointer 86: 801 VBR Vector Base reg 87: 802 CAAR Cache Address Register 88: 803 MSP Master Stack Pointer 89: 804 ISP Interrupt Stack Pointer 90: 91: L Register list of the type d0-d7/a0-a7 etc. 92: (New! Improved! Can also hold fp0-fp7, as well!) 93: The assembler tries to see if the registers match the insn by 94: looking at where the insn wants them stored. 95: 96: l Register list like L, but with all the bits reversed. 97: Used for going the other way. . . 98: 99: They are all stored as 6 bits using an address mode and a register number; 100: they differ in which addressing modes they match. 101: 102: * all (modes 0-6,7.*) 103: ~ alterable memory (modes 2-6,7.0,7.1)(not 0,1,7.~) 104: % alterable (modes 0-6,7.0,7.1)(not 7.~) 105: ; data (modes 0,2-6,7.*)(not 1) 1.1.1.3 ! root 106: @ data, but not immediate (modes 0,2-6,7.? ? ?)(not 1,7.?) This may really be ;, the 68020 book says it is 1.1 root 107: ! control (modes 2,5,6,7.*-)(not 0,1,3,4,7.4) 1.1.1.3 ! root 108: & alterable control (modes 2,5,6,7.0,7.1)(not 0,1,7.? ? ?) 1.1 root 109: $ alterable data (modes 0,2-6,7.0,7.1)(not 1,7.~) 110: ? alterable control, or data register (modes 0,2,5,6,7.0,7.1)(not 1,3,4,7.~) 111: / control, or data register (modes 0,2,5,6,7.0,7.1,7.2,7.3)(not 1,3,4,7.4) 112: */ 113: 1.1.1.3 ! root 114: /* JF: for the 68851 */ ! 115: /* ! 116: I didn't use much imagination in choosing the ! 117: following codes, so many of them aren't very ! 118: mnemonic. -rab ! 119: ! 120: P pmmu register ! 121: Possible values: ! 122: 000 TC Translation Control reg ! 123: 100 CAL Current Access Level ! 124: 101 VAL Validate Access Level ! 125: 110 SCC Stack Change Control ! 126: 111 AC Access Control ! 127: ! 128: W wide pmmu registers ! 129: Possible values: ! 130: 001 DRP Dma Root Pointer ! 131: 010 SRP Supervisor Root Pointer ! 132: 011 CRP Cpu Root Pointer ! 133: ! 134: f function code register ! 135: 0 SFC ! 136: 1 DFC ! 137: ! 138: V VAL register only ! 139: ! 140: X BADx, BACx ! 141: 100 BAD Breakpoint Acknowledge Data ! 142: 101 BAC Breakpoint Acknowledge Control ! 143: ! 144: Y PSR ! 145: Z PCSR ! 146: ! 147: | memory (modes 2-6, 7.*) ! 148: ! 149: */ ! 150: 1.1 root 151: /* Places to put an operand, for non-general operands: 152: s source, low bits of first word. 153: d dest, shifted 9 in first word 154: 1 second word, shifted 12 155: 2 second word, shifted 6 156: 3 second word, shifted 0 157: 4 third word, shifted 12 158: 5 third word, shifted 6 159: 6 third word, shifted 0 160: 7 second word, shifted 7 161: 8 second word, shifted 10 162: D store in both place 1 and place 3; for divul and divsl. 163: b second word, low byte 164: w second word (entire) 165: l second and third word (entire) 166: g branch offset for bra and similar instructions. 167: The place to store depends on the magnitude of offset. 168: t store in both place 7 and place 8; for floating point operations 169: c branch offset for cpBcc operations. 170: The place to store is word two if bit six of word one is zero, 171: and words two and three if bit six of word one is one. 172: i Increment by two, to skip over coprocessor extended operands. Only 173: works with the 'I' format. 174: k Dynamic K-factor field. Bits 6-4 of word 2, used as a register number. 175: Also used for dynamic fmovem instruction. 176: C floating point coprocessor constant - 7 bits. Also used for static 177: K-factors... 178: j Movec register #, stored in 12 low bits of second word. 179: 180: Places to put operand, for general operands: 181: d destination, shifted 6 bits in first word 182: b source, at low bit of first word, and immediate uses one byte 183: w source, at low bit of first word, and immediate uses two bytes 184: l source, at low bit of first word, and immediate uses four bytes 185: s source, at low bit of first word. 186: Used sometimes in contexts where immediate is not allowed anyway. 187: f single precision float, low bit of 1st word, immediate uses 4 bytes 188: F double precision float, low bit of 1st word, immediate uses 8 bytes 189: x extended precision float, low bit of 1st word, immediate uses 12 bytes 190: p packed float, low bit of 1st word, immediate uses 12 bytes 191: */ 192: 193: #define one(x) ((x) << 16) 194: #define two(x, y) (((x) << 16) + y) 195: 196: /* 197: The assembler requires that all instances of the same mnemonic must be 198: consecutive. If they aren't, the assembler will bomb at runtime 199: */ 200: struct m68k_opcode m68k_opcodes[] = 201: { 202: {"abcd", one(0140400), one(0170770), "DsDd"}, 203: {"abcd", one(0140410), one(0170770), "-s-d"}, 204: 205: /* Add instructions */ 206: {"addal", one(0150700), one(0170700), "*lAd"}, 207: {"addaw", one(0150300), one(0170700), "*wAd"}, 208: {"addib", one(0003000), one(0177700), "#b$b"}, 209: {"addil", one(0003200), one(0177700), "#l$l"}, 210: {"addiw", one(0003100), one(0177700), "#w$w"}, 211: {"addqb", one(0050000), one(0170700), "Qd$b"}, 212: {"addql", one(0050200), one(0170700), "Qd%l"}, 213: {"addqw", one(0050100), one(0170700), "Qd%w"}, 214: 215: {"addb", one(0050000), one(0170700), "Qd$b"}, /* addq written as add */ 216: {"addb", one(0003000), one(0177700), "#b$b"}, /* addi written as add */ 217: {"addb", one(0150000), one(0170700), ";bDd"}, /* addb <ea>, Dd */ 218: {"addb", one(0150400), one(0170700), "Dd~b"}, /* addb Dd, <ea> */ 219: 220: {"addw", one(0050100), one(0170700), "Qd%w"}, /* addq written as add */ 221: {"addw", one(0003100), one(0177700), "#w$w"}, /* addi written as add */ 222: {"addw", one(0150300), one(0170700), "*wAd"}, /* adda written as add */ 223: {"addw", one(0150100), one(0170700), "*wDd"}, /* addw <ea>, Dd */ 224: {"addw", one(0150500), one(0170700), "Dd~w"}, /* addw Dd, <ea> */ 225: 226: {"addl", one(0050200), one(0170700), "Qd%l"}, /* addq written as add */ 227: {"addl", one(0003200), one(0177700), "#l$l"}, /* addi written as add */ 228: {"addl", one(0150700), one(0170700), "*lAd"}, /* adda written as add */ 229: {"addl", one(0150200), one(0170700), "*lDd"}, /* addl <ea>, Dd */ 230: {"addl", one(0150600), one(0170700), "Dd~l"}, /* addl Dd, <ea> */ 231: 232: {"addxb", one(0150400), one(0170770), "DsDd"}, 233: {"addxb", one(0150410), one(0170770), "-s-d"}, 234: {"addxl", one(0150600), one(0170770), "DsDd"}, 235: {"addxl", one(0150610), one(0170770), "-s-d"}, 236: {"addxw", one(0150500), one(0170770), "DsDd"}, 237: {"addxw", one(0150510), one(0170770), "-s-d"}, 238: 239: {"andib", one(0001000), one(0177700), "#b$b"}, 240: {"andib", one(0001074), one(0177777), "#bCb"}, /* andi to ccr */ 241: {"andiw", one(0001100), one(0177700), "#w$w"}, 242: {"andiw", one(0001174), one(0177777), "#wSw"}, /* andi to sr */ 243: {"andil", one(0001200), one(0177700), "#l$l"}, 244: 245: {"andb", one(0001000), one(0177700), "#b$b"}, /* andi written as or */ 246: {"andb", one(0001074), one(0177777), "#bCb"}, /* andi to ccr */ 247: {"andb", one(0140000), one(0170700), ";bDd"}, /* memory to register */ 248: {"andb", one(0140400), one(0170700), "Dd~b"}, /* register to memory */ 249: {"andw", one(0001100), one(0177700), "#w$w"}, /* andi written as or */ 250: {"andw", one(0001174), one(0177777), "#wSw"}, /* andi to sr */ 251: {"andw", one(0140100), one(0170700), ";wDd"}, /* memory to register */ 252: {"andw", one(0140500), one(0170700), "Dd~w"}, /* register to memory */ 253: {"andl", one(0001200), one(0177700), "#l$l"}, /* andi written as or */ 254: {"andl", one(0140200), one(0170700), ";lDd"}, /* memory to register */ 255: {"andl", one(0140600), one(0170700), "Dd~l"}, /* register to memory */ 256: 257: {"aslb", one(0160400), one(0170770), "QdDs"}, 258: {"aslb", one(0160440), one(0170770), "DdDs"}, 259: {"asll", one(0160600), one(0170770), "QdDs"}, 260: {"asll", one(0160640), one(0170770), "DdDs"}, 261: {"aslw", one(0160500), one(0170770), "QdDs"}, 262: {"aslw", one(0160540), one(0170770), "DdDs"}, 263: {"aslw", one(0160700), one(0177700), "~s"}, /* Shift memory */ 264: {"asrb", one(0160000), one(0170770), "QdDs"}, 265: {"asrb", one(0160040), one(0170770), "DdDs"}, 266: {"asrl", one(0160200), one(0170770), "QdDs"}, 267: {"asrl", one(0160240), one(0170770), "DdDs"}, 268: {"asrw", one(0160100), one(0170770), "QdDs"}, 269: {"asrw", one(0160140), one(0170770), "DdDs"}, 270: {"asrw", one(0160300), one(0177700), "~s"}, /* Shift memory */ 271: 272: {"bhi", one(0061000), one(0177400), "Bg"}, 273: {"bls", one(0061400), one(0177400), "Bg"}, 274: {"bcc", one(0062000), one(0177400), "Bg"}, 275: {"bcs", one(0062400), one(0177400), "Bg"}, 276: {"bne", one(0063000), one(0177400), "Bg"}, 277: {"beq", one(0063400), one(0177400), "Bg"}, 278: {"bvc", one(0064000), one(0177400), "Bg"}, 279: {"bvs", one(0064400), one(0177400), "Bg"}, 280: {"bpl", one(0065000), one(0177400), "Bg"}, 281: {"bmi", one(0065400), one(0177400), "Bg"}, 282: {"bge", one(0066000), one(0177400), "Bg"}, 283: {"blt", one(0066400), one(0177400), "Bg"}, 284: {"bgt", one(0067000), one(0177400), "Bg"}, 285: {"ble", one(0067400), one(0177400), "Bg"}, 286: 287: {"bchg", one(0000500), one(0170700), "Dd$s"}, 288: {"bchg", one(0004100), one(0177700), "#b$s"}, 289: {"bclr", one(0000600), one(0170700), "Dd$s"}, 290: {"bclr", one(0004200), one(0177700), "#b$s"}, 291: {"bfchg", two(0165300, 0), two(0177700, 0170000), "?sO2O3"}, 292: {"bfclr", two(0166300, 0), two(0177700, 0170000), "?sO2O3"}, 293: {"bfexts", two(0165700, 0), two(0177700, 0100000), "/sO2O3D1"}, 294: {"bfextu", two(0164700, 0), two(0177700, 0100000), "/sO2O3D1"}, 295: {"bfffo", two(0166700, 0), two(0177700, 0100000), "/sO2O3D1"}, 296: {"bfins", two(0167700, 0), two(0177700, 0100000), "D1?sO2O3"}, 297: {"bfset", two(0167300, 0), two(0177700, 0170000), "?sO2O3"}, 298: {"bftst", two(0164300, 0), two(0177700, 0170000), "/sO2O3"}, 299: {"bset", one(0000700), one(0170700), "Dd$s"}, 300: {"bset", one(0004300), one(0177700), "#b$s"}, 301: {"btst", one(0000400), one(0170700), "Dd@s"}, 302: {"btst", one(0004000), one(0177700), "#b@s"}, 303: 304: {"bkpt", one(0044110), one(0177770), "Qs"}, 305: {"bra", one(0060000), one(0177400), "Bg"}, 306: {"bras", one(0060000), one(0177400), "Bg"}, 307: {"bsr", one(0060400), one(0177400), "Bg"}, 308: {"bsrs", one(0060400), one(0177400), "Bg"}, 309: 310: {"callm", one(0003300), one(0177700), "#b!s"}, 311: {"cas2l", two(0007374, 0), two(0177777, 0107070), "D3D6D2D5R1R4"}, /* JF FOO this is really a 3 word ins */ 312: {"cas2w", two(0006374, 0), two(0177777, 0107070), "D3D6D2D5R1R4"}, /* JF ditto */ 313: {"casb", two(0005300, 0), two(0177700, 0177070), "D3D2~s"}, 314: {"casl", two(0007300, 0), two(0177700, 0177070), "D3D2~s"}, 315: {"casw", two(0006300, 0), two(0177700, 0177070), "D3D2~s"}, 316: 317: /* {"chk", one(0040600), one(0170700), ";wDd"}, JF FOO this looks wrong */ 318: {"chk2b", two(0000300, 0004000), two(0177700, 07777), "!sR1"}, 319: {"chk2l", two(0002300, 0004000), two(0177700, 07777), "!sR1"}, 320: {"chk2w", two(0001300, 0004000), two(0177700, 07777), "!sR1"}, 321: {"chkl", one(0040400), one(0170700), ";lDd"}, 322: {"chkw", one(0040600), one(0170700), ";wDd"}, 323: {"clrb", one(0041000), one(0177700), "$s"}, 324: {"clrl", one(0041200), one(0177700), "$s"}, 325: {"clrw", one(0041100), one(0177700), "$s"}, 326: 327: {"cmp2b", two(0000300, 0), two(0177700, 07777), "!sR1"}, 328: {"cmp2l", two(0002300, 0), two(0177700, 07777), "!sR1"}, 329: {"cmp2w", two(0001300, 0), two(0177700, 07777), "!sR1"}, 330: {"cmpal", one(0130700), one(0170700), "*lAd"}, 331: {"cmpaw", one(0130300), one(0170700), "*wAd"}, 332: {"cmpib", one(0006000), one(0177700), "#b;b"}, 333: {"cmpil", one(0006200), one(0177700), "#l;l"}, 334: {"cmpiw", one(0006100), one(0177700), "#w;w"}, 335: {"cmpb", one(0006000), one(0177700), "#b;b"}, /* cmpi written as cmp */ 336: {"cmpb", one(0130000), one(0170700), ";bDd"}, 337: {"cmpw", one(0006100), one(0177700), "#w;w"}, 338: {"cmpw", one(0130100), one(0170700), "*wDd"}, 339: {"cmpw", one(0130300), one(0170700), "*wAd"}, /* cmpa written as cmp */ 340: {"cmpl", one(0006200), one(0177700), "#l;l"}, 341: {"cmpl", one(0130200), one(0170700), "*lDd"}, 342: {"cmpl", one(0130700), one(0170700), "*lAd"}, 343: {"cmpmb", one(0130410), one(0170770), "+s+d"}, 344: {"cmpml", one(0130610), one(0170770), "+s+d"}, 345: {"cmpmw", one(0130510), one(0170770), "+s+d"}, 346: 347: {"dbcc", one(0052310), one(0177770), "DsBw"}, 348: {"dbcs", one(0052710), one(0177770), "DsBw"}, 349: {"dbeq", one(0053710), one(0177770), "DsBw"}, 350: {"dbf", one(0050710), one(0177770), "DsBw"}, 351: {"dbge", one(0056310), one(0177770), "DsBw"}, 352: {"dbgt", one(0057310), one(0177770), "DsBw"}, 353: {"dbhi", one(0051310), one(0177770), "DsBw"}, 354: {"dble", one(0057710), one(0177770), "DsBw"}, 355: {"dbls", one(0051710), one(0177770), "DsBw"}, 356: {"dblt", one(0056710), one(0177770), "DsBw"}, 357: {"dbmi", one(0055710), one(0177770), "DsBw"}, 358: {"dbne", one(0053310), one(0177770), "DsBw"}, 359: {"dbpl", one(0055310), one(0177770), "DsBw"}, 360: {"dbra", one(0050710), one(0177770), "DsBw"}, 361: {"dbt", one(0050310), one(0177770), "DsBw"}, 362: {"dbvc", one(0054310), one(0177770), "DsBw"}, 363: {"dbvs", one(0054710), one(0177770), "DsBw"}, 364: 365: {"divsl", two(0046100, 0006000), two(0177700, 0107770), ";lD3D1"}, 366: {"divsl", two(0046100, 0004000), two(0177700, 0107770), ";lDD"}, 367: {"divsll", two(0046100, 0004000), two(0177700, 0107770), ";lD3D1"}, 368: {"divsw", one(0100700), one(0170700), ";wDd"}, 369: {"divs", one(0100700), one(0170700), ";wDd"}, 370: {"divul", two(0046100, 0002000), two(0177700, 0107770), ";lD3D1"}, 371: {"divul", two(0046100, 0000000), two(0177700, 0107770), ";lDD"}, 372: {"divull", two(0046100, 0000000), two(0177700, 0107770), ";lD3D1"}, 373: {"divuw", one(0100300), one(0170700), ";wDd"}, 374: {"divu", one(0100300), one(0170700), ";wDd"}, 375: {"eorb", one(0005000), one(0177700), "#b$s"}, /* eori written as or */ 376: {"eorb", one(0005074), one(0177777), "#bCs"}, /* eori to ccr */ 377: {"eorb", one(0130400), one(0170700), "Dd$s"}, /* register to memory */ 378: {"eorib", one(0005000), one(0177700), "#b$s"}, 379: {"eorib", one(0005074), one(0177777), "#bCs"}, /* eori to ccr */ 380: {"eoril", one(0005200), one(0177700), "#l$s"}, 381: {"eoriw", one(0005100), one(0177700), "#w$s"}, 382: {"eoriw", one(0005174), one(0177777), "#wSs"}, /* eori to sr */ 383: {"eorl", one(0005200), one(0177700), "#l$s"}, 384: {"eorl", one(0130600), one(0170700), "Dd$s"}, 385: {"eorw", one(0005100), one(0177700), "#w$s"}, 386: {"eorw", one(0005174), one(0177777), "#wSs"}, /* eori to sr */ 387: {"eorw", one(0130500), one(0170700), "Dd$s"}, 388: 389: {"exg", one(0140500), one(0170770), "DdDs"}, 390: {"exg", one(0140510), one(0170770), "AdAs"}, 391: {"exg", one(0140610), one(0170770), "DdAs"}, 392: {"exg", one(0140610), one(0170770), "AsDd"}, 393: 394: {"extw", one(0044200), one(0177770), "Ds"}, 395: {"extl", one(0044300), one(0177770), "Ds"}, 396: {"extbl", one(0044700), one(0177770), "Ds"}, 397: {"extb.l", one(0044700), one(0177770), "Ds"}, /* Not sure we should support this one*/ 398: 399: {"illegal", one(0045374), one(0177777), ""}, 400: {"jmp", one(0047300), one(0177700), "!s"}, 401: {"jsr", one(0047200), one(0177700), "!s"}, 402: {"lea", one(0040700), one(0170700), "!sAd"}, 403: {"linkw", one(0047120), one(0177770), "As#w"}, 404: {"linkl", one(0044010), one(0177770), "As#l"}, 405: {"link", one(0047120), one(0177770), "As#w"}, 406: {"link", one(0044010), one(0177770), "As#l"}, 407: 408: {"lslb", one(0160410), one(0170770), "QdDs"}, /* lsrb #Q, Ds */ 409: {"lslb", one(0160450), one(0170770), "DdDs"}, /* lsrb Dd, Ds */ 410: {"lslw", one(0160510), one(0170770), "QdDs"}, /* lsrb #Q, Ds */ 411: {"lslw", one(0160550), one(0170770), "DdDs"}, /* lsrb Dd, Ds */ 412: {"lslw", one(0161700), one(0177700), "~s"}, /* Shift memory */ 413: {"lsll", one(0160610), one(0170770), "QdDs"}, /* lsrb #Q, Ds */ 414: {"lsll", one(0160650), one(0170770), "DdDs"}, /* lsrb Dd, Ds */ 415: 416: {"lsrb", one(0160010), one(0170770), "QdDs"} /* lsrb #Q, Ds */, 417: {"lsrb", one(0160050), one(0170770), "DdDs"}, /* lsrb Dd, Ds */ 418: {"lsrl", one(0160210), one(0170770), "QdDs"}, /* lsrb #Q, Ds */ 419: {"lsrl", one(0160250), one(0170770), "DdDs"}, /* lsrb #Q, Ds */ 420: {"lsrw", one(0160110), one(0170770), "QdDs"}, /* lsrb #Q, Ds */ 421: {"lsrw", one(0160150), one(0170770), "DdDs"}, /* lsrb #Q, Ds */ 422: {"lsrw", one(0161300), one(0177700), "~s"}, /* Shift memory */ 423: 424: {"moveal", one(0020100), one(0170700), "*lAd"}, 425: {"moveaw", one(0030100), one(0170700), "*wAd"}, 426: {"moveb", one(0010000), one(0170000), ";b$d"}, /* move */ 427: {"movel", one(0070000), one(0170400), "MsDd"}, /* moveq written as move */ 428: {"movel", one(0020000), one(0170000), "*l$d"}, 429: {"movel", one(0020100), one(0170700), "*lAd"}, 430: {"movel", one(0047140), one(0177770), "AsUd"}, /* move to USP */ 431: {"movel", one(0047150), one(0177770), "UdAs"}, /* move from USP */ 432: 433: {"movec", one(0047173), one(0177777), "R1Jj"}, 434: {"movec", one(0047173), one(0177777), "R1#j"}, 435: {"movec", one(0047172), one(0177777), "JjR1"}, 436: {"movec", one(0047172), one(0177777), "#jR1"}, 437: 438: /* JF added these next four for the assembler */ 439: {"moveml", one(0044300), one(0177700), "Lw&s"}, /* movem reg to mem. */ 440: {"moveml", one(0044340), one(0177770), "lw-s"}, /* movem reg to autodecrement. */ 441: {"moveml", one(0046300), one(0177700), "!sLw"}, /* movem mem to reg. */ 442: {"moveml", one(0046330), one(0177770), "+sLw"}, /* movem autoinc to reg. */ 443: 1.1.1.3 ! root 444: {"moveml", one(0044300), one(0177700), "#w&s"}, /* movem reg to mem. */ ! 445: {"moveml", one(0044340), one(0177770), "#w-s"}, /* movem reg to autodecrement. */ ! 446: {"moveml", one(0046300), one(0177700), "!s#w"}, /* movem mem to reg. */ ! 447: {"moveml", one(0046330), one(0177770), "+s#w"}, /* movem autoinc to reg. */ ! 448: 1.1 root 449: /* JF added these next four for the assembler */ 450: {"movemw", one(0044200), one(0177700), "Lw&s"}, /* movem reg to mem. */ 451: {"movemw", one(0044240), one(0177770), "lw-s"}, /* movem reg to autodecrement. */ 452: {"movemw", one(0046200), one(0177700), "!sLw"}, /* movem mem to reg. */ 453: {"movemw", one(0046230), one(0177770), "+sLw"}, /* movem autoinc to reg. */ 454: 1.1.1.3 ! root 455: {"movemw", one(0044200), one(0177700), "#w&s"}, /* movem reg to mem. */ ! 456: {"movemw", one(0044240), one(0177770), "#w-s"}, /* movem reg to autodecrement. */ ! 457: {"movemw", one(0046200), one(0177700), "!s#w"}, /* movem mem to reg. */ ! 458: {"movemw", one(0046230), one(0177770), "+s#w"}, /* movem autoinc to reg. */ ! 459: 1.1 root 460: {"movepl", one(0000510), one(0170770), "dsDd"}, /* memory to register */ 461: {"movepl", one(0000710), one(0170770), "Ddds"}, /* register to memory */ 462: {"movepw", one(0000410), one(0170770), "dsDd"}, /* memory to register */ 463: {"movepw", one(0000610), one(0170770), "Ddds"}, /* register to memory */ 464: {"moveq", one(0070000), one(0170400), "MsDd"}, 465: {"movew", one(0030000), one(0170000), "*w$d"}, 466: {"movew", one(0030100), one(0170700), "*wAd"}, /* movea, written as move */ 467: {"movew", one(0040300), one(0177700), "Ss$s"}, /* Move from sr */ 468: {"movew", one(0041300), one(0177700), "Cs$s"}, /* Move from ccr */ 469: {"movew", one(0042300), one(0177700), ";wCd"}, /* move to ccr */ 470: {"movew", one(0043300), one(0177700), ";wSd"}, /* move to sr */ 471: 472: {"movesb", two(0007000, 0), two(0177700, 07777), "~sR1"}, /* moves from memory */ 473: {"movesb", two(0007000, 04000), two(0177700, 07777), "R1~s"}, /* moves to memory */ 474: {"movesl", two(0007200, 0), two(0177700, 07777), "~sR1"}, /* moves from memory */ 475: {"movesl", two(0007200, 04000), two(0177700, 07777), "R1~s"}, /* moves to memory */ 476: {"movesw", two(0007100, 0), two(0177700, 07777), "~sR1"}, /* moves from memory */ 477: {"movesw", two(0007100, 04000), two(0177700, 07777), "R1~s"}, /* moves to memory */ 478: 479: {"mulsl", two(0046000, 004000), two(0177700, 0107770), ";lD1"}, 480: {"mulsl", two(0046000, 006000), two(0177700, 0107770), ";lD3D1"}, 481: {"mulsw", one(0140700), one(0170700), ";wDd"}, 482: {"muls", one(0140700), one(0170700), ";wDd"}, 483: {"mulul", two(0046000, 000000), two(0177700, 0107770), ";lD1"}, 484: {"mulul", two(0046000, 002000), two(0177700, 0107770), ";lD3D1"}, 485: {"muluw", one(0140300), one(0170700), ";wDd"}, 486: {"mulu", one(0140300), one(0170700), ";wDd"}, 487: {"nbcd", one(0044000), one(0177700), "$s"}, 488: {"negb", one(0042000), one(0177700), "$s"}, 489: {"negl", one(0042200), one(0177700), "$s"}, 490: {"negw", one(0042100), one(0177700), "$s"}, 491: {"negxb", one(0040000), one(0177700), "$s"}, 492: {"negxl", one(0040200), one(0177700), "$s"}, 493: {"negxw", one(0040100), one(0177700), "$s"}, 494: {"nop", one(0047161), one(0177777), ""}, 495: {"notb", one(0043000), one(0177700), "$s"}, 496: {"notl", one(0043200), one(0177700), "$s"}, 497: {"notw", one(0043100), one(0177700), "$s"}, 498: 499: {"orb", one(0000000), one(0177700), "#b$s"}, /* ori written as or */ 500: {"orb", one(0000074), one(0177777), "#bCs"}, /* ori to ccr */ 501: {"orb", one(0100000), one(0170700), ";bDd"}, /* memory to register */ 502: {"orb", one(0100400), one(0170700), "Dd~s"}, /* register to memory */ 503: {"orib", one(0000000), one(0177700), "#b$s"}, 504: {"orib", one(0000074), one(0177777), "#bCs"}, /* ori to ccr */ 505: {"oril", one(0000200), one(0177700), "#l$s"}, 506: {"oriw", one(0000100), one(0177700), "#w$s"}, 507: {"oriw", one(0000174), one(0177777), "#wSs"}, /* ori to sr */ 508: {"orl", one(0000200), one(0177700), "#l$s"}, 509: {"orl", one(0100200), one(0170700), ";lDd"}, /* memory to register */ 510: {"orl", one(0100600), one(0170700), "Dd~s"}, /* register to memory */ 511: {"orw", one(0000100), one(0177700), "#w$s"}, 512: {"orw", one(0000174), one(0177777), "#wSs"}, /* ori to sr */ 513: {"orw", one(0100100), one(0170700), ";wDd"}, /* memory to register */ 514: {"orw", one(0100500), one(0170700), "Dd~s"}, /* register to memory */ 515: 516: {"pack", one(0100500), one(0170770), "DsDd#w"}, /* pack Ds, Dd, #w */ 517: {"pack", one(0100510), one(0170770), "-s-d#w"}, /* pack -(As), -(Ad), #w */ 518: {"pea", one(0044100), one(0177700), "!s"}, 519: {"reset", one(0047160), one(0177777), ""}, 520: 521: {"rolb", one(0160430), one(0170770), "QdDs"}, /* rorb #Q, Ds */ 522: {"rolb", one(0160470), one(0170770), "DdDs"}, /* rorb Dd, Ds */ 523: {"roll", one(0160630), one(0170770), "QdDs"}, /* rorb #Q, Ds */ 524: {"roll", one(0160670), one(0170770), "DdDs"}, /* rorb Dd, Ds */ 525: {"rolw", one(0160530), one(0170770), "QdDs"}, /* rorb #Q, Ds */ 526: {"rolw", one(0160570), one(0170770), "DdDs"}, /* rorb Dd, Ds */ 527: {"rolw", one(0163700), one(0177700), "~s"}, /* Rotate memory */ 528: {"rorb", one(0160030), one(0170770), "QdDs"}, /* rorb #Q, Ds */ 529: {"rorb", one(0160070), one(0170770), "DdDs"}, /* rorb Dd, Ds */ 530: {"rorl", one(0160230), one(0170770), "QdDs"}, /* rorb #Q, Ds */ 531: {"rorl", one(0160270), one(0170770), "DdDs"}, /* rorb Dd, Ds */ 532: {"rorw", one(0160130), one(0170770), "QdDs"}, /* rorb #Q, Ds */ 533: {"rorw", one(0160170), one(0170770), "DdDs"}, /* rorb Dd, Ds */ 534: {"rorw", one(0163300), one(0177700), "~s"}, /* Rotate memory */ 535: 536: {"roxlb", one(0160420), one(0170770), "QdDs"}, /* roxrb #Q, Ds */ 537: {"roxlb", one(0160460), one(0170770), "DdDs"}, /* roxrb Dd, Ds */ 538: {"roxll", one(0160620), one(0170770), "QdDs"}, /* roxrb #Q, Ds */ 539: {"roxll", one(0160660), one(0170770), "DdDs"}, /* roxrb Dd, Ds */ 540: {"roxlw", one(0160520), one(0170770), "QdDs"}, /* roxrb #Q, Ds */ 541: {"roxlw", one(0160560), one(0170770), "DdDs"}, /* roxrb Dd, Ds */ 542: {"roxlw", one(0162700), one(0177700), "~s"}, /* Rotate memory */ 543: {"roxrb", one(0160020), one(0170770), "QdDs"}, /* roxrb #Q, Ds */ 544: {"roxrb", one(0160060), one(0170770), "DdDs"}, /* roxrb Dd, Ds */ 545: {"roxrl", one(0160220), one(0170770), "QdDs"}, /* roxrb #Q, Ds */ 546: {"roxrl", one(0160260), one(0170770), "DdDs"}, /* roxrb Dd, Ds */ 547: {"roxrw", one(0160120), one(0170770), "QdDs"}, /* roxrb #Q, Ds */ 548: {"roxrw", one(0160160), one(0170770), "DdDs"}, /* roxrb Dd, Ds */ 549: {"roxrw", one(0162300), one(0177700), "~s"}, /* Rotate memory */ 550: 551: {"rtd", one(0047164), one(0177777), "#w"}, 552: {"rte", one(0047163), one(0177777), ""}, 553: {"rtm", one(0003300), one(0177760), "Rs"}, 554: {"rtr", one(0047167), one(0177777), ""}, 555: {"rts", one(0047165), one(0177777), ""}, 556: 557: {"scc", one(0052300), one(0177700), "$s"}, 558: {"scs", one(0052700), one(0177700), "$s"}, 559: {"seq", one(0053700), one(0177700), "$s"}, 560: {"sf", one(0050700), one(0177700), "$s"}, 561: {"sge", one(0056300), one(0177700), "$s"}, 562: {"sgt", one(0057300), one(0177700), "$s"}, 563: {"shi", one(0051300), one(0177700), "$s"}, 564: {"sle", one(0057700), one(0177700), "$s"}, 565: {"sls", one(0051700), one(0177700), "$s"}, 566: {"slt", one(0056700), one(0177700), "$s"}, 567: {"smi", one(0055700), one(0177700), "$s"}, 568: {"sne", one(0053300), one(0177700), "$s"}, 569: {"spl", one(0055300), one(0177700), "$s"}, 570: {"st", one(0050300), one(0177700), "$s"}, 571: {"svc", one(0054300), one(0177700), "$s"}, 572: {"svs", one(0054700), one(0177700), "$s"}, 573: 574: {"sbcd", one(0100400), one(0170770), "DsDd"}, 575: {"sbcd", one(0100410), one(0170770), "-s-d"}, 576: {"stop", one(0047162), one(0177777), "#w"}, 577: 578: {"subal", one(0110700), one(0170700), "*lAd"}, 579: {"subaw", one(0110300), one(0170700), "*wAd"}, 580: {"subb", one(0050400), one(0170700), "Qd%s"}, /* subq written as sub */ 581: {"subb", one(0002000), one(0177700), "#b$s"}, /* subi written as sub */ 1.1.1.3 ! root 582: {"subb", one(0110000), one(0170700), ";bDd"}, /* subb ? ?, Dd */ ! 583: {"subb", one(0110400), one(0170700), "Dd~s"}, /* subb Dd, ? ? */ 1.1 root 584: {"subib", one(0002000), one(0177700), "#b$s"}, 585: {"subil", one(0002200), one(0177700), "#l$s"}, 586: {"subiw", one(0002100), one(0177700), "#w$s"}, 587: {"subl", one(0050600), one(0170700), "Qd%s"}, 588: {"subl", one(0002200), one(0177700), "#l$s"}, 589: {"subl", one(0110700), one(0170700), "*lAd"}, 590: {"subl", one(0110200), one(0170700), "*lDd"}, 591: {"subl", one(0110600), one(0170700), "Dd~s"}, 592: {"subqb", one(0050400), one(0170700), "Qd%s"}, 593: {"subql", one(0050600), one(0170700), "Qd%s"}, 594: {"subqw", one(0050500), one(0170700), "Qd%s"}, 595: {"subw", one(0050500), one(0170700), "Qd%s"}, 596: {"subw", one(0002100), one(0177700), "#w$s"}, 597: {"subw", one(0110100), one(0170700), "*wDd"}, 598: {"subw", one(0110300), one(0170700), "*wAd"}, /* suba written as sub */ 599: {"subw", one(0110500), one(0170700), "Dd~s"}, 600: {"subxb", one(0110400), one(0170770), "DsDd"}, /* subxb Ds, Dd */ 601: {"subxb", one(0110410), one(0170770), "-s-d"}, /* subxb -(As), -(Ad) */ 602: {"subxl", one(0110600), one(0170770), "DsDd"}, 603: {"subxl", one(0110610), one(0170770), "-s-d"}, 604: {"subxw", one(0110500), one(0170770), "DsDd"}, 605: {"subxw", one(0110510), one(0170770), "-s-d"}, 606: 607: {"swap", one(0044100), one(0177770), "Ds"}, 608: 609: {"tas", one(0045300), one(0177700), "$s"}, 610: {"trap", one(0047100), one(0177760), "Ts"}, 611: 612: {"trapcc", one(0052374), one(0177777), ""}, 613: {"trapcs", one(0052774), one(0177777), ""}, 614: {"trapeq", one(0053774), one(0177777), ""}, 615: {"trapf", one(0050774), one(0177777), ""}, 616: {"trapge", one(0056374), one(0177777), ""}, 617: {"trapgt", one(0057374), one(0177777), ""}, 618: {"traphi", one(0051374), one(0177777), ""}, 619: {"traple", one(0057774), one(0177777), ""}, 620: {"trapls", one(0051774), one(0177777), ""}, 621: {"traplt", one(0056774), one(0177777), ""}, 622: {"trapmi", one(0055774), one(0177777), ""}, 623: {"trapne", one(0053374), one(0177777), ""}, 624: {"trappl", one(0055374), one(0177777), ""}, 625: {"trapt", one(0050374), one(0177777), ""}, 626: {"trapvc", one(0054374), one(0177777), ""}, 627: {"trapvs", one(0054774), one(0177777), ""}, 628: 629: {"trapcc.w", one(0052372), one(0177777), ""}, 630: {"trapcs.w", one(0052772), one(0177777), ""}, 631: {"trapeq.w", one(0053772), one(0177777), ""}, 632: {"trapf.w", one(0050772), one(0177777), ""}, 633: {"trapge.w", one(0056372), one(0177777), ""}, 634: {"trapgt.w", one(0057372), one(0177777), ""}, 635: {"traphi.w", one(0051372), one(0177777), ""}, 636: {"traple.w", one(0057772), one(0177777), ""}, 637: {"trapls.w", one(0051772), one(0177777), ""}, 638: {"traplt.w", one(0056772), one(0177777), ""}, 639: {"trapmi.w", one(0055772), one(0177777), ""}, 640: {"trapne.w", one(0053372), one(0177777), ""}, 641: {"trappl.w", one(0055372), one(0177777), ""}, 642: {"trapt.w", one(0050372), one(0177777), ""}, 643: {"trapvc.w", one(0054372), one(0177777), ""}, 644: {"trapvs.w", one(0054772), one(0177777), ""}, 645: 646: {"trapcc.l", one(0052373), one(0177777), ""}, 647: {"trapcs.l", one(0052773), one(0177777), ""}, 648: {"trapeq.l", one(0053773), one(0177777), ""}, 649: {"trapf.l", one(0050773), one(0177777), ""}, 650: {"trapge.l", one(0056373), one(0177777), ""}, 651: {"trapgt.l", one(0057373), one(0177777), ""}, 652: {"traphi.l", one(0051373), one(0177777), ""}, 653: {"traple.l", one(0057773), one(0177777), ""}, 654: {"trapls.l", one(0051773), one(0177777), ""}, 655: {"traplt.l", one(0056773), one(0177777), ""}, 656: {"trapmi.l", one(0055773), one(0177777), ""}, 657: {"trapne.l", one(0053373), one(0177777), ""}, 658: {"trappl.l", one(0055373), one(0177777), ""}, 659: {"trapt.l", one(0050373), one(0177777), ""}, 660: {"trapvc.l", one(0054373), one(0177777), ""}, 661: {"trapvs.l", one(0054773), one(0177777), ""}, 662: 663: {"trapv", one(0047166), one(0177777), ""}, 664: 665: {"tstb", one(0045000), one(0177700), ";b"}, 666: {"tstw", one(0045100), one(0177700), "*w"}, 667: {"tstl", one(0045200), one(0177700), "*l"}, 668: 669: {"unlk", one(0047130), one(0177770), "As"}, 670: {"unpk", one(0100600), one(0170770), "DsDd#w"}, 671: {"unpk", one(0100610), one(0170770), "-s-d#w"}, 672: /* JF floating pt stuff moved down here */ 673: 674: {"fabsb", two(0xF000, 0x5818), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 675: {"fabsd", two(0xF000, 0x5418), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 676: {"fabsl", two(0xF000, 0x4018), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 677: {"fabsp", two(0xF000, 0x4C18), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 678: {"fabss", two(0xF000, 0x4418), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 679: {"fabsw", two(0xF000, 0x5018), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 680: {"fabsx", two(0xF000, 0x0018), two(0xF1C0, 0xE07F), "IiF8F7"}, 681: {"fabsx", two(0xF000, 0x4818), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 682: {"fabsx", two(0xF000, 0x0018), two(0xF1C0, 0xE07F), "IiFt"}, 683: 684: {"facosb", two(0xF000, 0x581C), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 685: {"facosd", two(0xF000, 0x541C), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 686: {"facosl", two(0xF000, 0x401C), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 687: {"facosp", two(0xF000, 0x4C1C), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 688: {"facoss", two(0xF000, 0x441C), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 689: {"facosw", two(0xF000, 0x501C), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 690: {"facosx", two(0xF000, 0x001C), two(0xF1C0, 0xE07F), "IiF8F7"}, 691: {"facosx", two(0xF000, 0x481C), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 692: {"facosx", two(0xF000, 0x001C), two(0xF1C0, 0xE07F), "IiFt"}, 693: 694: {"faddb", two(0xF000, 0x5822), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 695: {"faddd", two(0xF000, 0x5422), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 696: {"faddl", two(0xF000, 0x4022), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 697: {"faddp", two(0xF000, 0x4C22), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 698: {"fadds", two(0xF000, 0x4422), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 699: {"faddw", two(0xF000, 0x5022), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 700: {"faddx", two(0xF000, 0x0022), two(0xF1C0, 0xE07F), "IiF8F7"}, 701: {"faddx", two(0xF000, 0x4822), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 702: /* {"faddx", two(0xF000, 0x0022), two(0xF1C0, 0xE07F), "IiFt"}, JF removed */ 703: 704: {"fasinb", two(0xF000, 0x580C), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 705: {"fasind", two(0xF000, 0x540C), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 706: {"fasinl", two(0xF000, 0x400C), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 707: {"fasinp", two(0xF000, 0x4C0C), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 708: {"fasins", two(0xF000, 0x440C), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 709: {"fasinw", two(0xF000, 0x500C), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 710: {"fasinx", two(0xF000, 0x000C), two(0xF1C0, 0xE07F), "IiF8F7"}, 711: {"fasinx", two(0xF000, 0x480C), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 712: {"fasinx", two(0xF000, 0x000C), two(0xF1C0, 0xE07F), "IiFt"}, 713: 714: {"fatanb", two(0xF000, 0x580A), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 715: {"fatand", two(0xF000, 0x540A), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 716: {"fatanl", two(0xF000, 0x400A), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 717: {"fatanp", two(0xF000, 0x4C0A), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 718: {"fatans", two(0xF000, 0x440A), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 719: {"fatanw", two(0xF000, 0x500A), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 720: {"fatanx", two(0xF000, 0x000A), two(0xF1C0, 0xE07F), "IiF8F7"}, 721: {"fatanx", two(0xF000, 0x480A), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 722: {"fatanx", two(0xF000, 0x000A), two(0xF1C0, 0xE07F), "IiFt"}, 723: 724: {"fatanhb", two(0xF000, 0x580D), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 725: {"fatanhd", two(0xF000, 0x540D), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 726: {"fatanhl", two(0xF000, 0x400D), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 727: {"fatanhp", two(0xF000, 0x4C0D), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 728: {"fatanhs", two(0xF000, 0x440D), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 729: {"fatanhw", two(0xF000, 0x500D), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 730: {"fatanhx", two(0xF000, 0x000D), two(0xF1C0, 0xE07F), "IiF8F7"}, 731: {"fatanhx", two(0xF000, 0x480D), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 732: {"fatanhx", two(0xF000, 0x000D), two(0xF1C0, 0xE07F), "IiFt"}, 733: 1.1.1.3 ! root 734: {"fbeq", one(0xF081), one(0xF1BF), "IdBc"}, ! 735: {"fbf", one(0xF080), one(0xF1BF), "IdBc"}, ! 736: {"fbge", one(0xF093), one(0xF1BF), "IdBc"}, ! 737: {"fbgl", one(0xF096), one(0xF1BF), "IdBc"}, ! 738: {"fbgle", one(0xF097), one(0xF1BF), "IdBc"}, ! 739: {"fbgt", one(0xF092), one(0xF1BF), "IdBc"}, ! 740: {"fble", one(0xF095), one(0xF1BF), "IdBc"}, ! 741: {"fblt", one(0xF094), one(0xF1BF), "IdBc"}, ! 742: {"fbne", one(0xF08E), one(0xF1BF), "IdBc"}, ! 743: {"fbnge", one(0xF09C), one(0xF1BF), "IdBc"}, ! 744: {"fbngl", one(0xF099), one(0xF1BF), "IdBc"}, ! 745: {"fbngle", one(0xF098), one(0xF1BF), "IdBc"}, ! 746: {"fbngt", one(0xF09D), one(0xF1BF), "IdBc"}, ! 747: {"fbnle", one(0xF09A), one(0xF1BF), "IdBc"}, ! 748: {"fbnlt", one(0xF09B), one(0xF1BF), "IdBc"}, ! 749: {"fboge", one(0xF083), one(0xF1BF), "IdBc"}, ! 750: {"fbogl", one(0xF086), one(0xF1BF), "IdBc"}, ! 751: {"fbogt", one(0xF082), one(0xF1BF), "IdBc"}, ! 752: {"fbole", one(0xF085), one(0xF1BF), "IdBc"}, ! 753: {"fbolt", one(0xF084), one(0xF1BF), "IdBc"}, ! 754: {"fbor", one(0xF087), one(0xF1BF), "IdBc"}, ! 755: {"fbseq", one(0xF091), one(0xF1BF), "IdBc"}, ! 756: {"fbsf", one(0xF090), one(0xF1BF), "IdBc"}, ! 757: {"fbsne", one(0xF09E), one(0xF1BF), "IdBc"}, ! 758: {"fbst", one(0xF09F), one(0xF1BF), "IdBc"}, ! 759: {"fbt", one(0xF08F), one(0xF1BF), "IdBc"}, ! 760: {"fbueq", one(0xF089), one(0xF1BF), "IdBc"}, ! 761: {"fbuge", one(0xF08B), one(0xF1BF), "IdBc"}, ! 762: {"fbugt", one(0xF08A), one(0xF1BF), "IdBc"}, ! 763: {"fbule", one(0xF08D), one(0xF1BF), "IdBc"}, ! 764: {"fbult", one(0xF08C), one(0xF1BF), "IdBc"}, ! 765: {"fbun", one(0xF088), one(0xF1BF), "IdBc"}, 1.1 root 766: 767: {"fcmpb", two(0xF000, 0x5838), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 768: {"fcmpd", two(0xF000, 0x5438), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 769: {"fcmpl", two(0xF000, 0x4038), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 770: {"fcmpp", two(0xF000, 0x4C38), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 771: {"fcmps", two(0xF000, 0x4438), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 772: {"fcmpw", two(0xF000, 0x5038), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 773: {"fcmpx", two(0xF000, 0x0038), two(0xF1C0, 0xE07F), "IiF8F7"}, 774: {"fcmpx", two(0xF000, 0x4838), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 775: /* {"fcmpx", two(0xF000, 0x0038), two(0xF1C0, 0xE07F), "IiFt"}, JF removed */ 776: 777: {"fcosb", two(0xF000, 0x581D), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 778: {"fcosd", two(0xF000, 0x541D), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 779: {"fcosl", two(0xF000, 0x401D), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 780: {"fcosp", two(0xF000, 0x4C1D), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 781: {"fcoss", two(0xF000, 0x441D), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 782: {"fcosw", two(0xF000, 0x501D), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 783: {"fcosx", two(0xF000, 0x001D), two(0xF1C0, 0xE07F), "IiF8F7"}, 784: {"fcosx", two(0xF000, 0x481D), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 785: {"fcosx", two(0xF000, 0x001D), two(0xF1C0, 0xE07F), "IiFt"}, 786: 787: {"fcoshb", two(0xF000, 0x5819), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 788: {"fcoshd", two(0xF000, 0x5419), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 789: {"fcoshl", two(0xF000, 0x4019), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 790: {"fcoshp", two(0xF000, 0x4C19), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 791: {"fcoshs", two(0xF000, 0x4419), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 792: {"fcoshw", two(0xF000, 0x5019), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 793: {"fcoshx", two(0xF000, 0x0019), two(0xF1C0, 0xE07F), "IiF8F7"}, 794: {"fcoshx", two(0xF000, 0x4819), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 795: {"fcoshx", two(0xF000, 0x0019), two(0xF1C0, 0xE07F), "IiFt"}, 796: 797: {"fdbeq", two(0xF048, 0x0001), two(0xF1F8, 0xFFFF), "IiDsBw"}, 798: {"fdbf", two(0xF048, 0x0000), two(0xF1F8, 0xFFFF), "IiDsBw"}, 799: {"fdbge", two(0xF048, 0x0013), two(0xF1F8, 0xFFFF), "IiDsBw"}, 800: {"fdbgl", two(0xF048, 0x0016), two(0xF1F8, 0xFFFF), "IiDsBw"}, 801: {"fdbgle", two(0xF048, 0x0017), two(0xF1F8, 0xFFFF), "IiDsBw"}, 802: {"fdbgt", two(0xF048, 0x0012), two(0xF1F8, 0xFFFF), "IiDsBw"}, 803: {"fdble", two(0xF048, 0x0015), two(0xF1F8, 0xFFFF), "IiDsBw"}, 804: {"fdblt", two(0xF048, 0x0014), two(0xF1F8, 0xFFFF), "IiDsBw"}, 805: {"fdbne", two(0xF048, 0x000E), two(0xF1F8, 0xFFFF), "IiDsBw"}, 806: {"fdbnge", two(0xF048, 0x001C), two(0xF1F8, 0xFFFF), "IiDsBw"}, 807: {"fdbngl", two(0xF048, 0x0019), two(0xF1F8, 0xFFFF), "IiDsBw"}, 808: {"fdbngle", two(0xF048, 0x0018), two(0xF1F8, 0xFFFF), "IiDsBw"}, 809: {"fdbngt", two(0xF048, 0x001D), two(0xF1F8, 0xFFFF), "IiDsBw"}, 810: {"fdbnle", two(0xF048, 0x001A), two(0xF1F8, 0xFFFF), "IiDsBw"}, 811: {"fdbnlt", two(0xF048, 0x001B), two(0xF1F8, 0xFFFF), "IiDsBw"}, 812: {"fdboge", two(0xF048, 0x0003), two(0xF1F8, 0xFFFF), "IiDsBw"}, 813: {"fdbogl", two(0xF048, 0x0006), two(0xF1F8, 0xFFFF), "IiDsBw"}, 814: {"fdbogt", two(0xF048, 0x0002), two(0xF1F8, 0xFFFF), "IiDsBw"}, 815: {"fdbole", two(0xF048, 0x0005), two(0xF1F8, 0xFFFF), "IiDsBw"}, 816: {"fdbolt", two(0xF048, 0x0004), two(0xF1F8, 0xFFFF), "IiDsBw"}, 817: {"fdbor", two(0xF048, 0x0007), two(0xF1F8, 0xFFFF), "IiDsBw"}, 818: {"fdbseq", two(0xF048, 0x0011), two(0xF1F8, 0xFFFF), "IiDsBw"}, 819: {"fdbsf", two(0xF048, 0x0010), two(0xF1F8, 0xFFFF), "IiDsBw"}, 820: {"fdbsne", two(0xF048, 0x001E), two(0xF1F8, 0xFFFF), "IiDsBw"}, 821: {"fdbst", two(0xF048, 0x001F), two(0xF1F8, 0xFFFF), "IiDsBw"}, 822: {"fdbt", two(0xF048, 0x000F), two(0xF1F8, 0xFFFF), "IiDsBw"}, 823: {"fdbueq", two(0xF048, 0x0009), two(0xF1F8, 0xFFFF), "IiDsBw"}, 824: {"fdbuge", two(0xF048, 0x000B), two(0xF1F8, 0xFFFF), "IiDsBw"}, 825: {"fdbugt", two(0xF048, 0x000A), two(0xF1F8, 0xFFFF), "IiDsBw"}, 826: {"fdbule", two(0xF048, 0x000D), two(0xF1F8, 0xFFFF), "IiDsBw"}, 827: {"fdbult", two(0xF048, 0x000C), two(0xF1F8, 0xFFFF), "IiDsBw"}, 828: {"fdbun", two(0xF048, 0x0008), two(0xF1F8, 0xFFFF), "IiDsBw"}, 829: 830: {"fdivb", two(0xF000, 0x5820), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 831: {"fdivd", two(0xF000, 0x5420), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 832: {"fdivl", two(0xF000, 0x4020), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 833: {"fdivp", two(0xF000, 0x4C20), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 834: {"fdivs", two(0xF000, 0x4420), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 835: {"fdivw", two(0xF000, 0x5020), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 836: {"fdivx", two(0xF000, 0x0020), two(0xF1C0, 0xE07F), "IiF8F7"}, 837: {"fdivx", two(0xF000, 0x4820), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 838: /* {"fdivx", two(0xF000, 0x0020), two(0xF1C0, 0xE07F), "IiFt"}, JF */ 839: 840: {"fetoxb", two(0xF000, 0x5810), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 841: {"fetoxd", two(0xF000, 0x5410), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 842: {"fetoxl", two(0xF000, 0x4010), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 843: {"fetoxp", two(0xF000, 0x4C10), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 844: {"fetoxs", two(0xF000, 0x4410), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 845: {"fetoxw", two(0xF000, 0x5010), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 846: {"fetoxx", two(0xF000, 0x0010), two(0xF1C0, 0xE07F), "IiF8F7"}, 847: {"fetoxx", two(0xF000, 0x4810), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 848: {"fetoxx", two(0xF000, 0x0010), two(0xF1C0, 0xE07F), "IiFt"}, 849: 850: {"fetoxm1b", two(0xF000, 0x5808), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 851: {"fetoxm1d", two(0xF000, 0x5408), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 852: {"fetoxm1l", two(0xF000, 0x4008), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 853: {"fetoxm1p", two(0xF000, 0x4C08), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 854: {"fetoxm1s", two(0xF000, 0x4408), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 855: {"fetoxm1w", two(0xF000, 0x5008), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 856: {"fetoxm1x", two(0xF000, 0x0008), two(0xF1C0, 0xE07F), "IiF8F7"}, 857: {"fetoxm1x", two(0xF000, 0x4808), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 858: {"fetoxm1x", two(0xF000, 0x0008), two(0xF1C0, 0xE07F), "IiFt"}, 859: 860: {"fgetexpb", two(0xF000, 0x581E), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 861: {"fgetexpd", two(0xF000, 0x541E), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 862: {"fgetexpl", two(0xF000, 0x401E), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 863: {"fgetexpp", two(0xF000, 0x4C1E), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 864: {"fgetexps", two(0xF000, 0x441E), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 865: {"fgetexpw", two(0xF000, 0x501E), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 866: {"fgetexpx", two(0xF000, 0x001E), two(0xF1C0, 0xE07F), "IiF8F7"}, 867: {"fgetexpx", two(0xF000, 0x481E), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 868: {"fgetexpx", two(0xF000, 0x001E), two(0xF1C0, 0xE07F), "IiFt"}, 869: 870: {"fgetmanb", two(0xF000, 0x581F), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 871: {"fgetmand", two(0xF000, 0x541F), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 872: {"fgetmanl", two(0xF000, 0x401F), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 873: {"fgetmanp", two(0xF000, 0x4C1F), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 874: {"fgetmans", two(0xF000, 0x441F), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 875: {"fgetmanw", two(0xF000, 0x501F), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 876: {"fgetmanx", two(0xF000, 0x001F), two(0xF1C0, 0xE07F), "IiF8F7"}, 877: {"fgetmanx", two(0xF000, 0x481F), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 878: {"fgetmanx", two(0xF000, 0x001F), two(0xF1C0, 0xE07F), "IiFt"}, 879: 880: {"fintb", two(0xF000, 0x5801), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 881: {"fintd", two(0xF000, 0x5401), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 882: {"fintl", two(0xF000, 0x4001), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 883: {"fintp", two(0xF000, 0x4C01), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 884: {"fints", two(0xF000, 0x4401), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 885: {"fintw", two(0xF000, 0x5001), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 886: {"fintx", two(0xF000, 0x0001), two(0xF1C0, 0xE07F), "IiF8F7"}, 887: {"fintx", two(0xF000, 0x4801), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 888: {"fintx", two(0xF000, 0x0001), two(0xF1C0, 0xE07F), "IiFt"}, 889: 890: {"fintrzb", two(0xF000, 0x5803), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 891: {"fintrzd", two(0xF000, 0x5403), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 892: {"fintrzl", two(0xF000, 0x4003), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 893: {"fintrzp", two(0xF000, 0x4C03), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 894: {"fintrzs", two(0xF000, 0x4403), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 895: {"fintrzw", two(0xF000, 0x5003), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 896: {"fintrzx", two(0xF000, 0x0003), two(0xF1C0, 0xE07F), "IiF8F7"}, 897: {"fintrzx", two(0xF000, 0x4803), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 898: {"fintrzx", two(0xF000, 0x0003), two(0xF1C0, 0xE07F), "IiFt"}, 899: 900: {"flog10b", two(0xF000, 0x5815), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 901: {"flog10d", two(0xF000, 0x5415), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 902: {"flog10l", two(0xF000, 0x4015), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 903: {"flog10p", two(0xF000, 0x4C15), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 904: {"flog10s", two(0xF000, 0x4415), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 905: {"flog10w", two(0xF000, 0x5015), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 906: {"flog10x", two(0xF000, 0x0015), two(0xF1C0, 0xE07F), "IiF8F7"}, 907: {"flog10x", two(0xF000, 0x4815), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 908: {"flog10x", two(0xF000, 0x0015), two(0xF1C0, 0xE07F), "IiFt"}, 909: 910: {"flog2b", two(0xF000, 0x5816), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 911: {"flog2d", two(0xF000, 0x5416), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 912: {"flog2l", two(0xF000, 0x4016), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 913: {"flog2p", two(0xF000, 0x4C16), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 914: {"flog2s", two(0xF000, 0x4416), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 915: {"flog2w", two(0xF000, 0x5016), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 916: {"flog2x", two(0xF000, 0x0016), two(0xF1C0, 0xE07F), "IiF8F7"}, 917: {"flog2x", two(0xF000, 0x4816), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 918: {"flog2x", two(0xF000, 0x0016), two(0xF1C0, 0xE07F), "IiFt"}, 919: 920: {"flognb", two(0xF000, 0x5814), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 921: {"flognd", two(0xF000, 0x5414), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 922: {"flognl", two(0xF000, 0x4014), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 923: {"flognp", two(0xF000, 0x4C14), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 924: {"flogns", two(0xF000, 0x4414), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 925: {"flognw", two(0xF000, 0x5014), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 926: {"flognx", two(0xF000, 0x0014), two(0xF1C0, 0xE07F), "IiF8F7"}, 927: {"flognx", two(0xF000, 0x4814), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 928: {"flognx", two(0xF000, 0x0014), two(0xF1C0, 0xE07F), "IiFt"}, 929: 930: {"flognp1b", two(0xF000, 0x5806), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 931: {"flognp1d", two(0xF000, 0x5406), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 932: {"flognp1l", two(0xF000, 0x4006), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 933: {"flognp1p", two(0xF000, 0x4C06), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 934: {"flognp1s", two(0xF000, 0x4406), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 935: {"flognp1w", two(0xF000, 0x5006), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 936: {"flognp1x", two(0xF000, 0x0006), two(0xF1C0, 0xE07F), "IiF8F7"}, 937: {"flognp1x", two(0xF000, 0x4806), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 938: {"flognp1x", two(0xF000, 0x0006), two(0xF1C0, 0xE07F), "IiFt"}, 939: 940: {"fmodb", two(0xF000, 0x5821), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 941: {"fmodd", two(0xF000, 0x5421), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 942: {"fmodl", two(0xF000, 0x4021), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 943: {"fmodp", two(0xF000, 0x4C21), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 944: {"fmods", two(0xF000, 0x4421), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 945: {"fmodw", two(0xF000, 0x5021), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 946: {"fmodx", two(0xF000, 0x0021), two(0xF1C0, 0xE07F), "IiF8F7"}, 947: {"fmodx", two(0xF000, 0x4821), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 948: /* {"fmodx", two(0xF000, 0x0021), two(0xF1C0, 0xE07F), "IiFt"}, JF */ 949: 950: {"fmoveb", two(0xF000, 0x5800), two(0xF1C0, 0xFC7F), "Ii;bF7"}, /* fmove from <ea> to fp<n> */ 951: {"fmoveb", two(0xF000, 0x7800), two(0xF1C0, 0xFC7F), "IiF7@b"}, /* fmove from fp<n> to <ea> */ 952: {"fmoved", two(0xF000, 0x5400), two(0xF1C0, 0xFC7F), "Ii;FF7"}, /* fmove from <ea> to fp<n> */ 953: {"fmoved", two(0xF000, 0x7400), two(0xF1C0, 0xFC7F), "IiF7@F"}, /* fmove from fp<n> to <ea> */ 954: {"fmovel", two(0xF000, 0x4000), two(0xF1C0, 0xFC7F), "Ii;lF7"}, /* fmove from <ea> to fp<n> */ 955: {"fmovel", two(0xF000, 0x6000), two(0xF1C0, 0xFC7F), "IiF7@l"}, /* fmove from fp<n> to <ea> */ 956: /* Warning: The addressing modes on these are probably not right: 957: esp, Areg direct is only allowed for FPI */ 958: /* fmove.l from/to system control registers: */ 959: {"fmovel", two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "Iis8@s"}, 1.1.1.2 root 960: {"fmovel", two(0xF000, 0x8000), two(0xF1C0, 0xE3FF), "Ii*ls8"}, 1.1 root 961: 1.1.1.2 root 962: /* {"fmovel", two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "Iis8@s"}, 963: {"fmovel", two(0xF000, 0x8000), two(0xF2C0, 0xE3FF), "Ii*ss8"}, */ 1.1 root 964: 965: {"fmovep", two(0xF000, 0x4C00), two(0xF1C0, 0xFC7F), "Ii;pF7"}, /* fmove from <ea> to fp<n> */ 966: {"fmovep", two(0xF000, 0x6C00), two(0xF1C0, 0xFC00), "IiF7@pkC"}, /* fmove.p with k-factors: */ 967: {"fmovep", two(0xF000, 0x7C00), two(0xF1C0, 0xFC0F), "IiF7@pDk"}, /* fmove.p with k-factors: */ 968: 969: {"fmoves", two(0xF000, 0x4400), two(0xF1C0, 0xFC7F), "Ii;fF7"}, /* fmove from <ea> to fp<n> */ 970: {"fmoves", two(0xF000, 0x6400), two(0xF1C0, 0xFC7F), "IiF7@f"}, /* fmove from fp<n> to <ea> */ 971: {"fmovew", two(0xF000, 0x5000), two(0xF1C0, 0xFC7F), "Ii;wF7"}, /* fmove from <ea> to fp<n> */ 972: {"fmovew", two(0xF000, 0x7000), two(0xF1C0, 0xFC7F), "IiF7@w"}, /* fmove from fp<n> to <ea> */ 973: {"fmovex", two(0xF000, 0x0000), two(0xF1C0, 0xE07F), "IiF8F7"}, /* fmove from <ea> to fp<n> */ 974: {"fmovex", two(0xF000, 0x4800), two(0xF1C0, 0xFC7F), "Ii;xF7"}, /* fmove from <ea> to fp<n> */ 975: {"fmovex", two(0xF000, 0x6800), two(0xF1C0, 0xFC7F), "IiF7@x"}, /* fmove from fp<n> to <ea> */ 1.1.1.3 ! root 976: /* JF removed {"fmovex", two(0xF000, 0x0000), two(0xF1C0, 0xE07F), "IiFt"}, / * fmove from <ea> to fp<n> */ 1.1 root 977: 978: {"fmovecrx", two(0xF000, 0x5C00), two(0xF1FF, 0xFC00), "Ii#CF7"}, /* fmovecr.x #ccc, FPn */ 979: {"fmovecr", two(0xF000, 0x5C00), two(0xF1FF, 0xFC00), "Ii#CF7"}, 980: 1.1.1.3 ! root 981: {"fmovemx", two(0xF020, 0xE000), two(0xF1F8, 0xFF00), "IdL3-s"}, /* fmovem.x to autodecrement, static and dynamic */ 1.1 root 982: {"fmovemx", two(0xF020, 0xE000), two(0xF1F8, 0xFF00), "Id#3-s"}, /* fmovem.x to autodecrement, static and dynamic */ 1.1.1.3 ! root 983: 1.1 root 984: {"fmovemx", two(0xF020, 0xE800), two(0xF1F8, 0xFF8F), "IiDk-s"}, /* fmovem.x to autodecrement, static and dynamic */ 985: 986: {"fmovemx", two(0xF000, 0xF000), two(0xF1C0, 0xFF00), "Id#3&s"}, /* fmovem.x to control, static and dynamic: */ 987: {"fmovemx", two(0xF000, 0xF800), two(0xF1C0, 0xFF8F), "IiDk&s"}, /* fmovem.x to control, static and dynamic: */ 988: {"fmovemx", two(0xF000, 0xD000), two(0xF1C0, 0xFF00), "Id&s#3"}, /* fmovem.x from control, static and dynamic: */ 989: {"fmovemx", two(0xF000, 0xD800), two(0xF1C0, 0xFF8F), "Ii&sDk"}, /* fmovem.x from control, static and dynamic: */ 1.1.1.3 ! root 990: {"fmovemx", two(0xF000, 0xF000), two(0xF1C0, 0xFF00), "Idl3&s"}, /* fmovem.x to control, static and dynamic: */ ! 991: {"fmovemx", two(0xF000, 0xD000), two(0xF1C0, 0xFF00), "Id&sl3"}, /* fmovem.x from control, static and dynamic: */ 1.1 root 992: 993: {"fmovemx", two(0xF018, 0xD000), two(0xF1F8, 0xFF00), "Id+sl3"}, /* fmovem.x from autoincrement, static and dynamic: */ 1.1.1.3 ! root 994: {"fmovemx", two(0xF018, 0xD000), two(0xF1F8, 0xFF00), "Id+s#3"}, /* fmovem.x from autoincrement, static and dynamic: */ ! 995: {"fmovemx", two(0xF018, 0xD800), two(0xF1F8, 0xFF8F), "Ii+sDk"}, /* fmovem.x from autoincrement, static and dynamic: */ 1.1 root 996: 1.1.1.3 ! root 997: {"fmoveml", two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "IiL8@s"}, 1.1 root 998: {"fmoveml", two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "Ii#8@s"}, 999: {"fmoveml", two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "Iis8@s"}, 1000: 1001: {"fmoveml", two(0xF000, 0x8000), two(0xF2C0, 0xE3FF), "Ii*sL8"}, 1.1.1.3 ! root 1002: {"fmoveml", two(0xF000, 0x8000), two(0xF1C0, 0xE3FF), "Ii*s#8"}, ! 1003: {"fmoveml", two(0xF000, 0x8000), two(0xF1C0, 0xE3FF), "Ii*ss8"}, 1.1 root 1004: 1.1.1.3 ! root 1005: /* Alternate mnemonics for GNU as and GNU CC */ 1.1 root 1006: {"fmovem", two(0xF020, 0xE000), two(0xF1F8, 0xFF00), "Id#3-s"}, /* fmovem.x to autodecrement, static and dynamic */ 1007: {"fmovem", two(0xF020, 0xE800), two(0xF1F8, 0xFF8F), "IiDk-s"}, /* fmovem.x to autodecrement, static and dynamic */ 1008: 1009: {"fmovem", two(0xF000, 0xF000), two(0xF1C0, 0xFF00), "Id#3&s"}, /* fmovem.x to control, static and dynamic: */ 1010: {"fmovem", two(0xF000, 0xF800), two(0xF1C0, 0xFF8F), "IiDk&s"}, /* fmovem.x to control, static and dynamic: */ 1011: 1012: {"fmovem", two(0xF018, 0xD000), two(0xF1F8, 0xFF00), "Id+s#3"}, /* fmovem.x from autoincrement, static and dynamic: */ 1013: {"fmovem", two(0xF018, 0xD800), two(0xF1F8, 0xFF8F), "Ii+sDk"}, /* fmovem.x from autoincrement, static and dynamic: */ 1014: 1015: {"fmovem", two(0xF000, 0xD000), two(0xF1C0, 0xFF00), "Id&s#3"}, /* fmovem.x from control, static and dynamic: */ 1016: {"fmovem", two(0xF000, 0xD800), two(0xF1C0, 0xFF8F), "Ii&sDk"}, /* fmovem.x from control, static and dynamic: */ 1017: 1018: /* fmovemx with register lists */ 1019: {"fmovem", two(0xF020, 0xE000), two(0xF1F8, 0xFF00), "IdL3-s"}, /* fmovem.x to autodecrement, static and dynamic */ 1.1.1.3 ! root 1020: {"fmovem", two(0xF000, 0xF000), two(0xF1C0, 0xFF00), "Idl3&s"}, /* fmovem.x to control, static and dynamic: */ 1.1 root 1021: {"fmovem", two(0xF018, 0xD000), two(0xF1F8, 0xFF00), "Id+sl3"}, /* fmovem.x from autoincrement, static and dynamic: */ 1022: {"fmovem", two(0xF000, 0xD000), two(0xF1C0, 0xFF00), "Id&sl3"}, /* fmovem.x from control, static and dynamic: */ 1023: 1024: /* fmoveml a FP-control register */ 1025: {"fmovem", two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "Iis8@s"}, 1026: {"fmovem", two(0xF000, 0x8000), two(0xF1C0, 0xE3FF), "Ii*ss8"}, 1027: 1028: /* fmoveml a FP-control reglist */ 1029: {"fmovem", two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "IiL8@s"}, 1030: {"fmovem", two(0xF000, 0x8000), two(0xF2C0, 0xE3FF), "Ii*sL8"}, 1031: 1032: {"fmulb", two(0xF000, 0x5823), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 1033: {"fmuld", two(0xF000, 0x5423), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 1034: {"fmull", two(0xF000, 0x4023), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 1035: {"fmulp", two(0xF000, 0x4C23), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 1036: {"fmuls", two(0xF000, 0x4423), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 1037: {"fmulw", two(0xF000, 0x5023), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 1038: {"fmulx", two(0xF000, 0x0023), two(0xF1C0, 0xE07F), "IiF8F7"}, 1039: {"fmulx", two(0xF000, 0x4823), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 1040: /* {"fmulx", two(0xF000, 0x0023), two(0xF1C0, 0xE07F), "IiFt"}, JF */ 1041: 1042: {"fnegb", two(0xF000, 0x581A), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 1043: {"fnegd", two(0xF000, 0x541A), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 1044: {"fnegl", two(0xF000, 0x401A), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 1045: {"fnegp", two(0xF000, 0x4C1A), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 1046: {"fnegs", two(0xF000, 0x441A), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 1047: {"fnegw", two(0xF000, 0x501A), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 1048: {"fnegx", two(0xF000, 0x001A), two(0xF1C0, 0xE07F), "IiF8F7"}, 1049: {"fnegx", two(0xF000, 0x481A), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 1050: {"fnegx", two(0xF000, 0x001A), two(0xF1C0, 0xE07F), "IiFt"}, 1051: 1.1.1.3 ! root 1052: {"fnop", two(0xF280, 0x0000), two(0xFFFF, 0xFFFF), "Ii"}, ! 1053: 1.1 root 1054: {"fremb", two(0xF000, 0x5825), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 1055: {"fremd", two(0xF000, 0x5425), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 1056: {"freml", two(0xF000, 0x4025), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 1057: {"fremp", two(0xF000, 0x4C25), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 1058: {"frems", two(0xF000, 0x4425), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 1059: {"fremw", two(0xF000, 0x5025), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 1060: {"fremx", two(0xF000, 0x0025), two(0xF1C0, 0xE07F), "IiF8F7"}, 1061: {"fremx", two(0xF000, 0x4825), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 1062: /* {"fremx", two(0xF000, 0x0025), two(0xF1C0, 0xE07F), "IiFt"}, JF */ 1063: 1064: {"frestore", one(0xF140), one(0xF1C0), "Id&s"}, 1065: {"frestore", one(0xF158), one(0xF1F8), "Id+s"}, 1066: {"fsave", one(0xF100), one(0xF1C0), "Id&s"}, 1067: {"fsave", one(0xF120), one(0xF1F8), "Id-s"}, 1068: 1069: {"fsincosb", two(0xF000, 0x5830), two(0xF1C0, 0xFC78), "Ii;bF7FC"}, 1070: {"fsincosd", two(0xF000, 0x5430), two(0xF1C0, 0xFC78), "Ii;FF7FC"}, 1071: {"fsincosl", two(0xF000, 0x4030), two(0xF1C0, 0xFC78), "Ii;lF7FC"}, 1072: {"fsincosp", two(0xF000, 0x4C30), two(0xF1C0, 0xFC78), "Ii;pF7FC"}, 1073: {"fsincoss", two(0xF000, 0x4430), two(0xF1C0, 0xFC78), "Ii;fF7FC"}, 1074: {"fsincosw", two(0xF000, 0x5030), two(0xF1C0, 0xFC78), "Ii;wF7FC"}, 1075: {"fsincosx", two(0xF000, 0x0030), two(0xF1C0, 0xE078), "IiF8F7FC"}, 1076: {"fsincosx", two(0xF000, 0x4830), two(0xF1C0, 0xFC78), "Ii;xF7FC"}, 1077: 1078: {"fscaleb", two(0xF000, 0x5826), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 1079: {"fscaled", two(0xF000, 0x5426), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 1080: {"fscalel", two(0xF000, 0x4026), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 1081: {"fscalep", two(0xF000, 0x4C26), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 1082: {"fscales", two(0xF000, 0x4426), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 1083: {"fscalew", two(0xF000, 0x5026), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 1084: {"fscalex", two(0xF000, 0x0026), two(0xF1C0, 0xE07F), "IiF8F7"}, 1085: {"fscalex", two(0xF000, 0x4826), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 1086: /* {"fscalex", two(0xF000, 0x0026), two(0xF1C0, 0xE07F), "IiFt"}, JF */ 1087: 1088: {"fseq", two(0xF040, 0x0001), two(0xF1C0, 0xFFFF), "Ii@s"}, 1089: {"fsf", two(0xF040, 0x0000), two(0xF1C0, 0xFFFF), "Ii@s"}, 1090: {"fsge", two(0xF040, 0x0013), two(0xF1C0, 0xFFFF), "Ii@s"}, 1091: {"fsgl", two(0xF040, 0x0016), two(0xF1C0, 0xFFFF), "Ii@s"}, 1092: {"fsgle", two(0xF040, 0x0017), two(0xF1C0, 0xFFFF), "Ii@s"}, 1093: {"fsgt", two(0xF040, 0x0012), two(0xF1C0, 0xFFFF), "Ii@s"}, 1094: {"fsle", two(0xF040, 0x0015), two(0xF1C0, 0xFFFF), "Ii@s"}, 1095: {"fslt", two(0xF040, 0x0014), two(0xF1C0, 0xFFFF), "Ii@s"}, 1096: {"fsne", two(0xF040, 0x000E), two(0xF1C0, 0xFFFF), "Ii@s"}, 1097: {"fsnge", two(0xF040, 0x001C), two(0xF1C0, 0xFFFF), "Ii@s"}, 1098: {"fsngl", two(0xF040, 0x0019), two(0xF1C0, 0xFFFF), "Ii@s"}, 1099: {"fsngle", two(0xF040, 0x0018), two(0xF1C0, 0xFFFF), "Ii@s"}, 1100: {"fsngt", two(0xF040, 0x001D), two(0xF1C0, 0xFFFF), "Ii@s"}, 1101: {"fsnle", two(0xF040, 0x001A), two(0xF1C0, 0xFFFF), "Ii@s"}, 1102: {"fsnlt", two(0xF040, 0x001B), two(0xF1C0, 0xFFFF), "Ii@s"}, 1103: {"fsoge", two(0xF040, 0x0003), two(0xF1C0, 0xFFFF), "Ii@s"}, 1104: {"fsogl", two(0xF040, 0x0006), two(0xF1C0, 0xFFFF), "Ii@s"}, 1105: {"fsogt", two(0xF040, 0x0002), two(0xF1C0, 0xFFFF), "Ii@s"}, 1106: {"fsole", two(0xF040, 0x0005), two(0xF1C0, 0xFFFF), "Ii@s"}, 1107: {"fsolt", two(0xF040, 0x0004), two(0xF1C0, 0xFFFF), "Ii@s"}, 1108: {"fsor", two(0xF040, 0x0007), two(0xF1C0, 0xFFFF), "Ii@s"}, 1109: {"fsseq", two(0xF040, 0x0011), two(0xF1C0, 0xFFFF), "Ii@s"}, 1110: {"fssf", two(0xF040, 0x0010), two(0xF1C0, 0xFFFF), "Ii@s"}, 1111: {"fssne", two(0xF040, 0x001E), two(0xF1C0, 0xFFFF), "Ii@s"}, 1112: {"fsst", two(0xF040, 0x001F), two(0xF1C0, 0xFFFF), "Ii@s"}, 1113: {"fst", two(0xF040, 0x000F), two(0xF1C0, 0xFFFF), "Ii@s"}, 1114: {"fsueq", two(0xF040, 0x0009), two(0xF1C0, 0xFFFF), "Ii@s"}, 1115: {"fsuge", two(0xF040, 0x000B), two(0xF1C0, 0xFFFF), "Ii@s"}, 1116: {"fsugt", two(0xF040, 0x000A), two(0xF1C0, 0xFFFF), "Ii@s"}, 1117: {"fsule", two(0xF040, 0x000D), two(0xF1C0, 0xFFFF), "Ii@s"}, 1118: {"fsult", two(0xF040, 0x000C), two(0xF1C0, 0xFFFF), "Ii@s"}, 1119: {"fsun", two(0xF040, 0x0008), two(0xF1C0, 0xFFFF), "Ii@s"}, 1120: 1121: {"fsgldivb", two(0xF000, 0x5824), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 1122: {"fsgldivd", two(0xF000, 0x5424), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 1123: {"fsgldivl", two(0xF000, 0x4024), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 1124: {"fsgldivp", two(0xF000, 0x4C24), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 1125: {"fsgldivs", two(0xF000, 0x4424), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 1126: {"fsgldivw", two(0xF000, 0x5024), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 1127: {"fsgldivx", two(0xF000, 0x0024), two(0xF1C0, 0xE07F), "IiF8F7"}, 1128: {"fsgldivx", two(0xF000, 0x4824), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 1129: {"fsgldivx", two(0xF000, 0x0024), two(0xF1C0, 0xE07F), "IiFt"}, 1130: 1131: {"fsglmulb", two(0xF000, 0x5827), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 1132: {"fsglmuld", two(0xF000, 0x5427), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 1133: {"fsglmull", two(0xF000, 0x4027), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 1134: {"fsglmulp", two(0xF000, 0x4C27), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 1135: {"fsglmuls", two(0xF000, 0x4427), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 1136: {"fsglmulw", two(0xF000, 0x5027), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 1137: {"fsglmulx", two(0xF000, 0x0027), two(0xF1C0, 0xE07F), "IiF8F7"}, 1138: {"fsglmulx", two(0xF000, 0x4827), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 1139: {"fsglmulx", two(0xF000, 0x0027), two(0xF1C0, 0xE07F), "IiFt"}, 1140: 1141: {"fsinb", two(0xF000, 0x580E), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 1142: {"fsind", two(0xF000, 0x540E), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 1143: {"fsinl", two(0xF000, 0x400E), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 1144: {"fsinp", two(0xF000, 0x4C0E), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 1145: {"fsins", two(0xF000, 0x440E), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 1146: {"fsinw", two(0xF000, 0x500E), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 1147: {"fsinx", two(0xF000, 0x000E), two(0xF1C0, 0xE07F), "IiF8F7"}, 1148: {"fsinx", two(0xF000, 0x480E), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 1149: {"fsinx", two(0xF000, 0x000E), two(0xF1C0, 0xE07F), "IiFt"}, 1150: 1151: {"fsinhb", two(0xF000, 0x5802), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 1152: {"fsinhd", two(0xF000, 0x5402), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 1153: {"fsinhl", two(0xF000, 0x4002), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 1154: {"fsinhp", two(0xF000, 0x4C02), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 1155: {"fsinhs", two(0xF000, 0x4402), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 1156: {"fsinhw", two(0xF000, 0x5002), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 1157: {"fsinhx", two(0xF000, 0x0002), two(0xF1C0, 0xE07F), "IiF8F7"}, 1158: {"fsinhx", two(0xF000, 0x4802), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 1159: {"fsinhx", two(0xF000, 0x0002), two(0xF1C0, 0xE07F), "IiFt"}, 1160: 1161: {"fsqrtb", two(0xF000, 0x5804), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 1162: {"fsqrtd", two(0xF000, 0x5404), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 1163: {"fsqrtl", two(0xF000, 0x4004), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 1164: {"fsqrtp", two(0xF000, 0x4C04), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 1165: {"fsqrts", two(0xF000, 0x4404), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 1166: {"fsqrtw", two(0xF000, 0x5004), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 1167: {"fsqrtx", two(0xF000, 0x0004), two(0xF1C0, 0xE07F), "IiF8F7"}, 1168: {"fsqrtx", two(0xF000, 0x4804), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 1169: {"fsqrtx", two(0xF000, 0x0004), two(0xF1C0, 0xE07F), "IiFt"}, 1170: 1171: {"fsubb", two(0xF000, 0x5828), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 1172: {"fsubd", two(0xF000, 0x5428), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 1173: {"fsubl", two(0xF000, 0x4028), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 1174: {"fsubp", two(0xF000, 0x4C28), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 1175: {"fsubs", two(0xF000, 0x4428), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 1176: {"fsubw", two(0xF000, 0x5028), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 1177: {"fsubx", two(0xF000, 0x0028), two(0xF1C0, 0xE07F), "IiF8F7"}, 1178: {"fsubx", two(0xF000, 0x4828), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 1179: {"fsubx", two(0xF000, 0x0028), two(0xF1C0, 0xE07F), "IiFt"}, 1180: 1181: {"ftanb", two(0xF000, 0x580F), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 1182: {"ftand", two(0xF000, 0x540F), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 1183: {"ftanl", two(0xF000, 0x400F), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 1184: {"ftanp", two(0xF000, 0x4C0F), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 1185: {"ftans", two(0xF000, 0x440F), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 1186: {"ftanw", two(0xF000, 0x500F), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 1187: {"ftanx", two(0xF000, 0x000F), two(0xF1C0, 0xE07F), "IiF8F7"}, 1188: {"ftanx", two(0xF000, 0x480F), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 1189: {"ftanx", two(0xF000, 0x000F), two(0xF1C0, 0xE07F), "IiFt"}, 1190: 1191: {"ftanhb", two(0xF000, 0x5809), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 1192: {"ftanhd", two(0xF000, 0x5409), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 1193: {"ftanhl", two(0xF000, 0x4009), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 1194: {"ftanhp", two(0xF000, 0x4C09), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 1195: {"ftanhs", two(0xF000, 0x4409), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 1196: {"ftanhw", two(0xF000, 0x5009), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 1197: {"ftanhx", two(0xF000, 0x0009), two(0xF1C0, 0xE07F), "IiF8F7"}, 1198: {"ftanhx", two(0xF000, 0x4809), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 1199: {"ftanhx", two(0xF000, 0x0009), two(0xF1C0, 0xE07F), "IiFt"}, 1200: 1201: {"ftentoxb", two(0xF000, 0x5812), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 1202: {"ftentoxd", two(0xF000, 0x5412), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 1203: {"ftentoxl", two(0xF000, 0x4012), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 1204: {"ftentoxp", two(0xF000, 0x4C12), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 1205: {"ftentoxs", two(0xF000, 0x4412), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 1206: {"ftentoxw", two(0xF000, 0x5012), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 1207: {"ftentoxx", two(0xF000, 0x0012), two(0xF1C0, 0xE07F), "IiF8F7"}, 1208: {"ftentoxx", two(0xF000, 0x4812), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 1209: {"ftentoxx", two(0xF000, 0x0012), two(0xF1C0, 0xE07F), "IiFt"}, 1210: 1211: {"ftrapeq", two(0xF07C, 0x0001), two(0xF1FF, 0xFFFF), "Ii"}, 1212: {"ftrapf", two(0xF07C, 0x0000), two(0xF1FF, 0xFFFF), "Ii"}, 1213: {"ftrapge", two(0xF07C, 0x0013), two(0xF1FF, 0xFFFF), "Ii"}, 1214: {"ftrapgl", two(0xF07C, 0x0016), two(0xF1FF, 0xFFFF), "Ii"}, 1215: {"ftrapgle", two(0xF07C, 0x0017), two(0xF1FF, 0xFFFF), "Ii"}, 1216: {"ftrapgt", two(0xF07C, 0x0012), two(0xF1FF, 0xFFFF), "Ii"}, 1217: {"ftraple", two(0xF07C, 0x0015), two(0xF1FF, 0xFFFF), "Ii"}, 1218: {"ftraplt", two(0xF07C, 0x0014), two(0xF1FF, 0xFFFF), "Ii"}, 1219: {"ftrapne", two(0xF07C, 0x000E), two(0xF1FF, 0xFFFF), "Ii"}, 1220: {"ftrapnge", two(0xF07C, 0x001C), two(0xF1FF, 0xFFFF), "Ii"}, 1221: {"ftrapngl", two(0xF07C, 0x0019), two(0xF1FF, 0xFFFF), "Ii"}, 1222: {"ftrapngle", two(0xF07C, 0x0018), two(0xF1FF, 0xFFFF), "Ii"}, 1223: {"ftrapngt", two(0xF07C, 0x001D), two(0xF1FF, 0xFFFF), "Ii"}, 1224: {"ftrapnle", two(0xF07C, 0x001A), two(0xF1FF, 0xFFFF), "Ii"}, 1225: {"ftrapnlt", two(0xF07C, 0x001B), two(0xF1FF, 0xFFFF), "Ii"}, 1226: {"ftrapoge", two(0xF07C, 0x0003), two(0xF1FF, 0xFFFF), "Ii"}, 1227: {"ftrapogl", two(0xF07C, 0x0006), two(0xF1FF, 0xFFFF), "Ii"}, 1228: {"ftrapogt", two(0xF07C, 0x0002), two(0xF1FF, 0xFFFF), "Ii"}, 1229: {"ftrapole", two(0xF07C, 0x0005), two(0xF1FF, 0xFFFF), "Ii"}, 1230: {"ftrapolt", two(0xF07C, 0x0004), two(0xF1FF, 0xFFFF), "Ii"}, 1231: {"ftrapor", two(0xF07C, 0x0007), two(0xF1FF, 0xFFFF), "Ii"}, 1232: {"ftrapseq", two(0xF07C, 0x0011), two(0xF1FF, 0xFFFF), "Ii"}, 1233: {"ftrapsf", two(0xF07C, 0x0010), two(0xF1FF, 0xFFFF), "Ii"}, 1234: {"ftrapsne", two(0xF07C, 0x001E), two(0xF1FF, 0xFFFF), "Ii"}, 1235: {"ftrapst", two(0xF07C, 0x001F), two(0xF1FF, 0xFFFF), "Ii"}, 1236: {"ftrapt", two(0xF07C, 0x000F), two(0xF1FF, 0xFFFF), "Ii"}, 1237: {"ftrapueq", two(0xF07C, 0x0009), two(0xF1FF, 0xFFFF), "Ii"}, 1238: {"ftrapuge", two(0xF07C, 0x000B), two(0xF1FF, 0xFFFF), "Ii"}, 1239: {"ftrapugt", two(0xF07C, 0x000A), two(0xF1FF, 0xFFFF), "Ii"}, 1240: {"ftrapule", two(0xF07C, 0x000D), two(0xF1FF, 0xFFFF), "Ii"}, 1241: {"ftrapult", two(0xF07C, 0x000C), two(0xF1FF, 0xFFFF), "Ii"}, 1242: {"ftrapun", two(0xF07C, 0x0008), two(0xF1FF, 0xFFFF), "Ii"}, 1243: 1244: {"ftrapeqw", two(0xF07A, 0x0001), two(0xF1FF, 0xFFFF), "Ii^w"}, 1245: {"ftrapfw", two(0xF07A, 0x0000), two(0xF1FF, 0xFFFF), "Ii^w"}, 1246: {"ftrapgew", two(0xF07A, 0x0013), two(0xF1FF, 0xFFFF), "Ii^w"}, 1247: {"ftrapglw", two(0xF07A, 0x0016), two(0xF1FF, 0xFFFF), "Ii^w"}, 1248: {"ftrapglew", two(0xF07A, 0x0017), two(0xF1FF, 0xFFFF), "Ii^w"}, 1249: {"ftrapgtw", two(0xF07A, 0x0012), two(0xF1FF, 0xFFFF), "Ii^w"}, 1250: {"ftraplew", two(0xF07A, 0x0015), two(0xF1FF, 0xFFFF), "Ii^w"}, 1251: {"ftrapltw", two(0xF07A, 0x0014), two(0xF1FF, 0xFFFF), "Ii^w"}, 1252: {"ftrapnew", two(0xF07A, 0x000E), two(0xF1FF, 0xFFFF), "Ii^w"}, 1253: {"ftrapngew", two(0xF07A, 0x001C), two(0xF1FF, 0xFFFF), "Ii^w"}, 1254: {"ftrapnglw", two(0xF07A, 0x0019), two(0xF1FF, 0xFFFF), "Ii^w"}, 1255: {"ftrapnglew", two(0xF07A, 0x0018), two(0xF1FF, 0xFFFF), "Ii^w"}, 1256: {"ftrapngtw", two(0xF07A, 0x001D), two(0xF1FF, 0xFFFF), "Ii^w"}, 1257: {"ftrapnlew", two(0xF07A, 0x001A), two(0xF1FF, 0xFFFF), "Ii^w"}, 1258: {"ftrapnltw", two(0xF07A, 0x001B), two(0xF1FF, 0xFFFF), "Ii^w"}, 1259: {"ftrapogew", two(0xF07A, 0x0003), two(0xF1FF, 0xFFFF), "Ii^w"}, 1260: {"ftrapoglw", two(0xF07A, 0x0006), two(0xF1FF, 0xFFFF), "Ii^w"}, 1261: {"ftrapogtw", two(0xF07A, 0x0002), two(0xF1FF, 0xFFFF), "Ii^w"}, 1262: {"ftrapolew", two(0xF07A, 0x0005), two(0xF1FF, 0xFFFF), "Ii^w"}, 1263: {"ftrapoltw", two(0xF07A, 0x0004), two(0xF1FF, 0xFFFF), "Ii^w"}, 1264: {"ftraporw", two(0xF07A, 0x0007), two(0xF1FF, 0xFFFF), "Ii^w"}, 1265: {"ftrapseqw", two(0xF07A, 0x0011), two(0xF1FF, 0xFFFF), "Ii^w"}, 1266: {"ftrapsfw", two(0xF07A, 0x0010), two(0xF1FF, 0xFFFF), "Ii^w"}, 1267: {"ftrapsnew", two(0xF07A, 0x001E), two(0xF1FF, 0xFFFF), "Ii^w"}, 1268: {"ftrapstw", two(0xF07A, 0x001F), two(0xF1FF, 0xFFFF), "Ii^w"}, 1269: {"ftraptw", two(0xF07A, 0x000F), two(0xF1FF, 0xFFFF), "Ii^w"}, 1270: {"ftrapueqw", two(0xF07A, 0x0009), two(0xF1FF, 0xFFFF), "Ii^w"}, 1271: {"ftrapugew", two(0xF07A, 0x000B), two(0xF1FF, 0xFFFF), "Ii^w"}, 1272: {"ftrapugtw", two(0xF07A, 0x000A), two(0xF1FF, 0xFFFF), "Ii^w"}, 1273: {"ftrapulew", two(0xF07A, 0x000D), two(0xF1FF, 0xFFFF), "Ii^w"}, 1274: {"ftrapultw", two(0xF07A, 0x000C), two(0xF1FF, 0xFFFF), "Ii^w"}, 1275: {"ftrapunw", two(0xF07A, 0x0008), two(0xF1FF, 0xFFFF), "Ii^w"}, 1276: 1277: {"ftrapeql", two(0xF07B, 0x0001), two(0xF1FF, 0xFFFF), "Ii^l"}, 1278: {"ftrapfl", two(0xF07B, 0x0000), two(0xF1FF, 0xFFFF), "Ii^l"}, 1279: {"ftrapgel", two(0xF07B, 0x0013), two(0xF1FF, 0xFFFF), "Ii^l"}, 1280: {"ftrapgll", two(0xF07B, 0x0016), two(0xF1FF, 0xFFFF), "Ii^l"}, 1281: {"ftrapglel", two(0xF07B, 0x0017), two(0xF1FF, 0xFFFF), "Ii^l"}, 1282: {"ftrapgtl", two(0xF07B, 0x0012), two(0xF1FF, 0xFFFF), "Ii^l"}, 1283: {"ftraplel", two(0xF07B, 0x0015), two(0xF1FF, 0xFFFF), "Ii^l"}, 1284: {"ftrapltl", two(0xF07B, 0x0014), two(0xF1FF, 0xFFFF), "Ii^l"}, 1285: {"ftrapnel", two(0xF07B, 0x000E), two(0xF1FF, 0xFFFF), "Ii^l"}, 1286: {"ftrapngel", two(0xF07B, 0x001C), two(0xF1FF, 0xFFFF), "Ii^l"}, 1287: {"ftrapngll", two(0xF07B, 0x0019), two(0xF1FF, 0xFFFF), "Ii^l"}, 1288: {"ftrapnglel", two(0xF07B, 0x0018), two(0xF1FF, 0xFFFF), "Ii^l"}, 1289: {"ftrapngtl", two(0xF07B, 0x001D), two(0xF1FF, 0xFFFF), "Ii^l"}, 1290: {"ftrapnlel", two(0xF07B, 0x001A), two(0xF1FF, 0xFFFF), "Ii^l"}, 1291: {"ftrapnltl", two(0xF07B, 0x001B), two(0xF1FF, 0xFFFF), "Ii^l"}, 1292: {"ftrapogel", two(0xF07B, 0x0003), two(0xF1FF, 0xFFFF), "Ii^l"}, 1293: {"ftrapogll", two(0xF07B, 0x0006), two(0xF1FF, 0xFFFF), "Ii^l"}, 1294: {"ftrapogtl", two(0xF07B, 0x0002), two(0xF1FF, 0xFFFF), "Ii^l"}, 1295: {"ftrapolel", two(0xF07B, 0x0005), two(0xF1FF, 0xFFFF), "Ii^l"}, 1296: {"ftrapoltl", two(0xF07B, 0x0004), two(0xF1FF, 0xFFFF), "Ii^l"}, 1297: {"ftraporl", two(0xF07B, 0x0007), two(0xF1FF, 0xFFFF), "Ii^l"}, 1298: {"ftrapseql", two(0xF07B, 0x0011), two(0xF1FF, 0xFFFF), "Ii^l"}, 1299: {"ftrapsfl", two(0xF07B, 0x0010), two(0xF1FF, 0xFFFF), "Ii^l"}, 1300: {"ftrapsnel", two(0xF07B, 0x001E), two(0xF1FF, 0xFFFF), "Ii^l"}, 1301: {"ftrapstl", two(0xF07B, 0x001F), two(0xF1FF, 0xFFFF), "Ii^l"}, 1302: {"ftraptl", two(0xF07B, 0x000F), two(0xF1FF, 0xFFFF), "Ii^l"}, 1303: {"ftrapueql", two(0xF07B, 0x0009), two(0xF1FF, 0xFFFF), "Ii^l"}, 1304: {"ftrapugel", two(0xF07B, 0x000B), two(0xF1FF, 0xFFFF), "Ii^l"}, 1305: {"ftrapugtl", two(0xF07B, 0x000A), two(0xF1FF, 0xFFFF), "Ii^l"}, 1306: {"ftrapulel", two(0xF07B, 0x000D), two(0xF1FF, 0xFFFF), "Ii^l"}, 1307: {"ftrapultl", two(0xF07B, 0x000C), two(0xF1FF, 0xFFFF), "Ii^l"}, 1308: {"ftrapunl", two(0xF07B, 0x0008), two(0xF1FF, 0xFFFF), "Ii^l"}, 1309: 1310: {"ftstb", two(0xF000, 0x583A), two(0xF1C0, 0xFC7F), "Ii;b"}, 1311: {"ftstd", two(0xF000, 0x543A), two(0xF1C0, 0xFC7F), "Ii;F"}, 1312: {"ftstl", two(0xF000, 0x403A), two(0xF1C0, 0xFC7F), "Ii;l"}, 1313: {"ftstp", two(0xF000, 0x4C3A), two(0xF1C0, 0xFC7F), "Ii;p"}, 1314: {"ftsts", two(0xF000, 0x443A), two(0xF1C0, 0xFC7F), "Ii;f"}, 1315: {"ftstw", two(0xF000, 0x503A), two(0xF1C0, 0xFC7F), "Ii;w"}, 1316: {"ftstx", two(0xF000, 0x003A), two(0xF1C0, 0xE07F), "IiF8"}, 1317: {"ftstx", two(0xF000, 0x483A), two(0xF1C0, 0xFC7F), "Ii;x"}, 1318: 1319: {"ftwotoxb", two(0xF000, 0x5811), two(0xF1C0, 0xFC7F), "Ii;bF7"}, 1320: {"ftwotoxd", two(0xF000, 0x5411), two(0xF1C0, 0xFC7F), "Ii;FF7"}, 1321: {"ftwotoxl", two(0xF000, 0x4011), two(0xF1C0, 0xFC7F), "Ii;lF7"}, 1322: {"ftwotoxp", two(0xF000, 0x4C11), two(0xF1C0, 0xFC7F), "Ii;pF7"}, 1323: {"ftwotoxs", two(0xF000, 0x4411), two(0xF1C0, 0xFC7F), "Ii;fF7"}, 1324: {"ftwotoxw", two(0xF000, 0x5011), two(0xF1C0, 0xFC7F), "Ii;wF7"}, 1325: {"ftwotoxx", two(0xF000, 0x0011), two(0xF1C0, 0xE07F), "IiF8F7"}, 1326: {"ftwotoxx", two(0xF000, 0x4811), two(0xF1C0, 0xFC7F), "Ii;xF7"}, 1327: {"ftwotoxx", two(0xF000, 0x0011), two(0xF1C0, 0xE07F), "IiFt"}, 1328: 1329: 1330: {"fjeq", one(0xF081), one(0xF1FF), "IdBc"}, 1331: {"fjf", one(0xF080), one(0xF1FF), "IdBc"}, 1332: {"fjge", one(0xF093), one(0xF1FF), "IdBc"}, 1333: {"fjgl", one(0xF096), one(0xF1FF), "IdBc"}, 1334: {"fjgle", one(0xF097), one(0xF1FF), "IdBc"}, 1335: {"fjgt", one(0xF092), one(0xF1FF), "IdBc"}, 1336: {"fjle", one(0xF095), one(0xF1FF), "IdBc"}, 1337: {"fjlt", one(0xF094), one(0xF1FF), "IdBc"}, 1338: {"fjne", one(0xF08E), one(0xF1FF), "IdBc"}, 1339: {"fjnge", one(0xF09C), one(0xF1FF), "IdBc"}, 1340: {"fjngl", one(0xF099), one(0xF1FF), "IdBc"}, 1341: {"fjngle", one(0xF098), one(0xF1FF), "IdBc"}, 1342: {"fjngt", one(0xF09D), one(0xF1FF), "IdBc"}, 1343: {"fjnle", one(0xF09A), one(0xF1FF), "IdBc"}, 1344: {"fjnlt", one(0xF09B), one(0xF1FF), "IdBc"}, 1345: {"fjoge", one(0xF083), one(0xF1FF), "IdBc"}, 1346: {"fjogl", one(0xF086), one(0xF1FF), "IdBc"}, 1347: {"fjogt", one(0xF082), one(0xF1FF), "IdBc"}, 1348: {"fjole", one(0xF085), one(0xF1FF), "IdBc"}, 1349: {"fjolt", one(0xF084), one(0xF1FF), "IdBc"}, 1350: {"fjor", one(0xF087), one(0xF1FF), "IdBc"}, 1351: {"fjseq", one(0xF091), one(0xF1FF), "IdBc"}, 1352: {"fjsf", one(0xF090), one(0xF1FF), "IdBc"}, 1353: {"fjsne", one(0xF09E), one(0xF1FF), "IdBc"}, 1354: {"fjst", one(0xF09F), one(0xF1FF), "IdBc"}, 1355: {"fjt", one(0xF08F), one(0xF1FF), "IdBc"}, 1356: {"fjueq", one(0xF089), one(0xF1FF), "IdBc"}, 1357: {"fjuge", one(0xF08B), one(0xF1FF), "IdBc"}, 1358: {"fjugt", one(0xF08A), one(0xF1FF), "IdBc"}, 1359: {"fjule", one(0xF08D), one(0xF1FF), "IdBc"}, 1360: {"fjult", one(0xF08C), one(0xF1FF), "IdBc"}, 1361: {"fjun", one(0xF088), one(0xF1FF), "IdBc"}, 1362: 1363: /* The assembler will ignore attempts to force a short offset */ 1364: 1365: {"bhis", one(0061000), one(0177400), "Bg"}, 1366: {"blss", one(0061400), one(0177400), "Bg"}, 1367: {"bccs", one(0062000), one(0177400), "Bg"}, 1368: {"bcss", one(0062400), one(0177400), "Bg"}, 1369: {"bnes", one(0063000), one(0177400), "Bg"}, 1370: {"beqs", one(0063400), one(0177400), "Bg"}, 1371: {"bvcs", one(0064000), one(0177400), "Bg"}, 1372: {"bvss", one(0064400), one(0177400), "Bg"}, 1373: {"bpls", one(0065000), one(0177400), "Bg"}, 1374: {"bmis", one(0065400), one(0177400), "Bg"}, 1375: {"bges", one(0066000), one(0177400), "Bg"}, 1376: {"blts", one(0066400), one(0177400), "Bg"}, 1377: {"bgts", one(0067000), one(0177400), "Bg"}, 1378: {"bles", one(0067400), one(0177400), "Bg"}, 1379: 1380: /* Alternate mnemonics for SUN */ 1381: 1382: {"jbsr", one(0060400), one(0177400), "Bg"}, 1383: {"jbsr", one(0047200), one(0177700), "!s"}, 1384: {"jra", one(0060000), one(0177400), "Bg"}, 1385: {"jra", one(0047300), one(0177700), "!s"}, 1386: 1387: {"jhi", one(0061000), one(0177400), "Bg"}, 1388: {"jls", one(0061400), one(0177400), "Bg"}, 1389: {"jcc", one(0062000), one(0177400), "Bg"}, 1390: {"jcs", one(0062400), one(0177400), "Bg"}, 1391: {"jne", one(0063000), one(0177400), "Bg"}, 1392: {"jeq", one(0063400), one(0177400), "Bg"}, 1393: {"jvc", one(0064000), one(0177400), "Bg"}, 1394: {"jvs", one(0064400), one(0177400), "Bg"}, 1395: {"jpl", one(0065000), one(0177400), "Bg"}, 1396: {"jmi", one(0065400), one(0177400), "Bg"}, 1397: {"jge", one(0066000), one(0177400), "Bg"}, 1398: {"jlt", one(0066400), one(0177400), "Bg"}, 1399: {"jgt", one(0067000), one(0177400), "Bg"}, 1400: {"jle", one(0067400), one(0177400), "Bg"}, 1401: 1402: /* Short offsets are ignored */ 1403: 1404: {"jbsrs", one(0060400), one(0177400), "Bg"}, 1405: {"jras", one(0060000), one(0177400), "Bg"}, 1406: {"jhis", one(0061000), one(0177400), "Bg"}, 1407: {"jlss", one(0061400), one(0177400), "Bg"}, 1408: {"jccs", one(0062000), one(0177400), "Bg"}, 1409: {"jcss", one(0062400), one(0177400), "Bg"}, 1410: {"jnes", one(0063000), one(0177400), "Bg"}, 1411: {"jeqs", one(0063400), one(0177400), "Bg"}, 1412: {"jvcs", one(0064000), one(0177400), "Bg"}, 1413: {"jvss", one(0064400), one(0177400), "Bg"}, 1414: {"jpls", one(0065000), one(0177400), "Bg"}, 1415: {"jmis", one(0065400), one(0177400), "Bg"}, 1416: {"jges", one(0066000), one(0177400), "Bg"}, 1417: {"jlts", one(0066400), one(0177400), "Bg"}, 1418: {"jgts", one(0067000), one(0177400), "Bg"}, 1419: {"jles", one(0067400), one(0177400), "Bg"}, 1420: 1421: {"movql", one(0070000), one(0170400), "MsDd"}, 1422: {"moveql", one(0070000), one(0170400), "MsDd"}, 1423: {"moval", one(0020100), one(0170700), "*lAd"}, 1424: {"movaw", one(0030100), one(0170700), "*wAd"}, 1425: {"movb", one(0010000), one(0170000), ";b$d"}, /* mov */ 1426: {"movl", one(0070000), one(0170400), "MsDd"}, /* movq written as mov */ 1427: {"movl", one(0020000), one(0170000), "*l$d"}, 1428: {"movl", one(0020100), one(0170700), "*lAd"}, 1429: {"movl", one(0047140), one(0177770), "AsUd"}, /* mov to USP */ 1430: {"movl", one(0047150), one(0177770), "UdAs"}, /* mov from USP */ 1431: {"movc", one(0047173), one(0177777), "R1Jj"}, 1432: {"movc", one(0047173), one(0177777), "R1#j"}, 1433: {"movc", one(0047172), one(0177777), "JjR1"}, 1434: {"movc", one(0047172), one(0177777), "#jR1"}, 1435: {"movml", one(0044300), one(0177700), "#w&s"}, /* movm reg to mem. */ 1436: {"movml", one(0044340), one(0177770), "#w-s"}, /* movm reg to autodecrement. */ 1437: {"movml", one(0046300), one(0177700), "!s#w"}, /* movm mem to reg. */ 1438: {"movml", one(0046330), one(0177770), "+s#w"}, /* movm autoinc to reg. */ 1439: {"movml", one(0044300), one(0177700), "Lw&s"}, /* movm reg to mem. */ 1440: {"movml", one(0044340), one(0177770), "lw-s"}, /* movm reg to autodecrement. */ 1441: {"movml", one(0046300), one(0177700), "!sLw"}, /* movm mem to reg. */ 1442: {"movml", one(0046330), one(0177770), "+sLw"}, /* movm autoinc to reg. */ 1443: {"movmw", one(0044200), one(0177700), "#w&s"}, /* movm reg to mem. */ 1444: {"movmw", one(0044240), one(0177770), "#w-s"}, /* movm reg to autodecrement. */ 1445: {"movmw", one(0046200), one(0177700), "!s#w"}, /* movm mem to reg. */ 1446: {"movmw", one(0046230), one(0177770), "+s#w"}, /* movm autoinc to reg. */ 1447: {"movmw", one(0044200), one(0177700), "Lw&s"}, /* movm reg to mem. */ 1448: {"movmw", one(0044240), one(0177770), "lw-s"}, /* movm reg to autodecrement. */ 1449: {"movmw", one(0046200), one(0177700), "!sLw"}, /* movm mem to reg. */ 1450: {"movmw", one(0046230), one(0177770), "+sLw"}, /* movm autoinc to reg. */ 1451: {"movpl", one(0000510), one(0170770), "dsDd"}, /* memory to register */ 1452: {"movpl", one(0000710), one(0170770), "Ddds"}, /* register to memory */ 1453: {"movpw", one(0000410), one(0170770), "dsDd"}, /* memory to register */ 1454: {"movpw", one(0000610), one(0170770), "Ddds"}, /* register to memory */ 1455: {"movq", one(0070000), one(0170400), "MsDd"}, 1456: {"movw", one(0030000), one(0170000), "*w$d"}, 1457: {"movw", one(0030100), one(0170700), "*wAd"}, /* mova, written as mov */ 1458: {"movw", one(0040300), one(0177700), "Ss$s"}, /* Move from sr */ 1459: {"movw", one(0041300), one(0177700), "Cs$s"}, /* Move from ccr */ 1460: {"movw", one(0042300), one(0177700), ";wCd"}, /* mov to ccr */ 1461: {"movw", one(0043300), one(0177700), ";wSd"}, /* mov to sr */ 1462: 1463: {"movsb", two(0007000, 0), two(0177700, 07777), "~sR1"}, 1464: {"movsb", two(0007000, 04000), two(0177700, 07777), "R1~s"}, 1465: {"movsl", two(0007200, 0), two(0177700, 07777), "~sR1"}, 1466: {"movsl", two(0007200, 04000), two(0177700, 07777), "R1~s"}, 1467: {"movsw", two(0007100, 0), two(0177700, 07777), "~sR1"}, 1468: {"movsw", two(0007100, 04000), two(0177700, 07777), "R1~s"}, 1469: 1470: #ifdef m68851 1.1.1.3 ! root 1471: /* name */ /* opcode */ /* match */ /* args */ ! 1472: ! 1473: {"pbac", one(0xf0c7), one(0xffbf), "Bc"}, ! 1474: {"pbacw", one(0xf087), one(0xffbf), "Bc"}, ! 1475: {"pbas", one(0xf0c6), one(0xffbf), "Bc"}, ! 1476: {"pbasw", one(0xf086), one(0xffbf), "Bc"}, ! 1477: {"pbbc", one(0xf0c1), one(0xffbf), "Bc"}, ! 1478: {"pbbcw", one(0xf081), one(0xffbf), "Bc"}, ! 1479: {"pbbs", one(0xf0c0), one(0xffbf), "Bc"}, ! 1480: {"pbbsw", one(0xf080), one(0xffbf), "Bc"}, ! 1481: {"pbcc", one(0xf0cf), one(0xffbf), "Bc"}, ! 1482: {"pbccw", one(0xf08f), one(0xffbf), "Bc"}, ! 1483: {"pbcs", one(0xf0ce), one(0xffbf), "Bc"}, ! 1484: {"pbcsw", one(0xf08e), one(0xffbf), "Bc"}, ! 1485: {"pbgc", one(0xf0cd), one(0xffbf), "Bc"}, ! 1486: {"pbgcw", one(0xf08d), one(0xffbf), "Bc"}, ! 1487: {"pbgs", one(0xf0cc), one(0xffbf), "Bc"}, ! 1488: {"pbgsw", one(0xf08c), one(0xffbf), "Bc"}, ! 1489: {"pbic", one(0xf0cb), one(0xffbf), "Bc"}, ! 1490: {"pbicw", one(0xf08b), one(0xffbf), "Bc"}, ! 1491: {"pbis", one(0xf0ca), one(0xffbf), "Bc"}, ! 1492: {"pbisw", one(0xf08a), one(0xffbf), "Bc"}, ! 1493: {"pblc", one(0xf0c3), one(0xffbf), "Bc"}, ! 1494: {"pblcw", one(0xf083), one(0xffbf), "Bc"}, ! 1495: {"pbls", one(0xf0c2), one(0xffbf), "Bc"}, ! 1496: {"pblsw", one(0xf082), one(0xffbf), "Bc"}, ! 1497: {"pbsc", one(0xf0c5), one(0xffbf), "Bc"}, ! 1498: {"pbscw", one(0xf085), one(0xffbf), "Bc"}, ! 1499: {"pbss", one(0xf0c4), one(0xffbf), "Bc"}, ! 1500: {"pbssw", one(0xf084), one(0xffbf), "Bc"}, ! 1501: {"pbwc", one(0xf0c9), one(0xffbf), "Bc"}, ! 1502: {"pbwcw", one(0xf089), one(0xffbf), "Bc"}, ! 1503: {"pbws", one(0xf0c8), one(0xffbf), "Bc"}, ! 1504: {"pbwsw", one(0xf088), one(0xffbf), "Bc"}, ! 1505: ! 1506: ! 1507: {"pdbac", two(0xf048, 0x0007), two(0xfff8, 0xffff), "DsBw"}, ! 1508: {"pdbas", two(0xf048, 0x0006), two(0xfff8, 0xffff), "DsBw"}, ! 1509: {"pdbbc", two(0xf048, 0x0001), two(0xfff8, 0xffff), "DsBw"}, ! 1510: {"pdbbs", two(0xf048, 0x0000), two(0xfff8, 0xffff), "DsBw"}, ! 1511: {"pdbcc", two(0xf048, 0x000f), two(0xfff8, 0xffff), "DsBw"}, ! 1512: {"pdbcs", two(0xf048, 0x000e), two(0xfff8, 0xffff), "DsBw"}, ! 1513: {"pdbgc", two(0xf048, 0x000d), two(0xfff8, 0xffff), "DsBw"}, ! 1514: {"pdbgs", two(0xf048, 0x000c), two(0xfff8, 0xffff), "DsBw"}, ! 1515: {"pdbic", two(0xf048, 0x000b), two(0xfff8, 0xffff), "DsBw"}, ! 1516: {"pdbis", two(0xf048, 0x000a), two(0xfff8, 0xffff), "DsBw"}, ! 1517: {"pdblc", two(0xf048, 0x0003), two(0xfff8, 0xffff), "DsBw"}, ! 1518: {"pdbls", two(0xf048, 0x0002), two(0xfff8, 0xffff), "DsBw"}, ! 1519: {"pdbsc", two(0xf048, 0x0005), two(0xfff8, 0xffff), "DsBw"}, ! 1520: {"pdbss", two(0xf048, 0x0004), two(0xfff8, 0xffff), "DsBw"}, ! 1521: {"pdbwc", two(0xf048, 0x0009), two(0xfff8, 0xffff), "DsBw"}, ! 1522: {"pdbws", two(0xf048, 0x0008), two(0xfff8, 0xffff), "DsBw"}, ! 1523: ! 1524: {"pflusha", two(0xf000, 0x2400), two(0xffff, 0xffff), "" }, ! 1525: ! 1526: {"pflush", two(0xf000, 0x3010), two(0xffc0, 0xfe10), "T3T9" }, ! 1527: {"pflush", two(0xf000, 0x3810), two(0xffc0, 0xfe10), "T3T9&s" }, ! 1528: {"pflush", two(0xf000, 0x3008), two(0xffc0, 0xfe18), "D3T9" }, ! 1529: {"pflush", two(0xf000, 0x3808), two(0xffc0, 0xfe18), "D3T9&s" }, ! 1530: {"pflush", two(0xf000, 0x3000), two(0xffc0, 0xfe1e), "f3T9" }, ! 1531: {"pflush", two(0xf000, 0x3800), two(0xffc0, 0xfe1e), "f3T9&s" }, ! 1532: ! 1533: {"pflushs", two(0xf000, 0x3410), two(0xfff8, 0xfe10), "T3T9" }, ! 1534: {"pflushs", two(0xf000, 0x3c00), two(0xfff8, 0xfe00), "T3T9&s" }, ! 1535: {"pflushs", two(0xf000, 0x3408), two(0xfff8, 0xfe18), "D3T9" }, ! 1536: {"pflushs", two(0xf000, 0x3c08), two(0xfff8, 0xfe18), "D3T9&s" }, ! 1537: {"pflushs", two(0xf000, 0x3400), two(0xfff8, 0xfe1e), "f3T9" }, ! 1538: {"pflushs", two(0xf000, 0x3c00), two(0xfff8, 0xfe1e), "f3T9&s"}, ! 1539: ! 1540: {"pflushr", two(0xf000, 0xa000), two(0xffc0, 0xffff), "|s" }, ! 1541: ! 1542: {"ploadr", two(0xf000, 0x2210), two(0xffc0, 0xfff0), "T3&s" }, ! 1543: {"ploadr", two(0xf000, 0x2208), two(0xffc0, 0xfff8), "D3&s" }, ! 1544: {"ploadr", two(0xf000, 0x2200), two(0xffc0, 0xfffe), "f3&s" }, ! 1545: {"ploadw", two(0xf000, 0x2010), two(0xffc0, 0xfff0), "T3&s" }, ! 1546: {"ploadw", two(0xf000, 0x2008), two(0xffc0, 0xfff8), "D3&s" }, ! 1547: {"ploadw", two(0xf000, 0x2000), two(0xffc0, 0xfffe), "f3&s" }, ! 1548: ! 1549: /* TC, CRP, DRP, SRP, CAL, VAL, SCC, AC */ ! 1550: {"pmove", two(0xf000, 0x4000), two(0xffc0, 0xe3ff), "*sP8" }, ! 1551: {"pmove", two(0xf000, 0x4200), two(0xffc0, 0xe3ff), "P8%s" }, ! 1552: {"pmove", two(0xf000, 0x4000), two(0xffc0, 0xe3ff), "|sW8" }, ! 1553: {"pmove", two(0xf000, 0x4200), two(0xffc0, 0xe3ff), "W8~s" }, ! 1554: ! 1555: /* BADx, BACx */ ! 1556: {"pmove", two(0xf000, 0x6200), two(0xffc0, 0xe3e3), "*sX3" }, ! 1557: {"pmove", two(0xf000, 0x6000), two(0xffc0, 0xe3e3), "X3%s" }, ! 1558: ! 1559: /* PSR, PCSR */ ! 1560: /* {"pmove", two(0xf000, 0x6100), two(oxffc0, oxffff), "*sZ8" }, */ ! 1561: {"pmove", two(0xf000, 0x6000), two(0xffc0, 0xffff), "*sY8" }, ! 1562: {"pmove", two(0xf000, 0x6200), two(0xffc0, 0xffff), "Y8%s" }, ! 1563: {"pmove", two(0xf000, 0x6600), two(0xffc0, 0xffff), "Z8%s" }, ! 1564: ! 1565: {"prestore", one(0xf140), one(0xffc0), "&s"}, ! 1566: {"prestore", one(0xf158), one(0xfff8), "+s"}, ! 1567: {"psave", one(0xf100), one(0xffc0), "&s"}, ! 1568: {"psave", one(0xf100), one(0xffc0), "+s"}, ! 1569: ! 1570: {"psac", two(0xf040, 0x0007), two(0xffc0, 0xffff), "@s"}, ! 1571: {"psas", two(0xf040, 0x0006), two(0xffc0, 0xffff), "@s"}, ! 1572: {"psbc", two(0xf040, 0x0001), two(0xffc0, 0xffff), "@s"}, ! 1573: {"psbs", two(0xf040, 0x0000), two(0xffc0, 0xffff), "@s"}, ! 1574: {"pscc", two(0xf040, 0x000f), two(0xffc0, 0xffff), "@s"}, ! 1575: {"pscs", two(0xf040, 0x000e), two(0xffc0, 0xffff), "@s"}, ! 1576: {"psgc", two(0xf040, 0x000d), two(0xffc0, 0xffff), "@s"}, ! 1577: {"psgs", two(0xf040, 0x000c), two(0xffc0, 0xffff), "@s"}, ! 1578: {"psic", two(0xf040, 0x000b), two(0xffc0, 0xffff), "@s"}, ! 1579: {"psis", two(0xf040, 0x000a), two(0xffc0, 0xffff), "@s"}, ! 1580: {"pslc", two(0xf040, 0x0003), two(0xffc0, 0xffff), "@s"}, ! 1581: {"psls", two(0xf040, 0x0002), two(0xffc0, 0xffff), "@s"}, ! 1582: {"pssc", two(0xf040, 0x0005), two(0xffc0, 0xffff), "@s"}, ! 1583: {"psss", two(0xf040, 0x0004), two(0xffc0, 0xffff), "@s"}, ! 1584: {"pswc", two(0xf040, 0x0009), two(0xffc0, 0xffff), "@s"}, ! 1585: {"psws", two(0xf040, 0x0008), two(0xffc0, 0xffff), "@s"}, ! 1586: ! 1587: {"ptestr", two(0xf000, 0x8210), two(0xffc0, 0xe3f0), "T3&sQ8" }, ! 1588: {"ptestr", two(0xf000, 0x8310), two(0xffc0, 0xe310), "T3&sQ8A9" }, ! 1589: {"ptestr", two(0xf000, 0x8208), two(0xffc0, 0xe3f8), "D3&sQ8" }, ! 1590: {"ptestr", two(0xf000, 0x8308), two(0xffc0, 0xe318), "D3&sQ8A9" }, ! 1591: {"ptestr", two(0xf000, 0x8200), two(0xffc0, 0xe3fe), "f3&sQ8" }, ! 1592: {"ptestr", two(0xf000, 0x8300), two(0xffc0, 0xe31e), "f3&sQ8A9" }, ! 1593: ! 1594: {"ptestw", two(0xf000, 0x8010), two(0xffc0, 0xe3f0), "T3&sQ8" }, ! 1595: {"ptestw", two(0xf000, 0x8110), two(0xffc0, 0xe310), "T3&sQ8A9" }, ! 1596: {"ptestw", two(0xf000, 0x8008), two(0xffc0, 0xe3f8), "D3&sQ8" }, ! 1597: {"ptestw", two(0xf000, 0x8108), two(0xffc0, 0xe318), "D3&sQ8A9" }, ! 1598: {"ptestw", two(0xf000, 0x8000), two(0xffc0, 0xe3fe), "f3&sQ8" }, ! 1599: {"ptestw", two(0xf000, 0x8100), two(0xffc0, 0xe31e), "f3&sQ8A9" }, ! 1600: ! 1601: {"ptrapacw", two(0xf07a, 0x0007), two(0xffff, 0xffff), "#w"}, ! 1602: {"ptrapacl", two(0xf07b, 0x0007), two(0xffff, 0xffff), "#l"}, ! 1603: {"ptrapac", two(0xf07c, 0x0007), two(0xffff, 0xffff), ""}, ! 1604: ! 1605: {"ptrapasw", two(0xf07a, 0x0006), two(0xffff, 0xffff), "#w"}, ! 1606: {"ptrapasl", two(0xf07b, 0x0006), two(0xffff, 0xffff), "#l"}, ! 1607: {"ptrapas", two(0xf07c, 0x0006), two(0xffff, 0xffff), ""}, ! 1608: ! 1609: {"ptrapbcw", two(0xf07a, 0x0001), two(0xffff, 0xffff), "#w"}, ! 1610: {"ptrapbcl", two(0xf07b, 0x0001), two(0xffff, 0xffff), "#l"}, ! 1611: {"ptrapbc", two(0xf07c, 0x0001), two(0xffff, 0xffff), ""}, ! 1612: ! 1613: {"ptrapbsw", two(0xf07a, 0x0000), two(0xffff, 0xffff), "#w"}, ! 1614: {"ptrapbsl", two(0xf07b, 0x0000), two(0xffff, 0xffff), "#l"}, ! 1615: {"ptrapbs", two(0xf07c, 0x0000), two(0xffff, 0xffff), ""}, ! 1616: ! 1617: {"ptrapccw", two(0xf07a, 0x000f), two(0xffff, 0xffff), "#w"}, ! 1618: {"ptrapccl", two(0xf07b, 0x000f), two(0xffff, 0xffff), "#l"}, ! 1619: {"ptrapcc", two(0xf07c, 0x000f), two(0xffff, 0xffff), ""}, ! 1620: ! 1621: {"ptrapcsw", two(0xf07a, 0x000e), two(0xffff, 0xffff), "#w"}, ! 1622: {"ptrapcsl", two(0xf07b, 0x000e), two(0xffff, 0xffff), "#l"}, ! 1623: {"ptrapcs", two(0xf07c, 0x000e), two(0xffff, 0xffff), ""}, ! 1624: ! 1625: {"ptrapgcw", two(0xf07a, 0x000d), two(0xffff, 0xffff), "#w"}, ! 1626: {"ptrapgcl", two(0xf07b, 0x000d), two(0xffff, 0xffff), "#l"}, ! 1627: {"ptrapgc", two(0xf07c, 0x000d), two(0xffff, 0xffff), ""}, ! 1628: ! 1629: {"ptrapgsw", two(0xf07a, 0x000c), two(0xffff, 0xffff), "#w"}, ! 1630: {"ptrapgsl", two(0xf07b, 0x000c), two(0xffff, 0xffff), "#l"}, ! 1631: {"ptrapgs", two(0xf07c, 0x000c), two(0xffff, 0xffff), ""}, ! 1632: ! 1633: {"ptrapicw", two(0xf07a, 0x000b), two(0xffff, 0xffff), "#w"}, ! 1634: {"ptrapicl", two(0xf07b, 0x000b), two(0xffff, 0xffff), "#l"}, ! 1635: {"ptrapic", two(0xf07c, 0x000b), two(0xffff, 0xffff), ""}, ! 1636: ! 1637: {"ptrapisw", two(0xf07a, 0x000a), two(0xffff, 0xffff), "#w"}, ! 1638: {"ptrapisl", two(0xf07b, 0x000a), two(0xffff, 0xffff), "#l"}, ! 1639: {"ptrapis", two(0xf07c, 0x000a), two(0xffff, 0xffff), ""}, ! 1640: ! 1641: {"ptraplcw", two(0xf07a, 0x0003), two(0xffff, 0xffff), "#w"}, ! 1642: {"ptraplcl", two(0xf07b, 0x0003), two(0xffff, 0xffff), "#l"}, ! 1643: {"ptraplc", two(0xf07c, 0x0003), two(0xffff, 0xffff), ""}, ! 1644: ! 1645: {"ptraplsw", two(0xf07a, 0x0002), two(0xffff, 0xffff), "#w"}, ! 1646: {"ptraplsl", two(0xf07b, 0x0002), two(0xffff, 0xffff), "#l"}, ! 1647: {"ptrapls", two(0xf07c, 0x0002), two(0xffff, 0xffff), ""}, ! 1648: ! 1649: {"ptrapscw", two(0xf07a, 0x0005), two(0xffff, 0xffff), "#w"}, ! 1650: {"ptrapscl", two(0xf07b, 0x0005), two(0xffff, 0xffff), "#l"}, ! 1651: {"ptrapsc", two(0xf07c, 0x0005), two(0xffff, 0xffff), ""}, ! 1652: ! 1653: {"ptrapssw", two(0xf07a, 0x0004), two(0xffff, 0xffff), "#w"}, ! 1654: {"ptrapssl", two(0xf07b, 0x0004), two(0xffff, 0xffff), "#l"}, ! 1655: {"ptrapss", two(0xf07c, 0x0004), two(0xffff, 0xffff), ""}, ! 1656: ! 1657: {"ptrapwcw", two(0xf07a, 0x0009), two(0xffff, 0xffff), "#w"}, ! 1658: {"ptrapwcl", two(0xf07b, 0x0009), two(0xffff, 0xffff), "#l"}, ! 1659: {"ptrapwc", two(0xf07c, 0x0009), two(0xffff, 0xffff), ""}, ! 1660: ! 1661: {"ptrapwsw", two(0xf07a, 0x0008), two(0xffff, 0xffff), "#w"}, ! 1662: {"ptrapwsl", two(0xf07b, 0x0008), two(0xffff, 0xffff), "#l"}, ! 1663: {"ptrapws", two(0xf07c, 0x0008), two(0xffff, 0xffff), ""}, ! 1664: ! 1665: {"pvalid", two(0xf000, 0x2800), two(0xffc0, 0xffff), "Vs&s"}, ! 1666: {"pvalid", two(0xf000, 0x2c00), two(0xffc0, 0xfff8), "A3&s" }, ! 1667: ! 1668: #endif /* m68851 */ 1.1 root 1669: 1670: }; 1671: 1672: int numopcodes=sizeof(m68k_opcodes)/sizeof(m68k_opcodes[0]); 1673: 1.1.1.3 ! root 1674: struct m68k_opcode *endop = m68k_opcodes+sizeof(m68k_opcodes)/sizeof(m68k_opcodes[0]);
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.