[BACK]Return to ia64-opc-f.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / external / gpl3 / binutils.old / dist / opcodes

Annotation of src/external/gpl3/binutils.old/dist/opcodes/ia64-opc-f.c, Revision 1.1

1.1     ! christos    1: /* ia64-opc-f.c -- IA-64 `F' opcode table.
        !             2:    Copyright 1998, 1999, 2000, 2002, 2005, 2007, 2009
        !             3:    Free Software Foundation, Inc.
        !             4:    Contributed by David Mosberger-Tang <davidm@hpl.hp.com>
        !             5:
        !             6:    This file is part of the GNU opcodes library.
        !             7:
        !             8:    This library is free software; you can redistribute it and/or modify
        !             9:    it under the terms of the GNU General Public License as published by
        !            10:    the Free Software Foundation; either version 3, or (at your option)
        !            11:    any later version.
        !            12:
        !            13:    It is distributed in the hope that it will be useful, but WITHOUT
        !            14:    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
        !            15:    or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
        !            16:    License for more details.
        !            17:
        !            18:    You should have received a copy of the GNU General Public License
        !            19:    along with this file; see the file COPYING.  If not, write to the
        !            20:    Free Software Foundation, 51 Franklin Street - Fifth Floor, Boston,
        !            21:    MA 02110-1301, USA.  */
        !            22:
        !            23: #include "ia64-opc.h"
        !            24:
        !            25: #define f0     IA64_TYPE_F, 0
        !            26: #define f      IA64_TYPE_F, 1
        !            27: #define f2     IA64_TYPE_F, 2
        !            28:
        !            29: #define bF2(x) (((ia64_insn) ((x) & 0x7f)) << 13)
        !            30: #define bF4(x) (((ia64_insn) ((x) & 0x7f)) << 27)
        !            31: #define bQ(x)  (((ia64_insn) ((x) & 0x1)) << 36)
        !            32: #define bRa(x) (((ia64_insn) ((x) & 0x1)) << 33)
        !            33: #define bRb(x) (((ia64_insn) ((x) & 0x1)) << 36)
        !            34: #define bSf(x) (((ia64_insn) ((x) & 0x3)) << 34)
        !            35: #define bTa(x) (((ia64_insn) ((x) & 0x1)) << 12)
        !            36: #define bXa(x) (((ia64_insn) ((x) & 0x1)) << 36)
        !            37: #define bXb(x) (((ia64_insn) ((x) & 0x1)) << 33)
        !            38: #define bX2(x) (((ia64_insn) ((x) & 0x3)) << 34)
        !            39: #define bX6(x) (((ia64_insn) ((x) & 0x3f)) << 27)
        !            40: #define bY(x)  (((ia64_insn) ((x) & 0x1)) << 26)
        !            41:
        !            42: #define mF2    bF2 (-1)
        !            43: #define mF4    bF4 (-1)
        !            44: #define mQ     bQ (-1)
        !            45: #define mRa    bRa (-1)
        !            46: #define mRb    bRb (-1)
        !            47: #define mSf    bSf (-1)
        !            48: #define mTa    bTa (-1)
        !            49: #define mXa    bXa (-1)
        !            50: #define mXb    bXb (-1)
        !            51: #define mX2    bX2 (-1)
        !            52: #define mX6    bX6 (-1)
        !            53: #define mY     bY (-1)
        !            54:
        !            55: #define OpXa(a,b)      (bOp (a) | bXa (b)), (mOp | mXa)
        !            56: #define OpXaSf(a,b,c)  (bOp (a) | bXa (b) | bSf (c)), (mOp | mXa | mSf)
        !            57: #define OpXaSfF2(a,b,c,d) \
        !            58:        (bOp (a) | bXa (b) | bSf (c) | bF2 (d)), (mOp | mXa | mSf | mF2)
        !            59: #define OpXaSfF4(a,b,c,d) \
        !            60:        (bOp (a) | bXa (b) | bSf (c) | bF4 (d)), (mOp | mXa | mSf | mF4)
        !            61: #define OpXaSfF2F4(a,b,c,d,e) \
        !            62:        (bOp (a) | bXa (b) | bSf (c) | bF2 (d) | bF4 (e)), \
        !            63:        (mOp | mXa | mSf | mF2 | mF4)
        !            64: #define OpXaX2(a,b,c)  (bOp (a) | bXa (b) | bX2 (c)), (mOp | mXa | mX2)
        !            65: #define OpXaX2F2(a,b,c,d) \
        !            66:        (bOp (a) | bXa (b) | bX2 (c) | bF2 (d)), (mOp | mXa | mX2 | mF2)
        !            67: #define OpRaRbTaSf(a,b,c,d,e) \
        !            68:        (bOp (a) | bRa (b) | bRb (c) | bTa (d) | bSf (e)), \
        !            69:        (mOp | mRa | mRb | mTa | mSf)
        !            70: #define OpTa(a,b)      (bOp (a) | bTa (b)), (mOp | mTa)
        !            71: #define OpXbQSf(a,b,c,d) \
        !            72:        (bOp (a) | bXb (b) | bQ (c) | bSf (d)), (mOp | mXb | mQ | mSf)
        !            73: #define OpXbX6(a,b,c) \
        !            74:        (bOp (a) | bXb (b) | bX6 (c)), (mOp | mXb | mX6)
        !            75: #define OpXbX6Y(a,b,c,d) \
        !            76:        (bOp (a) | bXb (b) | bX6 (c) | bY (d)), (mOp | mXb | mX6 | mY)
        !            77: #define OpXbX6F2(a,b,c,d) \
        !            78:        (bOp (a) | bXb (b) | bX6 (c) | bF2 (d)), (mOp | mXb | mX6 | mF2)
        !            79: #define OpXbX6Sf(a,b,c,d) \
        !            80:        (bOp (a) | bXb (b) | bX6 (c) | bSf (d)), (mOp | mXb | mX6 | mSf)
        !            81:
        !            82: /* Used to initialise unused fields in ia64_opcode struct,
        !            83:    in order to stop gcc from complaining.  */
        !            84: #define EMPTY 0,0,NULL
        !            85:
        !            86: struct ia64_opcode ia64_opcodes_f[] =
        !            87:   {
        !            88:     /* F-type instruction encodings (sorted according to major opcode).  */
        !            89:
        !            90:     {"frcpa.s0",       f2, OpXbQSf (0, 1, 0, 0), {F1, P2, F2, F3}, EMPTY},
        !            91:     {"frcpa",          f2, OpXbQSf (0, 1, 0, 0), {F1, P2, F2, F3}, PSEUDO, 0, NULL},
        !            92:     {"frcpa.s1",       f2, OpXbQSf (0, 1, 0, 1), {F1, P2, F2, F3}, EMPTY},
        !            93:     {"frcpa.s2",       f2, OpXbQSf (0, 1, 0, 2), {F1, P2, F2, F3}, EMPTY},
        !            94:     {"frcpa.s3",       f2, OpXbQSf (0, 1, 0, 3), {F1, P2, F2, F3}, EMPTY},
        !            95:
        !            96:     {"frsqrta.s0",     f2, OpXbQSf (0, 1, 1, 0), {F1, P2, F3}, EMPTY},
        !            97:     {"frsqrta",                f2, OpXbQSf (0, 1, 1, 0), {F1, P2, F3}, PSEUDO, 0, NULL},
        !            98:     {"frsqrta.s1",     f2, OpXbQSf (0, 1, 1, 1), {F1, P2, F3}, EMPTY},
        !            99:     {"frsqrta.s2",     f2, OpXbQSf (0, 1, 1, 2), {F1, P2, F3}, EMPTY},
        !           100:     {"frsqrta.s3",     f2, OpXbQSf (0, 1, 1, 3), {F1, P2, F3}, EMPTY},
        !           101:
        !           102:     {"fmin.s0",                f, OpXbX6Sf (0, 0, 0x14, 0), {F1, F2, F3}, EMPTY},
        !           103:     {"fmin",           f, OpXbX6Sf (0, 0, 0x14, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           104:     {"fmin.s1",                f, OpXbX6Sf (0, 0, 0x14, 1), {F1, F2, F3}, EMPTY},
        !           105:     {"fmin.s2",                f, OpXbX6Sf (0, 0, 0x14, 2), {F1, F2, F3}, EMPTY},
        !           106:     {"fmin.s3",                f, OpXbX6Sf (0, 0, 0x14, 3), {F1, F2, F3}, EMPTY},
        !           107:     {"fmax.s0",                f, OpXbX6Sf (0, 0, 0x15, 0), {F1, F2, F3}, EMPTY},
        !           108:     {"fmax",           f, OpXbX6Sf (0, 0, 0x15, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           109:     {"fmax.s1",                f, OpXbX6Sf (0, 0, 0x15, 1), {F1, F2, F3}, EMPTY},
        !           110:     {"fmax.s2",                f, OpXbX6Sf (0, 0, 0x15, 2), {F1, F2, F3}, EMPTY},
        !           111:     {"fmax.s3",                f, OpXbX6Sf (0, 0, 0x15, 3), {F1, F2, F3}, EMPTY},
        !           112:     {"famin.s0",       f, OpXbX6Sf (0, 0, 0x16, 0), {F1, F2, F3}, EMPTY},
        !           113:     {"famin",          f, OpXbX6Sf (0, 0, 0x16, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           114:     {"famin.s1",       f, OpXbX6Sf (0, 0, 0x16, 1), {F1, F2, F3}, EMPTY},
        !           115:     {"famin.s2",       f, OpXbX6Sf (0, 0, 0x16, 2), {F1, F2, F3}, EMPTY},
        !           116:     {"famin.s3",       f, OpXbX6Sf (0, 0, 0x16, 3), {F1, F2, F3}, EMPTY},
        !           117:     {"famax.s0",       f, OpXbX6Sf (0, 0, 0x17, 0), {F1, F2, F3}, EMPTY},
        !           118:     {"famax",          f, OpXbX6Sf (0, 0, 0x17, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           119:     {"famax.s1",       f, OpXbX6Sf (0, 0, 0x17, 1), {F1, F2, F3}, EMPTY},
        !           120:     {"famax.s2",       f, OpXbX6Sf (0, 0, 0x17, 2), {F1, F2, F3}, EMPTY},
        !           121:     {"famax.s3",       f, OpXbX6Sf (0, 0, 0x17, 3), {F1, F2, F3}, EMPTY},
        !           122:
        !           123:     {"mov",            f, OpXbX6 (0, 0, 0x10), {F1, F3}, PSEUDO | F2_EQ_F3, 0, NULL},
        !           124:     {"fabs",           f, OpXbX6F2 (0, 0, 0x10, 0), {F1, F3}, PSEUDO, 0, NULL},
        !           125:     {"fneg",           f, OpXbX6   (0, 0, 0x11), {F1, F3}, PSEUDO | F2_EQ_F3, 0, NULL},
        !           126:     {"fnegabs",                f, OpXbX6F2 (0, 0, 0x11, 0), {F1, F3}, PSEUDO, 0, NULL},
        !           127:     {"fmerge.s",       f, OpXbX6   (0, 0, 0x10), {F1, F2, F3}, EMPTY},
        !           128:     {"fmerge.ns",      f, OpXbX6   (0, 0, 0x11), {F1, F2, F3}, EMPTY},
        !           129:
        !           130:     {"fmerge.se",      f, OpXbX6 (0, 0, 0x12), {F1, F2, F3}, EMPTY},
        !           131:     {"fmix.lr",                f, OpXbX6 (0, 0, 0x39), {F1, F2, F3}, EMPTY},
        !           132:     {"fmix.r",         f, OpXbX6 (0, 0, 0x3a), {F1, F2, F3}, EMPTY},
        !           133:     {"fmix.l",         f, OpXbX6 (0, 0, 0x3b), {F1, F2, F3}, EMPTY},
        !           134:     {"fsxt.r",         f, OpXbX6 (0, 0, 0x3c), {F1, F2, F3}, EMPTY},
        !           135:     {"fsxt.l",         f, OpXbX6 (0, 0, 0x3d), {F1, F2, F3}, EMPTY},
        !           136:     {"fpack",          f, OpXbX6 (0, 0, 0x28), {F1, F2, F3}, EMPTY},
        !           137:     {"fswap",          f, OpXbX6 (0, 0, 0x34), {F1, F2, F3}, EMPTY},
        !           138:     {"fswap.nl",       f, OpXbX6 (0, 0, 0x35), {F1, F2, F3}, EMPTY},
        !           139:     {"fswap.nr",       f, OpXbX6 (0, 0, 0x36), {F1, F2, F3}, EMPTY},
        !           140:     {"fand",           f, OpXbX6 (0, 0, 0x2c), {F1, F2, F3}, EMPTY},
        !           141:     {"fandcm",         f, OpXbX6 (0, 0, 0x2d), {F1, F2, F3}, EMPTY},
        !           142:     {"for",            f, OpXbX6 (0, 0, 0x2e), {F1, F2, F3}, EMPTY},
        !           143:     {"fxor",           f, OpXbX6 (0, 0, 0x2f), {F1, F2, F3}, EMPTY},
        !           144:
        !           145:     {"fcvt.fx.s0",             f, OpXbX6Sf (0, 0, 0x18, 0), {F1, F2}, EMPTY},
        !           146:     {"fcvt.fx",                        f, OpXbX6Sf (0, 0, 0x18, 0), {F1, F2}, PSEUDO, 0, NULL},
        !           147:     {"fcvt.fx.s1",             f, OpXbX6Sf (0, 0, 0x18, 1), {F1, F2}, EMPTY},
        !           148:     {"fcvt.fx.s2",             f, OpXbX6Sf (0, 0, 0x18, 2), {F1, F2}, EMPTY},
        !           149:     {"fcvt.fx.s3",             f, OpXbX6Sf (0, 0, 0x18, 3), {F1, F2}, EMPTY},
        !           150:     {"fcvt.fxu.s0",            f, OpXbX6Sf (0, 0, 0x19, 0), {F1, F2}, EMPTY},
        !           151:     {"fcvt.fxu",               f, OpXbX6Sf (0, 0, 0x19, 0), {F1, F2}, PSEUDO, 0, NULL},
        !           152:     {"fcvt.fxu.s1",            f, OpXbX6Sf (0, 0, 0x19, 1), {F1, F2}, EMPTY},
        !           153:     {"fcvt.fxu.s2",            f, OpXbX6Sf (0, 0, 0x19, 2), {F1, F2}, EMPTY},
        !           154:     {"fcvt.fxu.s3",            f, OpXbX6Sf (0, 0, 0x19, 3), {F1, F2}, EMPTY},
        !           155:     {"fcvt.fx.trunc.s0",       f, OpXbX6Sf (0, 0, 0x1a, 0), {F1, F2}, EMPTY},
        !           156:     {"fcvt.fx.trunc",          f, OpXbX6Sf (0, 0, 0x1a, 0), {F1, F2}, PSEUDO, 0, NULL},
        !           157:     {"fcvt.fx.trunc.s1",       f, OpXbX6Sf (0, 0, 0x1a, 1), {F1, F2}, EMPTY},
        !           158:     {"fcvt.fx.trunc.s2",       f, OpXbX6Sf (0, 0, 0x1a, 2), {F1, F2}, EMPTY},
        !           159:     {"fcvt.fx.trunc.s3",       f, OpXbX6Sf (0, 0, 0x1a, 3), {F1, F2}, EMPTY},
        !           160:     {"fcvt.fxu.trunc.s0",      f, OpXbX6Sf (0, 0, 0x1b, 0), {F1, F2}, EMPTY},
        !           161:     {"fcvt.fxu.trunc",         f, OpXbX6Sf (0, 0, 0x1b, 0), {F1, F2}, PSEUDO, 0, NULL},
        !           162:     {"fcvt.fxu.trunc.s1",      f, OpXbX6Sf (0, 0, 0x1b, 1), {F1, F2}, EMPTY},
        !           163:     {"fcvt.fxu.trunc.s2",      f, OpXbX6Sf (0, 0, 0x1b, 2), {F1, F2}, EMPTY},
        !           164:     {"fcvt.fxu.trunc.s3",      f, OpXbX6Sf (0, 0, 0x1b, 3), {F1, F2}, EMPTY},
        !           165:
        !           166:     {"fcvt.xf",                f, OpXbX6 (0, 0, 0x1c), {F1, F2}, EMPTY},
        !           167:
        !           168:     {"fsetc.s0",       f0, OpXbX6Sf (0, 0, 0x04, 0), {IMMU7a, IMMU7b}, EMPTY},
        !           169:     {"fsetc",          f0, OpXbX6Sf (0, 0, 0x04, 0), {IMMU7a, IMMU7b}, PSEUDO, 0, NULL},
        !           170:     {"fsetc.s1",       f0, OpXbX6Sf (0, 0, 0x04, 1), {IMMU7a, IMMU7b}, EMPTY},
        !           171:     {"fsetc.s2",       f0, OpXbX6Sf (0, 0, 0x04, 2), {IMMU7a, IMMU7b}, EMPTY},
        !           172:     {"fsetc.s3",       f0, OpXbX6Sf (0, 0, 0x04, 3), {IMMU7a, IMMU7b}, EMPTY},
        !           173:     {"fclrf.s0",       f0, OpXbX6Sf (0, 0, 0x05, 0), {}, EMPTY},
        !           174:     {"fclrf",          f0, OpXbX6Sf (0, 0, 0x05, 0), {0}, PSEUDO, 0, NULL},
        !           175:     {"fclrf.s1",       f0, OpXbX6Sf (0, 0, 0x05, 1), {}, EMPTY},
        !           176:     {"fclrf.s2",       f0, OpXbX6Sf (0, 0, 0x05, 2), {}, EMPTY},
        !           177:     {"fclrf.s3",       f0, OpXbX6Sf (0, 0, 0x05, 3), {}, EMPTY},
        !           178:     {"fchkf.s0",       f0, OpXbX6Sf (0, 0, 0x08, 0), {TGT25}, EMPTY},
        !           179:     {"fchkf",          f0, OpXbX6Sf (0, 0, 0x08, 0), {TGT25}, PSEUDO, 0, NULL},
        !           180:     {"fchkf.s1",       f0, OpXbX6Sf (0, 0, 0x08, 1), {TGT25}, EMPTY},
        !           181:     {"fchkf.s2",       f0, OpXbX6Sf (0, 0, 0x08, 2), {TGT25}, EMPTY},
        !           182:     {"fchkf.s3",       f0, OpXbX6Sf (0, 0, 0x08, 3), {TGT25}, EMPTY},
        !           183:
        !           184:     {"break.f",                f0, OpXbX6 (0, 0, 0x00), {IMMU21}, EMPTY},
        !           185:     {"nop.f",          f0, OpXbX6Y (0, 0, 0x01, 0), {IMMU21}, EMPTY},
        !           186:     {"hint.f",         f0, OpXbX6Y (0, 0, 0x01, 1), {IMMU21}, EMPTY},
        !           187:
        !           188:     {"fprcpa.s0",      f2, OpXbQSf (1, 1, 0, 0), {F1, P2, F2, F3}, EMPTY},
        !           189:     {"fprcpa",         f2, OpXbQSf (1, 1, 0, 0), {F1, P2, F2, F3}, PSEUDO, 0, NULL},
        !           190:     {"fprcpa.s1",      f2, OpXbQSf (1, 1, 0, 1), {F1, P2, F2, F3}, EMPTY},
        !           191:     {"fprcpa.s2",      f2, OpXbQSf (1, 1, 0, 2), {F1, P2, F2, F3}, EMPTY},
        !           192:     {"fprcpa.s3",      f2, OpXbQSf (1, 1, 0, 3), {F1, P2, F2, F3}, EMPTY},
        !           193:
        !           194:     {"fprsqrta.s0",    f2, OpXbQSf (1, 1, 1, 0), {F1, P2, F3}, EMPTY},
        !           195:     {"fprsqrta",       f2, OpXbQSf (1, 1, 1, 0), {F1, P2, F3}, PSEUDO, 0, NULL},
        !           196:     {"fprsqrta.s1",    f2, OpXbQSf (1, 1, 1, 1), {F1, P2, F3}, EMPTY},
        !           197:     {"fprsqrta.s2",    f2, OpXbQSf (1, 1, 1, 2), {F1, P2, F3}, EMPTY},
        !           198:     {"fprsqrta.s3",    f2, OpXbQSf (1, 1, 1, 3), {F1, P2, F3}, EMPTY},
        !           199:
        !           200:     {"fpmin.s0",       f, OpXbX6Sf (1, 0, 0x14, 0), {F1, F2, F3}, EMPTY},
        !           201:     {"fpmin",          f, OpXbX6Sf (1, 0, 0x14, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           202:     {"fpmin.s1",       f, OpXbX6Sf (1, 0, 0x14, 1), {F1, F2, F3}, EMPTY},
        !           203:     {"fpmin.s2",       f, OpXbX6Sf (1, 0, 0x14, 2), {F1, F2, F3}, EMPTY},
        !           204:     {"fpmin.s3",       f, OpXbX6Sf (1, 0, 0x14, 3), {F1, F2, F3}, EMPTY},
        !           205:     {"fpmax.s0",       f, OpXbX6Sf (1, 0, 0x15, 0), {F1, F2, F3}, EMPTY},
        !           206:     {"fpmax",          f, OpXbX6Sf (1, 0, 0x15, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           207:     {"fpmax.s1",       f, OpXbX6Sf (1, 0, 0x15, 1), {F1, F2, F3}, EMPTY},
        !           208:     {"fpmax.s2",       f, OpXbX6Sf (1, 0, 0x15, 2), {F1, F2, F3}, EMPTY},
        !           209:     {"fpmax.s3",       f, OpXbX6Sf (1, 0, 0x15, 3), {F1, F2, F3}, EMPTY},
        !           210:     {"fpamin.s0",      f, OpXbX6Sf (1, 0, 0x16, 0), {F1, F2, F3}, EMPTY},
        !           211:     {"fpamin",         f, OpXbX6Sf (1, 0, 0x16, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           212:     {"fpamin.s1",      f, OpXbX6Sf (1, 0, 0x16, 1), {F1, F2, F3}, EMPTY},
        !           213:     {"fpamin.s2",      f, OpXbX6Sf (1, 0, 0x16, 2), {F1, F2, F3}, EMPTY},
        !           214:     {"fpamin.s3",      f, OpXbX6Sf (1, 0, 0x16, 3), {F1, F2, F3}, EMPTY},
        !           215:     {"fpamax.s0",      f, OpXbX6Sf (1, 0, 0x17, 0), {F1, F2, F3}, EMPTY},
        !           216:     {"fpamax",         f, OpXbX6Sf (1, 0, 0x17, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           217:     {"fpamax.s1",      f, OpXbX6Sf (1, 0, 0x17, 1), {F1, F2, F3}, EMPTY},
        !           218:     {"fpamax.s2",      f, OpXbX6Sf (1, 0, 0x17, 2), {F1, F2, F3}, EMPTY},
        !           219:     {"fpamax.s3",      f, OpXbX6Sf (1, 0, 0x17, 3), {F1, F2, F3}, EMPTY},
        !           220:
        !           221:     {"fpcmp.eq.s0",    f, OpXbX6Sf (1, 0, 0x30, 0), {F1, F2, F3}, EMPTY},
        !           222:     {"fpcmp.eq",       f, OpXbX6Sf (1, 0, 0x30, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           223:     {"fpcmp.eq.s1",    f, OpXbX6Sf (1, 0, 0x30, 1), {F1, F2, F3}, EMPTY},
        !           224:     {"fpcmp.eq.s2",    f, OpXbX6Sf (1, 0, 0x30, 2), {F1, F2, F3}, EMPTY},
        !           225:     {"fpcmp.eq.s3",    f, OpXbX6Sf (1, 0, 0x30, 3), {F1, F2, F3}, EMPTY},
        !           226:     {"fpcmp.lt.s0",    f, OpXbX6Sf (1, 0, 0x31, 0), {F1, F2, F3}, EMPTY},
        !           227:     {"fpcmp.lt",       f, OpXbX6Sf (1, 0, 0x31, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           228:     {"fpcmp.lt.s1",    f, OpXbX6Sf (1, 0, 0x31, 1), {F1, F2, F3}, EMPTY},
        !           229:     {"fpcmp.lt.s2",    f, OpXbX6Sf (1, 0, 0x31, 2), {F1, F2, F3}, EMPTY},
        !           230:     {"fpcmp.lt.s3",    f, OpXbX6Sf (1, 0, 0x31, 3), {F1, F2, F3}, EMPTY},
        !           231:     {"fpcmp.le.s0",    f, OpXbX6Sf (1, 0, 0x32, 0), {F1, F2, F3}, EMPTY},
        !           232:     {"fpcmp.le",       f, OpXbX6Sf (1, 0, 0x32, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           233:     {"fpcmp.le.s1",    f, OpXbX6Sf (1, 0, 0x32, 1), {F1, F2, F3}, EMPTY},
        !           234:     {"fpcmp.le.s2",    f, OpXbX6Sf (1, 0, 0x32, 2), {F1, F2, F3}, EMPTY},
        !           235:     {"fpcmp.le.s3",    f, OpXbX6Sf (1, 0, 0x32, 3), {F1, F2, F3}, EMPTY},
        !           236:     {"fpcmp.gt.s0",    f, OpXbX6Sf (1, 0, 0x31, 0), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           237:     {"fpcmp.gt",       f, OpXbX6Sf (1, 0, 0x31, 0), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           238:     {"fpcmp.gt.s1",    f, OpXbX6Sf (1, 0, 0x31, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           239:     {"fpcmp.gt.s2",    f, OpXbX6Sf (1, 0, 0x31, 2), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           240:     {"fpcmp.gt.s3",    f, OpXbX6Sf (1, 0, 0x31, 3), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           241:     {"fpcmp.ge.s0",    f, OpXbX6Sf (1, 0, 0x32, 0), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           242:     {"fpcmp.ge",       f, OpXbX6Sf (1, 0, 0x32, 0), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           243:     {"fpcmp.ge.s1",    f, OpXbX6Sf (1, 0, 0x32, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           244:     {"fpcmp.ge.s2",    f, OpXbX6Sf (1, 0, 0x32, 2), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           245:     {"fpcmp.ge.s3",    f, OpXbX6Sf (1, 0, 0x32, 3), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           246:     {"fpcmp.unord.s0", f, OpXbX6Sf (1, 0, 0x33, 0), {F1, F2, F3}, EMPTY},
        !           247:     {"fpcmp.unord",    f, OpXbX6Sf (1, 0, 0x33, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           248:     {"fpcmp.unord.s1", f, OpXbX6Sf (1, 0, 0x33, 1), {F1, F2, F3}, EMPTY},
        !           249:     {"fpcmp.unord.s2", f, OpXbX6Sf (1, 0, 0x33, 2), {F1, F2, F3}, EMPTY},
        !           250:     {"fpcmp.unord.s3", f, OpXbX6Sf (1, 0, 0x33, 3), {F1, F2, F3}, EMPTY},
        !           251:     {"fpcmp.neq.s0",   f, OpXbX6Sf (1, 0, 0x34, 0), {F1, F2, F3}, EMPTY},
        !           252:     {"fpcmp.neq",      f, OpXbX6Sf (1, 0, 0x34, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           253:     {"fpcmp.neq.s1",   f, OpXbX6Sf (1, 0, 0x34, 1), {F1, F2, F3}, EMPTY},
        !           254:     {"fpcmp.neq.s2",   f, OpXbX6Sf (1, 0, 0x34, 2), {F1, F2, F3}, EMPTY},
        !           255:     {"fpcmp.neq.s3",   f, OpXbX6Sf (1, 0, 0x34, 3), {F1, F2, F3}, EMPTY},
        !           256:     {"fpcmp.nlt.s0",   f, OpXbX6Sf (1, 0, 0x35, 0), {F1, F2, F3}, EMPTY},
        !           257:     {"fpcmp.nlt",      f, OpXbX6Sf (1, 0, 0x35, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           258:     {"fpcmp.nlt.s1",   f, OpXbX6Sf (1, 0, 0x35, 1), {F1, F2, F3}, EMPTY},
        !           259:     {"fpcmp.nlt.s2",   f, OpXbX6Sf (1, 0, 0x35, 2), {F1, F2, F3}, EMPTY},
        !           260:     {"fpcmp.nlt.s3",   f, OpXbX6Sf (1, 0, 0x35, 3), {F1, F2, F3}, EMPTY},
        !           261:     {"fpcmp.nle.s0",   f, OpXbX6Sf (1, 0, 0x36, 0), {F1, F2, F3}, EMPTY},
        !           262:     {"fpcmp.nle",      f, OpXbX6Sf (1, 0, 0x36, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           263:     {"fpcmp.nle.s1",   f, OpXbX6Sf (1, 0, 0x36, 1), {F1, F2, F3}, EMPTY},
        !           264:     {"fpcmp.nle.s2",   f, OpXbX6Sf (1, 0, 0x36, 2), {F1, F2, F3}, EMPTY},
        !           265:     {"fpcmp.nle.s3",   f, OpXbX6Sf (1, 0, 0x36, 3), {F1, F2, F3}, EMPTY},
        !           266:     {"fpcmp.ngt.s0",   f, OpXbX6Sf (1, 0, 0x35, 0), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           267:     {"fpcmp.ngt",      f, OpXbX6Sf (1, 0, 0x35, 0), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           268:     {"fpcmp.ngt.s1",   f, OpXbX6Sf (1, 0, 0x35, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           269:     {"fpcmp.ngt.s2",   f, OpXbX6Sf (1, 0, 0x35, 2), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           270:     {"fpcmp.ngt.s3",   f, OpXbX6Sf (1, 0, 0x35, 3), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           271:     {"fpcmp.nge.s0",   f, OpXbX6Sf (1, 0, 0x36, 0), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           272:     {"fpcmp.nge",      f, OpXbX6Sf (1, 0, 0x36, 0), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           273:     {"fpcmp.nge.s1",   f, OpXbX6Sf (1, 0, 0x36, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           274:     {"fpcmp.nge.s2",   f, OpXbX6Sf (1, 0, 0x36, 2), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           275:     {"fpcmp.nge.s3",   f, OpXbX6Sf (1, 0, 0x36, 3), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           276:     {"fpcmp.ord.s0",   f, OpXbX6Sf (1, 0, 0x37, 0), {F1, F2, F3}, EMPTY},
        !           277:     {"fpcmp.ord",      f, OpXbX6Sf (1, 0, 0x37, 0), {F1, F2, F3}, PSEUDO, 0, NULL},
        !           278:     {"fpcmp.ord.s1",   f, OpXbX6Sf (1, 0, 0x37, 1), {F1, F2, F3}, EMPTY},
        !           279:     {"fpcmp.ord.s2",   f, OpXbX6Sf (1, 0, 0x37, 2), {F1, F2, F3}, EMPTY},
        !           280:     {"fpcmp.ord.s3",   f, OpXbX6Sf (1, 0, 0x37, 3), {F1, F2, F3}, EMPTY},
        !           281:
        !           282:     {"fpabs",          f, OpXbX6F2 (1, 0, 0x10, 0), {F1, F3}, PSEUDO, 0, NULL},
        !           283:     {"fpneg",          f, OpXbX6   (1, 0, 0x11), {F1, F3}, PSEUDO | F2_EQ_F3, 0, NULL},
        !           284:     {"fpnegabs",       f, OpXbX6F2 (1, 0, 0x11, 0), {F1, F3}, PSEUDO, 0, NULL},
        !           285:     {"fpmerge.s",      f, OpXbX6   (1, 0, 0x10), {F1, F2, F3}, EMPTY},
        !           286:     {"fpmerge.ns",     f, OpXbX6   (1, 0, 0x11), {F1, F2, F3}, EMPTY},
        !           287:     {"fpmerge.se",     f, OpXbX6 (1, 0, 0x12), {F1, F2, F3}, EMPTY},
        !           288:
        !           289:     {"fpcvt.fx.s0",            f, OpXbX6Sf (1, 0, 0x18, 0), {F1, F2}, EMPTY},
        !           290:     {"fpcvt.fx",               f, OpXbX6Sf (1, 0, 0x18, 0), {F1, F2}, PSEUDO, 0, NULL},
        !           291:     {"fpcvt.fx.s1",            f, OpXbX6Sf (1, 0, 0x18, 1), {F1, F2}, EMPTY},
        !           292:     {"fpcvt.fx.s2",            f, OpXbX6Sf (1, 0, 0x18, 2), {F1, F2}, EMPTY},
        !           293:     {"fpcvt.fx.s3",            f, OpXbX6Sf (1, 0, 0x18, 3), {F1, F2}, EMPTY},
        !           294:     {"fpcvt.fxu.s0",           f, OpXbX6Sf (1, 0, 0x19, 0), {F1, F2}, EMPTY},
        !           295:     {"fpcvt.fxu",              f, OpXbX6Sf (1, 0, 0x19, 0), {F1, F2}, PSEUDO, 0, NULL},
        !           296:     {"fpcvt.fxu.s1",           f, OpXbX6Sf (1, 0, 0x19, 1), {F1, F2}, EMPTY},
        !           297:     {"fpcvt.fxu.s2",           f, OpXbX6Sf (1, 0, 0x19, 2), {F1, F2}, EMPTY},
        !           298:     {"fpcvt.fxu.s3",           f, OpXbX6Sf (1, 0, 0x19, 3), {F1, F2}, EMPTY},
        !           299:     {"fpcvt.fx.trunc.s0",      f, OpXbX6Sf (1, 0, 0x1a, 0), {F1, F2}, EMPTY},
        !           300:     {"fpcvt.fx.trunc",         f, OpXbX6Sf (1, 0, 0x1a, 0), {F1, F2}, PSEUDO, 0, NULL},
        !           301:     {"fpcvt.fx.trunc.s1",      f, OpXbX6Sf (1, 0, 0x1a, 1), {F1, F2}, EMPTY},
        !           302:     {"fpcvt.fx.trunc.s2",      f, OpXbX6Sf (1, 0, 0x1a, 2), {F1, F2}, EMPTY},
        !           303:     {"fpcvt.fx.trunc.s3",      f, OpXbX6Sf (1, 0, 0x1a, 3), {F1, F2}, EMPTY},
        !           304:     {"fpcvt.fxu.trunc.s0",     f, OpXbX6Sf (1, 0, 0x1b, 0), {F1, F2}, EMPTY},
        !           305:     {"fpcvt.fxu.trunc",                f, OpXbX6Sf (1, 0, 0x1b, 0), {F1, F2}, PSEUDO, 0, NULL},
        !           306:     {"fpcvt.fxu.trunc.s1",     f, OpXbX6Sf (1, 0, 0x1b, 1), {F1, F2}, EMPTY},
        !           307:     {"fpcvt.fxu.trunc.s2",     f, OpXbX6Sf (1, 0, 0x1b, 2), {F1, F2}, EMPTY},
        !           308:     {"fpcvt.fxu.trunc.s3",     f, OpXbX6Sf (1, 0, 0x1b, 3), {F1, F2}, EMPTY},
        !           309:
        !           310:     {"fcmp.eq.s0",       f2, OpRaRbTaSf (4, 0, 0, 0, 0), {P1, P2, F2, F3}, EMPTY},
        !           311:     {"fcmp.eq",                  f2, OpRaRbTaSf (4, 0, 0, 0, 0), {P1, P2, F2, F3}, PSEUDO, 0, NULL},
        !           312:     {"fcmp.eq.s1",       f2, OpRaRbTaSf (4, 0, 0, 0, 1), {P1, P2, F2, F3}, EMPTY},
        !           313:     {"fcmp.eq.s2",       f2, OpRaRbTaSf (4, 0, 0, 0, 2), {P1, P2, F2, F3}, EMPTY},
        !           314:     {"fcmp.eq.s3",       f2, OpRaRbTaSf (4, 0, 0, 0, 3), {P1, P2, F2, F3}, EMPTY},
        !           315:     {"fcmp.lt.s0",       f2, OpRaRbTaSf (4, 0, 1, 0, 0), {P1, P2, F2, F3}, EMPTY},
        !           316:     {"fcmp.lt",                  f2, OpRaRbTaSf (4, 0, 1, 0, 0), {P1, P2, F2, F3}, PSEUDO, 0, NULL},
        !           317:     {"fcmp.lt.s1",       f2, OpRaRbTaSf (4, 0, 1, 0, 1), {P1, P2, F2, F3}, EMPTY},
        !           318:     {"fcmp.lt.s2",       f2, OpRaRbTaSf (4, 0, 1, 0, 2), {P1, P2, F2, F3}, EMPTY},
        !           319:     {"fcmp.lt.s3",       f2, OpRaRbTaSf (4, 0, 1, 0, 3), {P1, P2, F2, F3}, EMPTY},
        !           320:     {"fcmp.le.s0",       f2, OpRaRbTaSf (4, 1, 0, 0, 0), {P1, P2, F2, F3}, EMPTY},
        !           321:     {"fcmp.le",                  f2, OpRaRbTaSf (4, 1, 0, 0, 0), {P1, P2, F2, F3}, PSEUDO, 0, NULL},
        !           322:     {"fcmp.le.s1",       f2, OpRaRbTaSf (4, 1, 0, 0, 1), {P1, P2, F2, F3}, EMPTY},
        !           323:     {"fcmp.le.s2",       f2, OpRaRbTaSf (4, 1, 0, 0, 2), {P1, P2, F2, F3}, EMPTY},
        !           324:     {"fcmp.le.s3",       f2, OpRaRbTaSf (4, 1, 0, 0, 3), {P1, P2, F2, F3}, EMPTY},
        !           325:     {"fcmp.unord.s0",    f2, OpRaRbTaSf (4, 1, 1, 0, 0), {P1, P2, F2, F3}, EMPTY},
        !           326:     {"fcmp.unord",       f2, OpRaRbTaSf (4, 1, 1, 0, 0), {P1, P2, F2, F3}, PSEUDO, 0, NULL},
        !           327:     {"fcmp.unord.s1",    f2, OpRaRbTaSf (4, 1, 1, 0, 1), {P1, P2, F2, F3}, EMPTY},
        !           328:     {"fcmp.unord.s2",    f2, OpRaRbTaSf (4, 1, 1, 0, 2), {P1, P2, F2, F3}, EMPTY},
        !           329:     {"fcmp.unord.s3",    f2, OpRaRbTaSf (4, 1, 1, 0, 3), {P1, P2, F2, F3}, EMPTY},
        !           330:     {"fcmp.eq.unc.s0",   f2, OpRaRbTaSf (4, 0, 0, 1, 0), {P1, P2, F2, F3}, EMPTY},
        !           331:     {"fcmp.eq.unc",      f2, OpRaRbTaSf (4, 0, 0, 1, 0), {P1, P2, F2, F3}, PSEUDO, 0, NULL},
        !           332:     {"fcmp.eq.unc.s1",   f2, OpRaRbTaSf (4, 0, 0, 1, 1), {P1, P2, F2, F3}, EMPTY},
        !           333:     {"fcmp.eq.unc.s2",   f2, OpRaRbTaSf (4, 0, 0, 1, 2), {P1, P2, F2, F3}, EMPTY},
        !           334:     {"fcmp.eq.unc.s3",   f2, OpRaRbTaSf (4, 0, 0, 1, 3), {P1, P2, F2, F3}, EMPTY},
        !           335:     {"fcmp.lt.unc.s0",   f2, OpRaRbTaSf (4, 0, 1, 1, 0), {P1, P2, F2, F3}, EMPTY},
        !           336:     {"fcmp.lt.unc",      f2, OpRaRbTaSf (4, 0, 1, 1, 0), {P1, P2, F2, F3}, PSEUDO, 0, NULL},
        !           337:     {"fcmp.lt.unc.s1",   f2, OpRaRbTaSf (4, 0, 1, 1, 1), {P1, P2, F2, F3}, EMPTY},
        !           338:     {"fcmp.lt.unc.s2",   f2, OpRaRbTaSf (4, 0, 1, 1, 2), {P1, P2, F2, F3}, EMPTY},
        !           339:     {"fcmp.lt.unc.s3",   f2, OpRaRbTaSf (4, 0, 1, 1, 3), {P1, P2, F2, F3}, EMPTY},
        !           340:     {"fcmp.le.unc.s0",   f2, OpRaRbTaSf (4, 1, 0, 1, 0), {P1, P2, F2, F3}, EMPTY},
        !           341:     {"fcmp.le.unc",      f2, OpRaRbTaSf (4, 1, 0, 1, 0), {P1, P2, F2, F3}, PSEUDO, 0, NULL},
        !           342:     {"fcmp.le.unc.s1",   f2, OpRaRbTaSf (4, 1, 0, 1, 1), {P1, P2, F2, F3}, EMPTY},
        !           343:     {"fcmp.le.unc.s2",   f2, OpRaRbTaSf (4, 1, 0, 1, 2), {P1, P2, F2, F3}, EMPTY},
        !           344:     {"fcmp.le.unc.s3",   f2, OpRaRbTaSf (4, 1, 0, 1, 3), {P1, P2, F2, F3}, EMPTY},
        !           345:     {"fcmp.unord.unc.s0", f2, OpRaRbTaSf (4, 1, 1, 1, 0), {P1, P2, F2, F3}, EMPTY},
        !           346:     {"fcmp.unord.unc",    f2, OpRaRbTaSf (4, 1, 1, 1, 0), {P1, P2, F2, F3}, PSEUDO, 0, NULL},
        !           347:     {"fcmp.unord.unc.s1", f2, OpRaRbTaSf (4, 1, 1, 1, 1), {P1, P2, F2, F3}, EMPTY},
        !           348:     {"fcmp.unord.unc.s2", f2, OpRaRbTaSf (4, 1, 1, 1, 2), {P1, P2, F2, F3}, EMPTY},
        !           349:     {"fcmp.unord.unc.s3", f2, OpRaRbTaSf (4, 1, 1, 1, 3), {P1, P2, F2, F3}, EMPTY},
        !           350:
        !           351:     /* pseudo-ops of the above */
        !           352:     {"fcmp.gt.s0",       f2, OpRaRbTaSf (4, 0, 1, 0, 0), {P1, P2, F3, F2}, EMPTY},
        !           353:     {"fcmp.gt",                  f2, OpRaRbTaSf (4, 0, 1, 0, 0), {P1, P2, F3, F2}, PSEUDO, 0, NULL},
        !           354:     {"fcmp.gt.s1",       f2, OpRaRbTaSf (4, 0, 1, 0, 1), {P1, P2, F3, F2}, EMPTY},
        !           355:     {"fcmp.gt.s2",       f2, OpRaRbTaSf (4, 0, 1, 0, 2), {P1, P2, F3, F2}, EMPTY},
        !           356:     {"fcmp.gt.s3",       f2, OpRaRbTaSf (4, 0, 1, 0, 3), {P1, P2, F3, F2}, EMPTY},
        !           357:     {"fcmp.ge.s0",       f2, OpRaRbTaSf (4, 1, 0, 0, 0), {P1, P2, F3, F2}, EMPTY},
        !           358:     {"fcmp.ge",                  f2, OpRaRbTaSf (4, 1, 0, 0, 0), {P1, P2, F3, F2}, PSEUDO, 0, NULL},
        !           359:     {"fcmp.ge.s1",       f2, OpRaRbTaSf (4, 1, 0, 0, 1), {P1, P2, F3, F2}, EMPTY},
        !           360:     {"fcmp.ge.s2",       f2, OpRaRbTaSf (4, 1, 0, 0, 2), {P1, P2, F3, F2}, EMPTY},
        !           361:     {"fcmp.ge.s3",       f2, OpRaRbTaSf (4, 1, 0, 0, 3), {P1, P2, F3, F2}, EMPTY},
        !           362:     {"fcmp.neq.s0",      f2, OpRaRbTaSf (4, 0, 0, 0, 0), {P2, P1, F2, F3}, EMPTY},
        !           363:     {"fcmp.neq",         f2, OpRaRbTaSf (4, 0, 0, 0, 0), {P2, P1, F2, F3}, PSEUDO, 0, NULL},
        !           364:     {"fcmp.neq.s1",      f2, OpRaRbTaSf (4, 0, 0, 0, 1), {P2, P1, F2, F3}, EMPTY},
        !           365:     {"fcmp.neq.s2",      f2, OpRaRbTaSf (4, 0, 0, 0, 2), {P2, P1, F2, F3}, EMPTY},
        !           366:     {"fcmp.neq.s3",      f2, OpRaRbTaSf (4, 0, 0, 0, 3), {P2, P1, F2, F3}, EMPTY},
        !           367:     {"fcmp.nlt.s0",      f2, OpRaRbTaSf (4, 0, 1, 0, 0), {P2, P1, F2, F3}, EMPTY},
        !           368:     {"fcmp.nlt",         f2, OpRaRbTaSf (4, 0, 1, 0, 0), {P2, P1, F2, F3}, PSEUDO, 0, NULL},
        !           369:     {"fcmp.nlt.s1",      f2, OpRaRbTaSf (4, 0, 1, 0, 1), {P2, P1, F2, F3}, EMPTY},
        !           370:     {"fcmp.nlt.s2",      f2, OpRaRbTaSf (4, 0, 1, 0, 2), {P2, P1, F2, F3}, EMPTY},
        !           371:     {"fcmp.nlt.s3",      f2, OpRaRbTaSf (4, 0, 1, 0, 3), {P2, P1, F2, F3}, EMPTY},
        !           372:     {"fcmp.nle.s0",      f2, OpRaRbTaSf (4, 1, 0, 0, 0), {P2, P1, F2, F3}, EMPTY},
        !           373:     {"fcmp.nle",         f2, OpRaRbTaSf (4, 1, 0, 0, 0), {P2, P1, F2, F3}, PSEUDO, 0, NULL},
        !           374:     {"fcmp.nle.s1",      f2, OpRaRbTaSf (4, 1, 0, 0, 1), {P2, P1, F2, F3}, EMPTY},
        !           375:     {"fcmp.nle.s2",      f2, OpRaRbTaSf (4, 1, 0, 0, 2), {P2, P1, F2, F3}, EMPTY},
        !           376:     {"fcmp.nle.s3",      f2, OpRaRbTaSf (4, 1, 0, 0, 3), {P2, P1, F2, F3}, EMPTY},
        !           377:     {"fcmp.ngt.s0",      f2, OpRaRbTaSf (4, 0, 1, 0, 0), {P2, P1, F3, F2}, EMPTY},
        !           378:     {"fcmp.ngt",         f2, OpRaRbTaSf (4, 0, 1, 0, 0), {P2, P1, F3, F2}, PSEUDO, 0, NULL},
        !           379:     {"fcmp.ngt.s1",      f2, OpRaRbTaSf (4, 0, 1, 0, 1), {P2, P1, F3, F2}, EMPTY},
        !           380:     {"fcmp.ngt.s2",      f2, OpRaRbTaSf (4, 0, 1, 0, 2), {P2, P1, F3, F2}, EMPTY},
        !           381:     {"fcmp.ngt.s3",      f2, OpRaRbTaSf (4, 0, 1, 0, 3), {P2, P1, F3, F2}, EMPTY},
        !           382:     {"fcmp.nge.s0",      f2, OpRaRbTaSf (4, 1, 0, 0, 0), {P2, P1, F3, F2}, EMPTY},
        !           383:     {"fcmp.nge",         f2, OpRaRbTaSf (4, 1, 0, 0, 0), {P2, P1, F3, F2}, PSEUDO, 0, NULL},
        !           384:     {"fcmp.nge.s1",      f2, OpRaRbTaSf (4, 1, 0, 0, 1), {P2, P1, F3, F2}, EMPTY},
        !           385:     {"fcmp.nge.s2",      f2, OpRaRbTaSf (4, 1, 0, 0, 2), {P2, P1, F3, F2}, EMPTY},
        !           386:     {"fcmp.nge.s3",      f2, OpRaRbTaSf (4, 1, 0, 0, 3), {P2, P1, F3, F2}, EMPTY},
        !           387:     {"fcmp.ord.s0",      f2, OpRaRbTaSf (4, 1, 1, 0, 0), {P2, P1, F2, F3}, EMPTY},
        !           388:     {"fcmp.ord",         f2, OpRaRbTaSf (4, 1, 1, 0, 0), {P2, P1, F2, F3}, PSEUDO, 0, NULL},
        !           389:     {"fcmp.ord.s1",      f2, OpRaRbTaSf (4, 1, 1, 0, 1), {P2, P1, F2, F3}, EMPTY},
        !           390:     {"fcmp.ord.s2",      f2, OpRaRbTaSf (4, 1, 1, 0, 2), {P2, P1, F2, F3}, EMPTY},
        !           391:     {"fcmp.ord.s3",      f2, OpRaRbTaSf (4, 1, 1, 0, 3), {P2, P1, F2, F3}, EMPTY},
        !           392:     {"fcmp.gt.unc.s0",   f2, OpRaRbTaSf (4, 0, 1, 1, 0), {P1, P2, F3, F2}, EMPTY},
        !           393:     {"fcmp.gt.unc",      f2, OpRaRbTaSf (4, 0, 1, 1, 0), {P1, P2, F3, F2}, PSEUDO, 0, NULL},
        !           394:     {"fcmp.gt.unc.s1",   f2, OpRaRbTaSf (4, 0, 1, 1, 1), {P1, P2, F3, F2}, EMPTY},
        !           395:     {"fcmp.gt.unc.s2",   f2, OpRaRbTaSf (4, 0, 1, 1, 2), {P1, P2, F3, F2}, EMPTY},
        !           396:     {"fcmp.gt.unc.s3",   f2, OpRaRbTaSf (4, 0, 1, 1, 3), {P1, P2, F3, F2}, EMPTY},
        !           397:     {"fcmp.ge.unc.s0",   f2, OpRaRbTaSf (4, 1, 0, 1, 0), {P1, P2, F3, F2}, EMPTY},
        !           398:     {"fcmp.ge.unc",      f2, OpRaRbTaSf (4, 1, 0, 1, 0), {P1, P2, F3, F2}, PSEUDO, 0, NULL},
        !           399:     {"fcmp.ge.unc.s1",   f2, OpRaRbTaSf (4, 1, 0, 1, 1), {P1, P2, F3, F2}, EMPTY},
        !           400:     {"fcmp.ge.unc.s2",   f2, OpRaRbTaSf (4, 1, 0, 1, 2), {P1, P2, F3, F2}, EMPTY},
        !           401:     {"fcmp.ge.unc.s3",   f2, OpRaRbTaSf (4, 1, 0, 1, 3), {P1, P2, F3, F2}, EMPTY},
        !           402:     {"fcmp.neq.unc.s0",          f2, OpRaRbTaSf (4, 0, 0, 1, 0), {P2, P1, F2, F3}, EMPTY},
        !           403:     {"fcmp.neq.unc",     f2, OpRaRbTaSf (4, 0, 0, 1, 0), {P2, P1, F2, F3}, PSEUDO, 0, NULL},
        !           404:     {"fcmp.neq.unc.s1",          f2, OpRaRbTaSf (4, 0, 0, 1, 1), {P2, P1, F2, F3}, EMPTY},
        !           405:     {"fcmp.neq.unc.s2",          f2, OpRaRbTaSf (4, 0, 0, 1, 2), {P2, P1, F2, F3}, EMPTY},
        !           406:     {"fcmp.neq.unc.s3",          f2, OpRaRbTaSf (4, 0, 0, 1, 3), {P2, P1, F2, F3}, EMPTY},
        !           407:     {"fcmp.nlt.unc.s0",          f2, OpRaRbTaSf (4, 0, 1, 1, 0), {P2, P1, F2, F3}, EMPTY},
        !           408:     {"fcmp.nlt.unc",     f2, OpRaRbTaSf (4, 0, 1, 1, 0), {P2, P1, F2, F3}, PSEUDO, 0, NULL},
        !           409:     {"fcmp.nlt.unc.s1",          f2, OpRaRbTaSf (4, 0, 1, 1, 1), {P2, P1, F2, F3}, EMPTY},
        !           410:     {"fcmp.nlt.unc.s2",          f2, OpRaRbTaSf (4, 0, 1, 1, 2), {P2, P1, F2, F3}, EMPTY},
        !           411:     {"fcmp.nlt.unc.s3",          f2, OpRaRbTaSf (4, 0, 1, 1, 3), {P2, P1, F2, F3}, EMPTY},
        !           412:     {"fcmp.nle.unc.s0",          f2, OpRaRbTaSf (4, 1, 0, 1, 0), {P2, P1, F2, F3}, EMPTY},
        !           413:     {"fcmp.nle.unc",     f2, OpRaRbTaSf (4, 1, 0, 1, 0), {P2, P1, F2, F3}, PSEUDO, 0, NULL},
        !           414:     {"fcmp.nle.unc.s1",          f2, OpRaRbTaSf (4, 1, 0, 1, 1), {P2, P1, F2, F3}, EMPTY},
        !           415:     {"fcmp.nle.unc.s2",          f2, OpRaRbTaSf (4, 1, 0, 1, 2), {P2, P1, F2, F3}, EMPTY},
        !           416:     {"fcmp.nle.unc.s3",          f2, OpRaRbTaSf (4, 1, 0, 1, 3), {P2, P1, F2, F3}, EMPTY},
        !           417:     {"fcmp.ngt.unc.s0",          f2, OpRaRbTaSf (4, 0, 1, 1, 0), {P2, P1, F3, F2}, EMPTY},
        !           418:     {"fcmp.ngt.unc",     f2, OpRaRbTaSf (4, 0, 1, 1, 0), {P2, P1, F3, F2}, PSEUDO, 0, NULL},
        !           419:     {"fcmp.ngt.unc.s1",          f2, OpRaRbTaSf (4, 0, 1, 1, 1), {P2, P1, F3, F2}, EMPTY},
        !           420:     {"fcmp.ngt.unc.s2",          f2, OpRaRbTaSf (4, 0, 1, 1, 2), {P2, P1, F3, F2}, EMPTY},
        !           421:     {"fcmp.ngt.unc.s3",          f2, OpRaRbTaSf (4, 0, 1, 1, 3), {P2, P1, F3, F2}, EMPTY},
        !           422:     {"fcmp.nge.unc.s0",          f2, OpRaRbTaSf (4, 1, 0, 1, 0), {P2, P1, F3, F2}, EMPTY},
        !           423:     {"fcmp.nge.unc",     f2, OpRaRbTaSf (4, 1, 0, 1, 0), {P2, P1, F3, F2}, PSEUDO, 0, NULL},
        !           424:     {"fcmp.nge.unc.s1",          f2, OpRaRbTaSf (4, 1, 0, 1, 1), {P2, P1, F3, F2}, EMPTY},
        !           425:     {"fcmp.nge.unc.s2",          f2, OpRaRbTaSf (4, 1, 0, 1, 2), {P2, P1, F3, F2}, EMPTY},
        !           426:     {"fcmp.nge.unc.s3",          f2, OpRaRbTaSf (4, 1, 0, 1, 3), {P2, P1, F3, F2}, EMPTY},
        !           427:     {"fcmp.ord.unc.s0",          f2, OpRaRbTaSf (4, 1, 1, 1, 0), {P2, P1, F2, F3}, EMPTY},
        !           428:     {"fcmp.ord.unc",     f2, OpRaRbTaSf (4, 1, 1, 1, 0), {P2, P1, F2, F3}, PSEUDO, 0, NULL},
        !           429:     {"fcmp.ord.unc.s1",   f2, OpRaRbTaSf (4, 1, 1, 1, 1), {P2, P1, F2, F3}, EMPTY},
        !           430:     {"fcmp.ord.unc.s2",   f2, OpRaRbTaSf (4, 1, 1, 1, 2), {P2, P1, F2, F3}, EMPTY},
        !           431:     {"fcmp.ord.unc.s3",   f2, OpRaRbTaSf (4, 1, 1, 1, 3), {P2, P1, F2, F3}, EMPTY},
        !           432:
        !           433:     {"fclass.m",       f2, OpTa (5, 0), {P1, P2, F2, IMMU9}, EMPTY},
        !           434:     {"fclass.nm",      f2, OpTa (5, 0), {P2, P1, F2, IMMU9}, PSEUDO, 0, NULL},
        !           435:     {"fclass.m.unc",   f2, OpTa (5, 1), {P1, P2, F2, IMMU9}, EMPTY},
        !           436:     {"fclass.nm.unc",  f2, OpTa (5, 1), {P2, P1, F2, IMMU9}, PSEUDO, 0, NULL},
        !           437:
        !           438:     /* note: fnorm and fcvt.xuf have identical encodings! */
        !           439:     {"fnorm.s0",       f, OpXaSfF2F4 (0x8, 0, 0, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           440:     {"fnorm",          f, OpXaSfF2F4 (0x8, 0, 0, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           441:     {"fnorm.s1",       f, OpXaSfF2F4 (0x8, 0, 1, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           442:     {"fnorm.s2",       f, OpXaSfF2F4 (0x8, 0, 2, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           443:     {"fnorm.s3",       f, OpXaSfF2F4 (0x8, 0, 3, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           444:     {"fnorm.s.s0",     f, OpXaSfF2F4 (0x8, 1, 0, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           445:     {"fnorm.s",                f, OpXaSfF2F4 (0x8, 1, 0, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           446:     {"fnorm.s.s1",     f, OpXaSfF2F4 (0x8, 1, 1, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           447:     {"fnorm.s.s2",     f, OpXaSfF2F4 (0x8, 1, 2, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           448:     {"fnorm.s.s3",     f, OpXaSfF2F4 (0x8, 1, 3, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           449:     {"fcvt.xuf.s0",    f, OpXaSfF2F4 (0x8, 0, 0, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           450:     {"fcvt.xuf",       f, OpXaSfF2F4 (0x8, 0, 0, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           451:     {"fcvt.xuf.s1",    f, OpXaSfF2F4 (0x8, 0, 1, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           452:     {"fcvt.xuf.s2",    f, OpXaSfF2F4 (0x8, 0, 2, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           453:     {"fcvt.xuf.s3",    f, OpXaSfF2F4 (0x8, 0, 3, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           454:     {"fcvt.xuf.s.s0",  f, OpXaSfF2F4 (0x8, 1, 0, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           455:     {"fcvt.xuf.s",     f, OpXaSfF2F4 (0x8, 1, 0, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           456:     {"fcvt.xuf.s.s1",  f, OpXaSfF2F4 (0x8, 1, 1, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           457:     {"fcvt.xuf.s.s2",  f, OpXaSfF2F4 (0x8, 1, 2, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           458:     {"fcvt.xuf.s.s3",  f, OpXaSfF2F4 (0x8, 1, 3, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           459:     {"fadd.s0",                f, OpXaSfF4 (0x8, 0, 0, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           460:     {"fadd",           f, OpXaSfF4 (0x8, 0, 0, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           461:     {"fadd.s1",                f, OpXaSfF4 (0x8, 0, 1, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           462:     {"fadd.s2",                f, OpXaSfF4 (0x8, 0, 2, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           463:     {"fadd.s3",                f, OpXaSfF4 (0x8, 0, 3, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           464:     {"fadd.s.s0",      f, OpXaSfF4 (0x8, 1, 0, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           465:     {"fadd.s",         f, OpXaSfF4 (0x8, 1, 0, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           466:     {"fadd.s.s1",      f, OpXaSfF4 (0x8, 1, 1, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           467:     {"fadd.s.s2",      f, OpXaSfF4 (0x8, 1, 2, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           468:     {"fadd.s.s3",      f, OpXaSfF4 (0x8, 1, 3, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           469:     {"fmpy.s0",                f, OpXaSfF2 (0x8, 0, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           470:     {"fmpy",           f, OpXaSfF2 (0x8, 0, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           471:     {"fmpy.s1",                f, OpXaSfF2 (0x8, 0, 1, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           472:     {"fmpy.s2",                f, OpXaSfF2 (0x8, 0, 2, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           473:     {"fmpy.s3",                f, OpXaSfF2 (0x8, 0, 3, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           474:     {"fmpy.s.s0",      f, OpXaSfF2 (0x8, 1, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           475:     {"fmpy.s",         f, OpXaSfF2 (0x8, 1, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           476:     {"fmpy.s.s1",      f, OpXaSfF2 (0x8, 1, 1, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           477:     {"fmpy.s.s2",      f, OpXaSfF2 (0x8, 1, 2, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           478:     {"fmpy.s.s3",      f, OpXaSfF2 (0x8, 1, 3, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           479:     {"fma.s0",         f, OpXaSf (0x8, 0, 0), {F1, F3, F4, F2}, EMPTY},
        !           480:     {"fma",            f, OpXaSf (0x8, 0, 0), {F1, F3, F4, F2}, PSEUDO, 0, NULL},
        !           481:     {"fma.s1",         f, OpXaSf (0x8, 0, 1), {F1, F3, F4, F2}, EMPTY},
        !           482:     {"fma.s2",         f, OpXaSf (0x8, 0, 2), {F1, F3, F4, F2}, EMPTY},
        !           483:     {"fma.s3",         f, OpXaSf (0x8, 0, 3), {F1, F3, F4, F2}, EMPTY},
        !           484:     {"fma.s.s0",       f, OpXaSf (0x8, 1, 0), {F1, F3, F4, F2}, EMPTY},
        !           485:     {"fma.s",          f, OpXaSf (0x8, 1, 0), {F1, F3, F4, F2}, PSEUDO, 0, NULL},
        !           486:     {"fma.s.s1",       f, OpXaSf (0x8, 1, 1), {F1, F3, F4, F2}, EMPTY},
        !           487:     {"fma.s.s2",       f, OpXaSf (0x8, 1, 2), {F1, F3, F4, F2}, EMPTY},
        !           488:     {"fma.s.s3",       f, OpXaSf (0x8, 1, 3), {F1, F3, F4, F2}, EMPTY},
        !           489:
        !           490:     {"fnorm.d.s0",     f, OpXaSfF2F4 (0x9, 0, 0, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           491:     {"fnorm.d",                f, OpXaSfF2F4 (0x9, 0, 0, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           492:     {"fnorm.d.s1",     f, OpXaSfF2F4 (0x9, 0, 1, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           493:     {"fnorm.d.s2",     f, OpXaSfF2F4 (0x9, 0, 2, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           494:     {"fnorm.d.s3",     f, OpXaSfF2F4 (0x9, 0, 3, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           495:     {"fcvt.xuf.d.s0",  f, OpXaSfF2F4 (0x9, 0, 0, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           496:     {"fcvt.xuf.d",     f, OpXaSfF2F4 (0x9, 0, 0, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           497:     {"fcvt.xuf.d.s1",  f, OpXaSfF2F4 (0x9, 0, 1, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           498:     {"fcvt.xuf.d.s2",  f, OpXaSfF2F4 (0x9, 0, 2, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           499:     {"fcvt.xuf.d.s3",  f, OpXaSfF2F4 (0x9, 0, 3, 0, 1), {F1, F3}, PSEUDO, 0, NULL},
        !           500:     {"fadd.d.s0",      f, OpXaSfF4 (0x9, 0, 0, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           501:     {"fadd.d",         f, OpXaSfF4 (0x9, 0, 0, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           502:     {"fadd.d.s1",      f, OpXaSfF4 (0x9, 0, 1, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           503:     {"fadd.d.s2",      f, OpXaSfF4 (0x9, 0, 2, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           504:     {"fadd.d.s3",      f, OpXaSfF4 (0x9, 0, 3, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           505:     {"fmpy.d.s0",      f, OpXaSfF2 (0x9, 0, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           506:     {"fmpy.d",         f, OpXaSfF2 (0x9, 0, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           507:     {"fmpy.d.s1",      f, OpXaSfF2 (0x9, 0, 1, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           508:     {"fmpy.d.s2",      f, OpXaSfF2 (0x9, 0, 2, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           509:     {"fmpy.d.s3",      f, OpXaSfF2 (0x9, 0, 3, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           510:     {"fma.d.s0",       f, OpXaSf (0x9, 0, 0), {F1, F3, F4, F2}, EMPTY},
        !           511:     {"fma.d",          f, OpXaSf (0x9, 0, 0), {F1, F3, F4, F2}, PSEUDO, 0, NULL},
        !           512:     {"fma.d.s1",       f, OpXaSf (0x9, 0, 1), {F1, F3, F4, F2}, EMPTY},
        !           513:     {"fma.d.s2",       f, OpXaSf (0x9, 0, 2), {F1, F3, F4, F2}, EMPTY},
        !           514:     {"fma.d.s3",       f, OpXaSf (0x9, 0, 3), {F1, F3, F4, F2}, EMPTY},
        !           515:
        !           516:     {"fpmpy.s0",       f, OpXaSfF2 (0x9, 1, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           517:     {"fpmpy",          f, OpXaSfF2 (0x9, 1, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           518:     {"fpmpy.s1",       f, OpXaSfF2 (0x9, 1, 1, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           519:     {"fpmpy.s2",       f, OpXaSfF2 (0x9, 1, 2, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           520:     {"fpmpy.s3",       f, OpXaSfF2 (0x9, 1, 3, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           521:     {"fpma.s0",                f, OpXaSf   (0x9, 1, 0), {F1, F3, F4, F2}, EMPTY},
        !           522:     {"fpma",           f, OpXaSf   (0x9, 1, 0), {F1, F3, F4, F2}, PSEUDO, 0, NULL},
        !           523:     {"fpma.s1",                f, OpXaSf   (0x9, 1, 1), {F1, F3, F4, F2}, EMPTY},
        !           524:     {"fpma.s2",                f, OpXaSf   (0x9, 1, 2), {F1, F3, F4, F2}, EMPTY},
        !           525:     {"fpma.s3",                f, OpXaSf   (0x9, 1, 3), {F1, F3, F4, F2}, EMPTY},
        !           526:
        !           527:     {"fsub.s0",                f, OpXaSfF4 (0xa, 0, 0, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           528:     {"fsub",           f, OpXaSfF4 (0xa, 0, 0, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           529:     {"fsub.s1",                f, OpXaSfF4 (0xa, 0, 1, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           530:     {"fsub.s2",                f, OpXaSfF4 (0xa, 0, 2, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           531:     {"fsub.s3",                f, OpXaSfF4 (0xa, 0, 3, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           532:     {"fsub.s.s0",      f, OpXaSfF4 (0xa, 1, 0, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           533:     {"fsub.s",         f, OpXaSfF4 (0xa, 1, 0, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           534:     {"fsub.s.s1",      f, OpXaSfF4 (0xa, 1, 1, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           535:     {"fsub.s.s2",      f, OpXaSfF4 (0xa, 1, 2, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           536:     {"fsub.s.s3",      f, OpXaSfF4 (0xa, 1, 3, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           537:     {"fms.s0",         f, OpXaSf   (0xa, 0, 0), {F1, F3, F4, F2}, EMPTY},
        !           538:     {"fms",            f, OpXaSf   (0xa, 0, 0), {F1, F3, F4, F2}, PSEUDO, 0, NULL},
        !           539:     {"fms.s1",         f, OpXaSf   (0xa, 0, 1), {F1, F3, F4, F2}, EMPTY},
        !           540:     {"fms.s2",         f, OpXaSf   (0xa, 0, 2), {F1, F3, F4, F2}, EMPTY},
        !           541:     {"fms.s3",         f, OpXaSf   (0xa, 0, 3), {F1, F3, F4, F2}, EMPTY},
        !           542:     {"fms.s.s0",       f, OpXaSf   (0xa, 1, 0), {F1, F3, F4, F2}, EMPTY},
        !           543:     {"fms.s",          f, OpXaSf   (0xa, 1, 0), {F1, F3, F4, F2}, PSEUDO, 0, NULL},
        !           544:     {"fms.s.s1",       f, OpXaSf   (0xa, 1, 1), {F1, F3, F4, F2}, EMPTY},
        !           545:     {"fms.s.s2",       f, OpXaSf   (0xa, 1, 2), {F1, F3, F4, F2}, EMPTY},
        !           546:     {"fms.s.s3",       f, OpXaSf   (0xa, 1, 3), {F1, F3, F4, F2}, EMPTY},
        !           547:     {"fsub.d.s0",      f, OpXaSfF4 (0xb, 0, 0, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           548:     {"fsub.d",         f, OpXaSfF4 (0xb, 0, 0, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           549:     {"fsub.d.s1",      f, OpXaSfF4 (0xb, 0, 1, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           550:     {"fsub.d.s2",      f, OpXaSfF4 (0xb, 0, 2, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           551:     {"fsub.d.s3",      f, OpXaSfF4 (0xb, 0, 3, 1), {F1, F3, F2}, PSEUDO, 0, NULL},
        !           552:     {"fms.d.s0",       f, OpXaSf   (0xb, 0, 0), {F1, F3, F4, F2}, EMPTY},
        !           553:     {"fms.d",          f, OpXaSf   (0xb, 0, 0), {F1, F3, F4, F2}, PSEUDO, 0, NULL},
        !           554:     {"fms.d.s1",       f, OpXaSf   (0xb, 0, 1), {F1, F3, F4, F2}, EMPTY},
        !           555:     {"fms.d.s2",       f, OpXaSf   (0xb, 0, 2), {F1, F3, F4, F2}, EMPTY},
        !           556:     {"fms.d.s3",       f, OpXaSf   (0xb, 0, 3), {F1, F3, F4, F2}, EMPTY},
        !           557:
        !           558:     {"fpms.s0",                f, OpXaSf (0xb, 1, 0), {F1, F3, F4, F2}, EMPTY},
        !           559:     {"fpms",           f, OpXaSf (0xb, 1, 0), {F1, F3, F4, F2}, PSEUDO, 0, NULL},
        !           560:     {"fpms.s1",                f, OpXaSf (0xb, 1, 1), {F1, F3, F4, F2}, EMPTY},
        !           561:     {"fpms.s2",                f, OpXaSf (0xb, 1, 2), {F1, F3, F4, F2}, EMPTY},
        !           562:     {"fpms.s3",                f, OpXaSf (0xb, 1, 3), {F1, F3, F4, F2}, EMPTY},
        !           563:
        !           564:     {"fnmpy.s0",       f, OpXaSfF2 (0xc, 0, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           565:     {"fnmpy",          f, OpXaSfF2 (0xc, 0, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           566:     {"fnmpy.s1",       f, OpXaSfF2 (0xc, 0, 1, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           567:     {"fnmpy.s2",       f, OpXaSfF2 (0xc, 0, 2, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           568:     {"fnmpy.s3",       f, OpXaSfF2 (0xc, 0, 3, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           569:     {"fnmpy.s.s0",     f, OpXaSfF2 (0xc, 1, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           570:     {"fnmpy.s",                f, OpXaSfF2 (0xc, 1, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           571:     {"fnmpy.s.s1",     f, OpXaSfF2 (0xc, 1, 1, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           572:     {"fnmpy.s.s2",     f, OpXaSfF2 (0xc, 1, 2, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           573:     {"fnmpy.s.s3",     f, OpXaSfF2 (0xc, 1, 3, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           574:     {"fnma.s0",                f, OpXaSf (0xc, 0, 0), {F1, F3, F4, F2}, EMPTY},
        !           575:     {"fnma",           f, OpXaSf (0xc, 0, 0), {F1, F3, F4, F2}, PSEUDO, 0, NULL},
        !           576:     {"fnma.s1",                f, OpXaSf (0xc, 0, 1), {F1, F3, F4, F2}, EMPTY},
        !           577:     {"fnma.s2",                f, OpXaSf (0xc, 0, 2), {F1, F3, F4, F2}, EMPTY},
        !           578:     {"fnma.s3",                f, OpXaSf (0xc, 0, 3), {F1, F3, F4, F2}, EMPTY},
        !           579:     {"fnma.s.s0",      f, OpXaSf (0xc, 1, 0), {F1, F3, F4, F2}, EMPTY},
        !           580:     {"fnma.s",         f, OpXaSf (0xc, 1, 0), {F1, F3, F4, F2}, PSEUDO, 0, NULL},
        !           581:     {"fnma.s.s1",      f, OpXaSf (0xc, 1, 1), {F1, F3, F4, F2}, EMPTY},
        !           582:     {"fnma.s.s2",      f, OpXaSf (0xc, 1, 2), {F1, F3, F4, F2}, EMPTY},
        !           583:     {"fnma.s.s3",      f, OpXaSf (0xc, 1, 3), {F1, F3, F4, F2}, EMPTY},
        !           584:     {"fnmpy.d.s0",     f, OpXaSfF2 (0xd, 0, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           585:     {"fnmpy.d",                f, OpXaSfF2 (0xd, 0, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           586:     {"fnmpy.d.s1",     f, OpXaSfF2 (0xd, 0, 1, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           587:     {"fnmpy.d.s2",     f, OpXaSfF2 (0xd, 0, 2, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           588:     {"fnmpy.d.s3",     f, OpXaSfF2 (0xd, 0, 3, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           589:     {"fnma.d.s0",      f, OpXaSf (0xd, 0, 0), {F1, F3, F4, F2}, EMPTY},
        !           590:     {"fnma.d",         f, OpXaSf (0xd, 0, 0), {F1, F3, F4, F2}, PSEUDO, 0, NULL},
        !           591:     {"fnma.d.s1",      f, OpXaSf (0xd, 0, 1), {F1, F3, F4, F2}, EMPTY},
        !           592:     {"fnma.d.s2",      f, OpXaSf (0xd, 0, 2), {F1, F3, F4, F2}, EMPTY},
        !           593:     {"fnma.d.s3",      f, OpXaSf (0xd, 0, 3), {F1, F3, F4, F2}, EMPTY},
        !           594:
        !           595:     {"fpnmpy.s0",      f, OpXaSfF2 (0xd, 1, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           596:     {"fpnmpy",         f, OpXaSfF2 (0xd, 1, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           597:     {"fpnmpy.s1",      f, OpXaSfF2 (0xd, 1, 1, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           598:     {"fpnmpy.s2",      f, OpXaSfF2 (0xd, 1, 2, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           599:     {"fpnmpy.s3",      f, OpXaSfF2 (0xd, 1, 3, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           600:     {"fpnma.s0",       f, OpXaSf   (0xd, 1, 0), {F1, F3, F4, F2}, EMPTY},
        !           601:     {"fpnma",          f, OpXaSf   (0xd, 1, 0), {F1, F3, F4, F2}, PSEUDO, 0, NULL},
        !           602:     {"fpnma.s1",       f, OpXaSf   (0xd, 1, 1), {F1, F3, F4, F2}, EMPTY},
        !           603:     {"fpnma.s2",       f, OpXaSf   (0xd, 1, 2), {F1, F3, F4, F2}, EMPTY},
        !           604:     {"fpnma.s3",       f, OpXaSf   (0xd, 1, 3), {F1, F3, F4, F2}, EMPTY},
        !           605:
        !           606:     {"xmpy.l",         f, OpXaX2F2 (0xe, 1, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           607:     {"xmpy.lu",                f, OpXaX2F2 (0xe, 1, 0, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           608:     {"xmpy.h",         f, OpXaX2F2 (0xe, 1, 3, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           609:     {"xmpy.hu",                f, OpXaX2F2 (0xe, 1, 2, 0), {F1, F3, F4}, PSEUDO, 0, NULL},
        !           610:     {"xma.l",          f, OpXaX2 (0xe, 1, 0), {F1, F3, F4, F2}, EMPTY},
        !           611:     {"xma.lu",         f, OpXaX2 (0xe, 1, 0), {F1, F3, F4, F2}, PSEUDO, 0, NULL},
        !           612:     {"xma.h",          f, OpXaX2 (0xe, 1, 3), {F1, F3, F4, F2}, EMPTY},
        !           613:     {"xma.hu",         f, OpXaX2 (0xe, 1, 2), {F1, F3, F4, F2}, EMPTY},
        !           614:
        !           615:     {"fselect",                f, OpXa (0xe, 0), {F1, F3, F4, F2}, EMPTY},
        !           616:
        !           617:     {NULL, 0, 0, 0, 0, {0}, 0, 0, NULL}
        !           618:   };
        !           619:
        !           620: #undef f0
        !           621: #undef f
        !           622: #undef f2
        !           623: #undef bF2
        !           624: #undef bF4
        !           625: #undef bQ
        !           626: #undef bRa
        !           627: #undef bRb
        !           628: #undef bSf
        !           629: #undef bTa
        !           630: #undef bXa
        !           631: #undef bXb
        !           632: #undef bX2
        !           633: #undef bX6
        !           634: #undef mF2
        !           635: #undef mF4
        !           636: #undef mQ
        !           637: #undef mRa
        !           638: #undef mRb
        !           639: #undef mSf
        !           640: #undef mTa
        !           641: #undef mXa
        !           642: #undef mXb
        !           643: #undef mX2
        !           644: #undef mX6
        !           645: #undef OpXa
        !           646: #undef OpXaSf
        !           647: #undef OpXaSfF2
        !           648: #undef OpXaSfF4
        !           649: #undef OpXaSfF2F4
        !           650: #undef OpXaX2
        !           651: #undef OpRaRbTaSf
        !           652: #undef OpTa
        !           653: #undef OpXbQSf
        !           654: #undef OpXbX6
        !           655: #undef OpXbX6F2
        !           656: #undef OpXbX6Sf
        !           657: #undef EMPTY

CVSweb <webmaster@jp.NetBSD.org>