1 /* ia64-opc-m.c -- IA-64 `M' opcode table. 2 Copyright 1998, 1999, 2000, 2002 Free Software Foundation, Inc. 3 Contributed by David Mosberger-Tang <davidm@hpl.hp.com> 4 5 This file is part of GDB, GAS, and the GNU binutils. 6 7 GDB, GAS, and the GNU binutils are free software; you can redistribute 8 them and/or modify them under the terms of the GNU General Public 9 License as published by the Free Software Foundation; either version 10 2, or (at your option) any later version. 11 12 GDB, GAS, and the GNU binutils are distributed in the hope that they 13 will be useful, but WITHOUT ANY WARRANTY; without even the implied 14 warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See 15 the GNU General Public License for more details. 16 17 You should have received a copy of the GNU General Public License 18 along with this file; see the file COPYING. If not, write to the 19 Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 20 02111-1307, USA. */ 21 22 #include "ia64-opc.h" 23 24 #define M0 IA64_TYPE_M, 0 25 #define M IA64_TYPE_M, 1 26 #define M2 IA64_TYPE_M, 2 27 28 /* instruction bit fields: */ 29 #define bM(x) (((ia64_insn) ((x) & 0x1)) << 36) 30 #define bX(x) (((ia64_insn) ((x) & 0x1)) << 27) 31 #define bX2(x) (((ia64_insn) ((x) & 0x3)) << 31) 32 #define bX3(x) (((ia64_insn) ((x) & 0x7)) << 33) 33 #define bX4(x) (((ia64_insn) ((x) & 0xf)) << 27) 34 #define bX6a(x) (((ia64_insn) ((x) & 0x3f)) << 30) 35 #define bX6b(x) (((ia64_insn) ((x) & 0x3f)) << 27) 36 #define bX7(x) (((ia64_insn) ((x) & 0x1)) << 36) /* note: alias for bM() */ 37 #define bY(x) (((ia64_insn) ((x) & 0x1)) << 26) 38 #define bHint(x) (((ia64_insn) ((x) & 0x3)) << 28) 39 40 #define mM bM (-1) 41 #define mX bX (-1) 42 #define mX2 bX2 (-1) 43 #define mX3 bX3 (-1) 44 #define mX4 bX4 (-1) 45 #define mX6a bX6a (-1) 46 #define mX6b bX6b (-1) 47 #define mX7 bX7 (-1) 48 #define mY bY (-1) 49 #define mHint bHint (-1) 50 51 #define OpX3(a,b) (bOp (a) | bX3 (b)), (mOp | mX3) 52 #define OpX3X6b(a,b,c) (bOp (a) | bX3 (b) | bX6b (c)), \ 53 (mOp | mX3 | mX6b) 54 #define OpX3X6bX7(a,b,c,d) (bOp (a) | bX3 (b) | bX6b (c) | bX7 (d)), \ 55 (mOp | mX3 | mX6b | mX7) 56 #define OpX3X4(a,b,c) (bOp (a) | bX3 (b) | bX4 (c)), \ 57 (mOp | mX3 | mX4) 58 #define OpX3X4X2(a,b,c,d) (bOp (a) | bX3 (b) | bX4 (c) | bX2 (d)), \ 59 (mOp | mX3 | mX4 | mX2) 60 #define OpX3X4X2Y(a,b,c,d,e) (bOp (a) | bX3 (b) | bX4 (c) | bX2 (d) | bY (e)), \ 61 (mOp | mX3 | mX4 | mX2 | mY) 62 #define OpX6aHint(a,b,c) (bOp (a) | bX6a (b) | bHint (c)), \ 63 (mOp | mX6a | mHint) 64 #define OpXX6aHint(a,b,c,d) (bOp (a) | bX (b) | bX6a (c) | bHint (d)), \ 65 (mOp | mX | mX6a | mHint) 66 #define OpMXX6a(a,b,c,d) \ 67 (bOp (a) | bM (b) | bX (c) | bX6a (d)), (mOp | mM | mX | mX6a) 68 #define OpMXX6aHint(a,b,c,d,e) \ 69 (bOp (a) | bM (b) | bX (c) | bX6a (d) | bHint (e)), \ 70 (mOp | mM | mX | mX6a | mHint) 71 72 /* Used to initialise unused fields in ia64_opcode struct, 73 in order to stop gcc from complaining. */ 74 #define EMPTY 0,0,NULL 75 76 struct ia64_opcode ia64_opcodes_m[] = 77 { 78 /* M-type instruction encodings (sorted according to major opcode). */ 79 80 {"chk.a.nc", M0, OpX3 (0, 4), {R1, TGT25c}, EMPTY}, 81 {"chk.a.clr", M0, OpX3 (0, 5), {R1, TGT25c}, EMPTY}, 82 {"chk.a.nc", M0, OpX3 (0, 6), {F1, TGT25c}, EMPTY}, 83 {"chk.a.clr", M0, OpX3 (0, 7), {F1, TGT25c}, EMPTY}, 84 85 {"invala", M0, OpX3X4X2 (0, 0, 0, 1), {}, EMPTY}, 86 {"fwb", M0, OpX3X4X2 (0, 0, 0, 2), {}, EMPTY}, 87 {"mf", M0, OpX3X4X2 (0, 0, 2, 2), {}, EMPTY}, 88 {"mf.a", M0, OpX3X4X2 (0, 0, 3, 2), {}, EMPTY}, 89 {"srlz.d", M0, OpX3X4X2 (0, 0, 0, 3), {}, EMPTY}, 90 {"srlz.i", M0, OpX3X4X2 (0, 0, 1, 3), {}, EMPTY}, 91 {"sync.i", M0, OpX3X4X2 (0, 0, 3, 3), {}, EMPTY}, 92 {"flushrs", M0, OpX3X4X2 (0, 0, 0xc, 0), {}, FIRST | NO_PRED, 0, NULL}, 93 {"loadrs", M0, OpX3X4X2 (0, 0, 0xa, 0), {}, FIRST | NO_PRED, 0, NULL}, 94 {"invala.e", M0, OpX3X4X2 (0, 0, 2, 1), {R1}, EMPTY}, 95 {"invala.e", M0, OpX3X4X2 (0, 0, 3, 1), {F1}, EMPTY}, 96 {"mov.m", M, OpX3X4X2 (0, 0, 8, 2), {AR3, IMM8}, EMPTY}, 97 98 {"break.m", M0, OpX3X4X2 (0, 0, 0, 0), {IMMU21}, EMPTY}, 99 {"nop.m", M0, OpX3X4X2Y (0, 0, 1, 0, 0), {IMMU21}, EMPTY}, 100 {"hint.m", M0, OpX3X4X2Y (0, 0, 1, 0, 1), {IMMU21}, EMPTY}, 101 102 {"sum", M0, OpX3X4 (0, 0, 4), {IMMU24}, EMPTY}, 103 {"rum", M0, OpX3X4 (0, 0, 5), {IMMU24}, EMPTY}, 104 {"ssm", M0, OpX3X4 (0, 0, 6), {IMMU24}, PRIV, 0, NULL}, 105 {"rsm", M0, OpX3X4 (0, 0, 7), {IMMU24}, PRIV, 0, NULL}, 106 107 {"mov.m", M, OpX3X6b (1, 0, 0x2a), {AR3, R2}, EMPTY}, 108 {"mov.m", M, OpX3X6b (1, 0, 0x22), {R1, AR3}, EMPTY}, 109 {"mov", M, OpX3X6b (1, 0, 0x2c), {CR3, R2}, PRIV, 0, NULL}, 110 {"mov", M, OpX3X6b (1, 0, 0x24), {R1, CR3}, PRIV, 0, NULL}, 111 112 {"alloc", M, OpX3 (1, 6), {R1, AR_PFS, SOF, SOL, SOR}, FIRST|NO_PRED|MOD_RRBS, 0, NULL}, 113 114 {"mov", M, OpX3X6b (1, 0, 0x2d), {PSR_L, R2}, PRIV, 0, NULL}, 115 {"mov", M, OpX3X6b (1, 0, 0x29), {PSR_UM, R2}, EMPTY}, 116 {"mov", M, OpX3X6b (1, 0, 0x25), {R1, PSR}, PRIV, 0, NULL}, 117 {"mov", M, OpX3X6b (1, 0, 0x21), {R1, PSR_UM}, EMPTY}, 118 {"probe.r", M, OpX3X6b (1, 0, 0x38), {R1, R3, R2}, EMPTY}, 119 {"probe.w", M, OpX3X6b (1, 0, 0x39), {R1, R3, R2}, EMPTY}, 120 {"probe.r", M, OpX3X6b (1, 0, 0x18), {R1, R3, IMMU2}, EMPTY}, 121 {"probe.w", M, OpX3X6b (1, 0, 0x19), {R1, R3, IMMU2}, EMPTY}, 122 {"probe.rw.fault", M0, OpX3X6b (1, 0, 0x31), {R3, IMMU2}, EMPTY}, 123 {"probe.r.fault", M0, OpX3X6b (1, 0, 0x32), {R3, IMMU2}, EMPTY}, 124 {"probe.w.fault", M0, OpX3X6b (1, 0, 0x33), {R3, IMMU2}, EMPTY}, 125 {"itc.d", M0, OpX3X6b (1, 0, 0x2e), {R2}, LAST | PRIV, 0, NULL}, 126 {"itc.i", M0, OpX3X6b (1, 0, 0x2f), {R2}, LAST | PRIV, 0, NULL}, 127 128 {"mov", M, OpX3X6b (1, 0, 0x00), {RR_R3, R2}, PRIV, 0, NULL}, 129 {"mov", M, OpX3X6b (1, 0, 0x01), {DBR_R3, R2}, PRIV, 0, NULL}, 130 {"mov", M, OpX3X6b (1, 0, 0x02), {IBR_R3, R2}, PRIV, 0, NULL}, 131 {"mov", M, OpX3X6b (1, 0, 0x03), {PKR_R3, R2}, PRIV, 0, NULL}, 132 {"mov", M, OpX3X6b (1, 0, 0x04), {PMC_R3, R2}, PRIV, 0, NULL}, 133 {"mov", M, OpX3X6b (1, 0, 0x05), {PMD_R3, R2}, PRIV, 0, NULL}, 134 {"mov", M, OpX3X6b (1, 0, 0x06), {MSR_R3, R2}, PRIV, 0, NULL}, 135 {"itr.d", M, OpX3X6b (1, 0, 0x0e), {DTR_R3, R2}, PRIV, 0, NULL}, 136 {"itr.i", M, OpX3X6b (1, 0, 0x0f), {ITR_R3, R2}, PRIV, 0, NULL}, 137 138 {"mov", M, OpX3X6b (1, 0, 0x10), {R1, RR_R3}, PRIV, 0, NULL}, 139 {"mov", M, OpX3X6b (1, 0, 0x11), {R1, DBR_R3}, PRIV, 0, NULL}, 140 {"mov", M, OpX3X6b (1, 0, 0x12), {R1, IBR_R3}, PRIV, 0, NULL}, 141 {"mov", M, OpX3X6b (1, 0, 0x13), {R1, PKR_R3}, PRIV, 0, NULL}, 142 {"mov", M, OpX3X6b (1, 0, 0x14), {R1, PMC_R3}, PRIV, 0, NULL}, 143 {"mov", M, OpX3X6b (1, 0, 0x15), {R1, PMD_R3}, EMPTY}, 144 {"mov", M, OpX3X6b (1, 0, 0x16), {R1, MSR_R3}, PRIV, 0, NULL}, 145 {"mov", M, OpX3X6b (1, 0, 0x17), {R1, CPUID_R3}, EMPTY}, 146 147 {"ptc.l", M0, OpX3X6b (1, 0, 0x09), {R3, R2}, PRIV, 0, NULL}, 148 {"ptc.g", M0, OpX3X6b (1, 0, 0x0a), {R3, R2}, LAST | PRIV, 0, NULL}, 149 {"ptc.ga", M0, OpX3X6b (1, 0, 0x0b), {R3, R2}, LAST | PRIV, 0, NULL}, 150 {"ptr.d", M0, OpX3X6b (1, 0, 0x0c), {R3, R2}, PRIV, 0, NULL}, 151 {"ptr.i", M0, OpX3X6b (1, 0, 0x0d), {R3, R2}, PRIV, 0, NULL}, 152 153 {"thash", M, OpX3X6b (1, 0, 0x1a), {R1, R3}, EMPTY}, 154 {"ttag", M, OpX3X6b (1, 0, 0x1b), {R1, R3}, EMPTY}, 155 {"tpa", M, OpX3X6b (1, 0, 0x1e), {R1, R3}, PRIV, 0, NULL}, 156 {"tak", M, OpX3X6b (1, 0, 0x1f), {R1, R3}, PRIV, 0, NULL}, 157 158 {"chk.s.m", M0, OpX3 (1, 1), {R2, TGT25b}, EMPTY}, 159 {"chk.s", M0, OpX3 (1, 3), {F2, TGT25b}, EMPTY}, 160 161 {"fc", M0, OpX3X6bX7 (1, 0, 0x30, 0), {R3}, EMPTY}, 162 {"fc.i", M0, OpX3X6bX7 (1, 0, 0x30, 1), {R3}, EMPTY}, 163 {"ptc.e", M0, OpX3X6b (1, 0, 0x34), {R3}, PRIV, 0, NULL}, 164 165 /* integer load */ 166 {"ld1", M, OpMXX6aHint (4, 0, 0, 0x00, 0), {R1, MR3}, EMPTY}, 167 {"ld1.nt1", M, OpMXX6aHint (4, 0, 0, 0x00, 1), {R1, MR3}, EMPTY}, 168 {"ld1.nta", M, OpMXX6aHint (4, 0, 0, 0x00, 3), {R1, MR3}, EMPTY}, 169 {"ld2", M, OpMXX6aHint (4, 0, 0, 0x01, 0), {R1, MR3}, EMPTY}, 170 {"ld2.nt1", M, OpMXX6aHint (4, 0, 0, 0x01, 1), {R1, MR3}, EMPTY}, 171 {"ld2.nta", M, OpMXX6aHint (4, 0, 0, 0x01, 3), {R1, MR3}, EMPTY}, 172 {"ld4", M, OpMXX6aHint (4, 0, 0, 0x02, 0), {R1, MR3}, EMPTY}, 173 {"ld4.nt1", M, OpMXX6aHint (4, 0, 0, 0x02, 1), {R1, MR3}, EMPTY}, 174 {"ld4.nta", M, OpMXX6aHint (4, 0, 0, 0x02, 3), {R1, MR3}, EMPTY}, 175 {"ld8", M, OpMXX6aHint (4, 0, 0, 0x03, 0), {R1, MR3}, EMPTY}, 176 {"ld8.nt1", M, OpMXX6aHint (4, 0, 0, 0x03, 1), {R1, MR3}, EMPTY}, 177 {"ld8.nta", M, OpMXX6aHint (4, 0, 0, 0x03, 3), {R1, MR3}, EMPTY}, 178 {"ld16", M2, OpMXX6aHint (4, 0, 1, 0x28, 0), {R1, AR_CSD, MR3}, EMPTY}, 179 {"ld16.nt1", M2, OpMXX6aHint (4, 0, 1, 0x28, 1), {R1, AR_CSD, MR3}, EMPTY}, 180 {"ld16.nta", M2, OpMXX6aHint (4, 0, 1, 0x28, 3), {R1, AR_CSD, MR3}, EMPTY}, 181 {"ld1.s", M, OpMXX6aHint (4, 0, 0, 0x04, 0), {R1, MR3}, EMPTY}, 182 {"ld1.s.nt1", M, OpMXX6aHint (4, 0, 0, 0x04, 1), {R1, MR3}, EMPTY}, 183 {"ld1.s.nta", M, OpMXX6aHint (4, 0, 0, 0x04, 3), {R1, MR3}, EMPTY}, 184 {"ld2.s", M, OpMXX6aHint (4, 0, 0, 0x05, 0), {R1, MR3}, EMPTY}, 185 {"ld2.s.nt1", M, OpMXX6aHint (4, 0, 0, 0x05, 1), {R1, MR3}, EMPTY}, 186 {"ld2.s.nta", M, OpMXX6aHint (4, 0, 0, 0x05, 3), {R1, MR3}, EMPTY}, 187 {"ld4.s", M, OpMXX6aHint (4, 0, 0, 0x06, 0), {R1, MR3}, EMPTY}, 188 {"ld4.s.nt1", M, OpMXX6aHint (4, 0, 0, 0x06, 1), {R1, MR3}, EMPTY}, 189 {"ld4.s.nta", M, OpMXX6aHint (4, 0, 0, 0x06, 3), {R1, MR3}, EMPTY}, 190 {"ld8.s", M, OpMXX6aHint (4, 0, 0, 0x07, 0), {R1, MR3}, EMPTY}, 191 {"ld8.s.nt1", M, OpMXX6aHint (4, 0, 0, 0x07, 1), {R1, MR3}, EMPTY}, 192 {"ld8.s.nta", M, OpMXX6aHint (4, 0, 0, 0x07, 3), {R1, MR3}, EMPTY}, 193 {"ld1.a", M, OpMXX6aHint (4, 0, 0, 0x08, 0), {R1, MR3}, EMPTY}, 194 {"ld1.a.nt1", M, OpMXX6aHint (4, 0, 0, 0x08, 1), {R1, MR3}, EMPTY}, 195 {"ld1.a.nta", M, OpMXX6aHint (4, 0, 0, 0x08, 3), {R1, MR3}, EMPTY}, 196 {"ld2.a", M, OpMXX6aHint (4, 0, 0, 0x09, 0), {R1, MR3}, EMPTY}, 197 {"ld2.a.nt1", M, OpMXX6aHint (4, 0, 0, 0x09, 1), {R1, MR3}, EMPTY}, 198 {"ld2.a.nta", M, OpMXX6aHint (4, 0, 0, 0x09, 3), {R1, MR3}, EMPTY}, 199 {"ld4.a", M, OpMXX6aHint (4, 0, 0, 0x0a, 0), {R1, MR3}, EMPTY}, 200 {"ld4.a.nt1", M, OpMXX6aHint (4, 0, 0, 0x0a, 1), {R1, MR3}, EMPTY}, 201 {"ld4.a.nta", M, OpMXX6aHint (4, 0, 0, 0x0a, 3), {R1, MR3}, EMPTY}, 202 {"ld8.a", M, OpMXX6aHint (4, 0, 0, 0x0b, 0), {R1, MR3}, EMPTY}, 203 {"ld8.a.nt1", M, OpMXX6aHint (4, 0, 0, 0x0b, 1), {R1, MR3}, EMPTY}, 204 {"ld8.a.nta", M, OpMXX6aHint (4, 0, 0, 0x0b, 3), {R1, MR3}, EMPTY}, 205 {"ld1.sa", M, OpMXX6aHint (4, 0, 0, 0x0c, 0), {R1, MR3}, EMPTY}, 206 {"ld1.sa.nt1", M, OpMXX6aHint (4, 0, 0, 0x0c, 1), {R1, MR3}, EMPTY}, 207 {"ld1.sa.nta", M, OpMXX6aHint (4, 0, 0, 0x0c, 3), {R1, MR3}, EMPTY}, 208 {"ld2.sa", M, OpMXX6aHint (4, 0, 0, 0x0d, 0), {R1, MR3}, EMPTY}, 209 {"ld2.sa.nt1", M, OpMXX6aHint (4, 0, 0, 0x0d, 1), {R1, MR3}, EMPTY}, 210 {"ld2.sa.nta", M, OpMXX6aHint (4, 0, 0, 0x0d, 3), {R1, MR3}, EMPTY}, 211 {"ld4.sa", M, OpMXX6aHint (4, 0, 0, 0x0e, 0), {R1, MR3}, EMPTY}, 212 {"ld4.sa.nt1", M, OpMXX6aHint (4, 0, 0, 0x0e, 1), {R1, MR3}, EMPTY}, 213 {"ld4.sa.nta", M, OpMXX6aHint (4, 0, 0, 0x0e, 3), {R1, MR3}, EMPTY}, 214 {"ld8.sa", M, OpMXX6aHint (4, 0, 0, 0x0f, 0), {R1, MR3}, EMPTY}, 215 {"ld8.sa.nt1", M, OpMXX6aHint (4, 0, 0, 0x0f, 1), {R1, MR3}, EMPTY}, 216 {"ld8.sa.nta", M, OpMXX6aHint (4, 0, 0, 0x0f, 3), {R1, MR3}, EMPTY}, 217 {"ld1.bias", M, OpMXX6aHint (4, 0, 0, 0x10, 0), {R1, MR3}, EMPTY}, 218 {"ld1.bias.nt1", M, OpMXX6aHint (4, 0, 0, 0x10, 1), {R1, MR3}, EMPTY}, 219 {"ld1.bias.nta", M, OpMXX6aHint (4, 0, 0, 0x10, 3), {R1, MR3}, EMPTY}, 220 {"ld2.bias", M, OpMXX6aHint (4, 0, 0, 0x11, 0), {R1, MR3}, EMPTY}, 221 {"ld2.bias.nt1", M, OpMXX6aHint (4, 0, 0, 0x11, 1), {R1, MR3}, EMPTY}, 222 {"ld2.bias.nta", M, OpMXX6aHint (4, 0, 0, 0x11, 3), {R1, MR3}, EMPTY}, 223 {"ld4.bias", M, OpMXX6aHint (4, 0, 0, 0x12, 0), {R1, MR3}, EMPTY}, 224 {"ld4.bias.nt1", M, OpMXX6aHint (4, 0, 0, 0x12, 1), {R1, MR3}, EMPTY}, 225 {"ld4.bias.nta", M, OpMXX6aHint (4, 0, 0, 0x12, 3), {R1, MR3}, EMPTY}, 226 {"ld8.bias", M, OpMXX6aHint (4, 0, 0, 0x13, 0), {R1, MR3}, EMPTY}, 227 {"ld8.bias.nt1", M, OpMXX6aHint (4, 0, 0, 0x13, 1), {R1, MR3}, EMPTY}, 228 {"ld8.bias.nta", M, OpMXX6aHint (4, 0, 0, 0x13, 3), {R1, MR3}, EMPTY}, 229 {"ld1.acq", M, OpMXX6aHint (4, 0, 0, 0x14, 0), {R1, MR3}, EMPTY}, 230 {"ld1.acq.nt1", M, OpMXX6aHint (4, 0, 0, 0x14, 1), {R1, MR3}, EMPTY}, 231 {"ld1.acq.nta", M, OpMXX6aHint (4, 0, 0, 0x14, 3), {R1, MR3}, EMPTY}, 232 {"ld2.acq", M, OpMXX6aHint (4, 0, 0, 0x15, 0), {R1, MR3}, EMPTY}, 233 {"ld2.acq.nt1", M, OpMXX6aHint (4, 0, 0, 0x15, 1), {R1, MR3}, EMPTY}, 234 {"ld2.acq.nta", M, OpMXX6aHint (4, 0, 0, 0x15, 3), {R1, MR3}, EMPTY}, 235 {"ld4.acq", M, OpMXX6aHint (4, 0, 0, 0x16, 0), {R1, MR3}, EMPTY}, 236 {"ld4.acq.nt1", M, OpMXX6aHint (4, 0, 0, 0x16, 1), {R1, MR3}, EMPTY}, 237 {"ld4.acq.nta", M, OpMXX6aHint (4, 0, 0, 0x16, 3), {R1, MR3}, EMPTY}, 238 {"ld8.acq", M, OpMXX6aHint (4, 0, 0, 0x17, 0), {R1, MR3}, EMPTY}, 239 {"ld8.acq.nt1", M, OpMXX6aHint (4, 0, 0, 0x17, 1), {R1, MR3}, EMPTY}, 240 {"ld8.acq.nta", M, OpMXX6aHint (4, 0, 0, 0x17, 3), {R1, MR3}, EMPTY}, 241 {"ld16.acq", M2, OpMXX6aHint (4, 0, 1, 0x2c, 0), {R1, AR_CSD, MR3}, EMPTY}, 242 {"ld16.acq.nt1", M2, OpMXX6aHint (4, 0, 1, 0x2c, 1), {R1, AR_CSD, MR3}, EMPTY}, 243 {"ld16.acq.nta", M2, OpMXX6aHint (4, 0, 1, 0x2c, 3), {R1, AR_CSD, MR3}, EMPTY}, 244 {"ld8.fill", M, OpMXX6aHint (4, 0, 0, 0x1b, 0), {R1, MR3}, EMPTY}, 245 {"ld8.fill.nt1", M, OpMXX6aHint (4, 0, 0, 0x1b, 1), {R1, MR3}, EMPTY}, 246 {"ld8.fill.nta", M, OpMXX6aHint (4, 0, 0, 0x1b, 3), {R1, MR3}, EMPTY}, 247 {"ld1.c.clr", M, OpMXX6aHint (4, 0, 0, 0x20, 0), {R1, MR3}, EMPTY}, 248 {"ld1.c.clr.nt1", M, OpMXX6aHint (4, 0, 0, 0x20, 1), {R1, MR3}, EMPTY}, 249 {"ld1.c.clr.nta", M, OpMXX6aHint (4, 0, 0, 0x20, 3), {R1, MR3}, EMPTY}, 250 {"ld2.c.clr", M, OpMXX6aHint (4, 0, 0, 0x21, 0), {R1, MR3}, EMPTY}, 251 {"ld2.c.clr.nt1", M, OpMXX6aHint (4, 0, 0, 0x21, 1), {R1, MR3}, EMPTY}, 252 {"ld2.c.clr.nta", M, OpMXX6aHint (4, 0, 0, 0x21, 3), {R1, MR3}, EMPTY}, 253 {"ld4.c.clr", M, OpMXX6aHint (4, 0, 0, 0x22, 0), {R1, MR3}, EMPTY}, 254 {"ld4.c.clr.nt1", M, OpMXX6aHint (4, 0, 0, 0x22, 1), {R1, MR3}, EMPTY}, 255 {"ld4.c.clr.nta", M, OpMXX6aHint (4, 0, 0, 0x22, 3), {R1, MR3}, EMPTY}, 256 {"ld8.c.clr", M, OpMXX6aHint (4, 0, 0, 0x23, 0), {R1, MR3}, EMPTY}, 257 {"ld8.c.clr.nt1", M, OpMXX6aHint (4, 0, 0, 0x23, 1), {R1, MR3}, EMPTY}, 258 {"ld8.c.clr.nta", M, OpMXX6aHint (4, 0, 0, 0x23, 3), {R1, MR3}, EMPTY}, 259 {"ld1.c.nc", M, OpMXX6aHint (4, 0, 0, 0x24, 0), {R1, MR3}, EMPTY}, 260 {"ld1.c.nc.nt1", M, OpMXX6aHint (4, 0, 0, 0x24, 1), {R1, MR3}, EMPTY}, 261 {"ld1.c.nc.nta", M, OpMXX6aHint (4, 0, 0, 0x24, 3), {R1, MR3}, EMPTY}, 262 {"ld2.c.nc", M, OpMXX6aHint (4, 0, 0, 0x25, 0), {R1, MR3}, EMPTY}, 263 {"ld2.c.nc.nt1", M, OpMXX6aHint (4, 0, 0, 0x25, 1), {R1, MR3}, EMPTY}, 264 {"ld2.c.nc.nta", M, OpMXX6aHint (4, 0, 0, 0x25, 3), {R1, MR3}, EMPTY}, 265 {"ld4.c.nc", M, OpMXX6aHint (4, 0, 0, 0x26, 0), {R1, MR3}, EMPTY}, 266 {"ld4.c.nc.nt1", M, OpMXX6aHint (4, 0, 0, 0x26, 1), {R1, MR3}, EMPTY}, 267 {"ld4.c.nc.nta", M, OpMXX6aHint (4, 0, 0, 0x26, 3), {R1, MR3}, EMPTY}, 268 {"ld8.c.nc", M, OpMXX6aHint (4, 0, 0, 0x27, 0), {R1, MR3}, EMPTY}, 269 {"ld8.c.nc.nt1", M, OpMXX6aHint (4, 0, 0, 0x27, 1), {R1, MR3}, EMPTY}, 270 {"ld8.c.nc.nta", M, OpMXX6aHint (4, 0, 0, 0x27, 3), {R1, MR3}, EMPTY}, 271 {"ld1.c.clr.acq", M, OpMXX6aHint (4, 0, 0, 0x28, 0), {R1, MR3}, EMPTY}, 272 {"ld1.c.clr.acq.nt1", M, OpMXX6aHint (4, 0, 0, 0x28, 1), {R1, MR3}, EMPTY}, 273 {"ld1.c.clr.acq.nta", M, OpMXX6aHint (4, 0, 0, 0x28, 3), {R1, MR3}, EMPTY}, 274 {"ld2.c.clr.acq", M, OpMXX6aHint (4, 0, 0, 0x29, 0), {R1, MR3}, EMPTY}, 275 {"ld2.c.clr.acq.nt1", M, OpMXX6aHint (4, 0, 0, 0x29, 1), {R1, MR3}, EMPTY}, 276 {"ld2.c.clr.acq.nta", M, OpMXX6aHint (4, 0, 0, 0x29, 3), {R1, MR3}, EMPTY}, 277 {"ld4.c.clr.acq", M, OpMXX6aHint (4, 0, 0, 0x2a, 0), {R1, MR3}, EMPTY}, 278 {"ld4.c.clr.acq.nt1", M, OpMXX6aHint (4, 0, 0, 0x2a, 1), {R1, MR3}, EMPTY}, 279 {"ld4.c.clr.acq.nta", M, OpMXX6aHint (4, 0, 0, 0x2a, 3), {R1, MR3}, EMPTY}, 280 {"ld8.c.clr.acq", M, OpMXX6aHint (4, 0, 0, 0x2b, 0), {R1, MR3}, EMPTY}, 281 {"ld8.c.clr.acq.nt1", M, OpMXX6aHint (4, 0, 0, 0x2b, 1), {R1, MR3}, EMPTY}, 282 {"ld8.c.clr.acq.nta", M, OpMXX6aHint (4, 0, 0, 0x2b, 3), {R1, MR3}, EMPTY}, 283 284 /* Pseudo-op that generates ldxmov relocation. */ 285 {"ld8.mov", M, OpMXX6aHint (4, 0, 0, 0x03, 0), 286 {R1, MR3, IA64_OPND_LDXMOV}, EMPTY}, 287 288 /* Integer load w/increment by register. */ 289 #define LDINCREG(c,h) M, OpMXX6aHint (4, 1, 0, c, h), {R1, MR3, R2}, POSTINC, 0, NULL 290 {"ld1", LDINCREG (0x00, 0)}, 291 {"ld1.nt1", LDINCREG (0x00, 1)}, 292 {"ld1.nta", LDINCREG (0x00, 3)}, 293 {"ld2", LDINCREG (0x01, 0)}, 294 {"ld2.nt1", LDINCREG (0x01, 1)}, 295 {"ld2.nta", LDINCREG (0x01, 3)}, 296 {"ld4", LDINCREG (0x02, 0)}, 297 {"ld4.nt1", LDINCREG (0x02, 1)}, 298 {"ld4.nta", LDINCREG (0x02, 3)}, 299 {"ld8", LDINCREG (0x03, 0)}, 300 {"ld8.nt1", LDINCREG (0x03, 1)}, 301 {"ld8.nta", LDINCREG (0x03, 3)}, 302 {"ld1.s", LDINCREG (0x04, 0)}, 303 {"ld1.s.nt1", LDINCREG (0x04, 1)}, 304 {"ld1.s.nta", LDINCREG (0x04, 3)}, 305 {"ld2.s", LDINCREG (0x05, 0)}, 306 {"ld2.s.nt1", LDINCREG (0x05, 1)}, 307 {"ld2.s.nta", LDINCREG (0x05, 3)}, 308 {"ld4.s", LDINCREG (0x06, 0)}, 309 {"ld4.s.nt1", LDINCREG (0x06, 1)}, 310 {"ld4.s.nta", LDINCREG (0x06, 3)}, 311 {"ld8.s", LDINCREG (0x07, 0)}, 312 {"ld8.s.nt1", LDINCREG (0x07, 1)}, 313 {"ld8.s.nta", LDINCREG (0x07, 3)}, 314 {"ld1.a", LDINCREG (0x08, 0)}, 315 {"ld1.a.nt1", LDINCREG (0x08, 1)}, 316 {"ld1.a.nta", LDINCREG (0x08, 3)}, 317 {"ld2.a", LDINCREG (0x09, 0)}, 318 {"ld2.a.nt1", LDINCREG (0x09, 1)}, 319 {"ld2.a.nta", LDINCREG (0x09, 3)}, 320 {"ld4.a", LDINCREG (0x0a, 0)}, 321 {"ld4.a.nt1", LDINCREG (0x0a, 1)}, 322 {"ld4.a.nta", LDINCREG (0x0a, 3)}, 323 {"ld8.a", LDINCREG (0x0b, 0)}, 324 {"ld8.a.nt1", LDINCREG (0x0b, 1)}, 325 {"ld8.a.nta", LDINCREG (0x0b, 3)}, 326 {"ld1.sa", LDINCREG (0x0c, 0)}, 327 {"ld1.sa.nt1", LDINCREG (0x0c, 1)}, 328 {"ld1.sa.nta", LDINCREG (0x0c, 3)}, 329 {"ld2.sa", LDINCREG (0x0d, 0)}, 330 {"ld2.sa.nt1", LDINCREG (0x0d, 1)}, 331 {"ld2.sa.nta", LDINCREG (0x0d, 3)}, 332 {"ld4.sa", LDINCREG (0x0e, 0)}, 333 {"ld4.sa.nt1", LDINCREG (0x0e, 1)}, 334 {"ld4.sa.nta", LDINCREG (0x0e, 3)}, 335 {"ld8.sa", LDINCREG (0x0f, 0)}, 336 {"ld8.sa.nt1", LDINCREG (0x0f, 1)}, 337 {"ld8.sa.nta", LDINCREG (0x0f, 3)}, 338 {"ld1.bias", LDINCREG (0x10, 0)}, 339 {"ld1.bias.nt1", LDINCREG (0x10, 1)}, 340 {"ld1.bias.nta", LDINCREG (0x10, 3)}, 341 {"ld2.bias", LDINCREG (0x11, 0)}, 342 {"ld2.bias.nt1", LDINCREG (0x11, 1)}, 343 {"ld2.bias.nta", LDINCREG (0x11, 3)}, 344 {"ld4.bias", LDINCREG (0x12, 0)}, 345 {"ld4.bias.nt1", LDINCREG (0x12, 1)}, 346 {"ld4.bias.nta", LDINCREG (0x12, 3)}, 347 {"ld8.bias", LDINCREG (0x13, 0)}, 348 {"ld8.bias.nt1", LDINCREG (0x13, 1)}, 349 {"ld8.bias.nta", LDINCREG (0x13, 3)}, 350 {"ld1.acq", LDINCREG (0x14, 0)}, 351 {"ld1.acq.nt1", LDINCREG (0x14, 1)}, 352 {"ld1.acq.nta", LDINCREG (0x14, 3)}, 353 {"ld2.acq", LDINCREG (0x15, 0)}, 354 {"ld2.acq.nt1", LDINCREG (0x15, 1)}, 355 {"ld2.acq.nta", LDINCREG (0x15, 3)}, 356 {"ld4.acq", LDINCREG (0x16, 0)}, 357 {"ld4.acq.nt1", LDINCREG (0x16, 1)}, 358 {"ld4.acq.nta", LDINCREG (0x16, 3)}, 359 {"ld8.acq", LDINCREG (0x17, 0)}, 360 {"ld8.acq.nt1", LDINCREG (0x17, 1)}, 361 {"ld8.acq.nta", LDINCREG (0x17, 3)}, 362 {"ld8.fill", LDINCREG (0x1b, 0)}, 363 {"ld8.fill.nt1", LDINCREG (0x1b, 1)}, 364 {"ld8.fill.nta", LDINCREG (0x1b, 3)}, 365 {"ld1.c.clr", LDINCREG (0x20, 0)}, 366 {"ld1.c.clr.nt1", LDINCREG (0x20, 1)}, 367 {"ld1.c.clr.nta", LDINCREG (0x20, 3)}, 368 {"ld2.c.clr", LDINCREG (0x21, 0)}, 369 {"ld2.c.clr.nt1", LDINCREG (0x21, 1)}, 370 {"ld2.c.clr.nta", LDINCREG (0x21, 3)}, 371 {"ld4.c.clr", LDINCREG (0x22, 0)}, 372 {"ld4.c.clr.nt1", LDINCREG (0x22, 1)}, 373 {"ld4.c.clr.nta", LDINCREG (0x22, 3)}, 374 {"ld8.c.clr", LDINCREG (0x23, 0)}, 375 {"ld8.c.clr.nt1", LDINCREG (0x23, 1)}, 376 {"ld8.c.clr.nta", LDINCREG (0x23, 3)}, 377 {"ld1.c.nc", LDINCREG (0x24, 0)}, 378 {"ld1.c.nc.nt1", LDINCREG (0x24, 1)}, 379 {"ld1.c.nc.nta", LDINCREG (0x24, 3)}, 380 {"ld2.c.nc", LDINCREG (0x25, 0)}, 381 {"ld2.c.nc.nt1", LDINCREG (0x25, 1)}, 382 {"ld2.c.nc.nta", LDINCREG (0x25, 3)}, 383 {"ld4.c.nc", LDINCREG (0x26, 0)}, 384 {"ld4.c.nc.nt1", LDINCREG (0x26, 1)}, 385 {"ld4.c.nc.nta", LDINCREG (0x26, 3)}, 386 {"ld8.c.nc", LDINCREG (0x27, 0)}, 387 {"ld8.c.nc.nt1", LDINCREG (0x27, 1)}, 388 {"ld8.c.nc.nta", LDINCREG (0x27, 3)}, 389 {"ld1.c.clr.acq", LDINCREG (0x28, 0)}, 390 {"ld1.c.clr.acq.nt1", LDINCREG (0x28, 1)}, 391 {"ld1.c.clr.acq.nta", LDINCREG (0x28, 3)}, 392 {"ld2.c.clr.acq", LDINCREG (0x29, 0)}, 393 {"ld2.c.clr.acq.nt1", LDINCREG (0x29, 1)}, 394 {"ld2.c.clr.acq.nta", LDINCREG (0x29, 3)}, 395 {"ld4.c.clr.acq", LDINCREG (0x2a, 0)}, 396 {"ld4.c.clr.acq.nt1", LDINCREG (0x2a, 1)}, 397 {"ld4.c.clr.acq.nta", LDINCREG (0x2a, 3)}, 398 {"ld8.c.clr.acq", LDINCREG (0x2b, 0)}, 399 {"ld8.c.clr.acq.nt1", LDINCREG (0x2b, 1)}, 400 {"ld8.c.clr.acq.nta", LDINCREG (0x2b, 3)}, 401 #undef LDINCREG 402 403 {"st1", M, OpMXX6aHint (4, 0, 0, 0x30, 0), {MR3, R2}, EMPTY}, 404 {"st1.nta", M, OpMXX6aHint (4, 0, 0, 0x30, 3), {MR3, R2}, EMPTY}, 405 {"st2", M, OpMXX6aHint (4, 0, 0, 0x31, 0), {MR3, R2}, EMPTY}, 406 {"st2.nta", M, OpMXX6aHint (4, 0, 0, 0x31, 3), {MR3, R2}, EMPTY}, 407 {"st4", M, OpMXX6aHint (4, 0, 0, 0x32, 0), {MR3, R2}, EMPTY}, 408 {"st4.nta", M, OpMXX6aHint (4, 0, 0, 0x32, 3), {MR3, R2}, EMPTY}, 409 {"st8", M, OpMXX6aHint (4, 0, 0, 0x33, 0), {MR3, R2}, EMPTY}, 410 {"st8.nta", M, OpMXX6aHint (4, 0, 0, 0x33, 3), {MR3, R2}, EMPTY}, 411 {"st16", M, OpMXX6aHint (4, 0, 1, 0x30, 0), {MR3, R2, AR_CSD}, EMPTY}, 412 {"st16.nta", M, OpMXX6aHint (4, 0, 1, 0x30, 3), {MR3, R2, AR_CSD}, EMPTY}, 413 {"st1.rel", M, OpMXX6aHint (4, 0, 0, 0x34, 0), {MR3, R2}, EMPTY}, 414 {"st1.rel.nta", M, OpMXX6aHint (4, 0, 0, 0x34, 3), {MR3, R2}, EMPTY}, 415 {"st2.rel", M, OpMXX6aHint (4, 0, 0, 0x35, 0), {MR3, R2}, EMPTY}, 416 {"st2.rel.nta", M, OpMXX6aHint (4, 0, 0, 0x35, 3), {MR3, R2}, EMPTY}, 417 {"st4.rel", M, OpMXX6aHint (4, 0, 0, 0x36, 0), {MR3, R2}, EMPTY}, 418 {"st4.rel.nta", M, OpMXX6aHint (4, 0, 0, 0x36, 3), {MR3, R2}, EMPTY}, 419 {"st8.rel", M, OpMXX6aHint (4, 0, 0, 0x37, 0), {MR3, R2}, EMPTY}, 420 {"st8.rel.nta", M, OpMXX6aHint (4, 0, 0, 0x37, 3), {MR3, R2}, EMPTY}, 421 {"st16.rel", M, OpMXX6aHint (4, 0, 1, 0x34, 0), {MR3, R2, AR_CSD}, EMPTY}, 422 {"st16.rel.nta", M, OpMXX6aHint (4, 0, 1, 0x34, 3), {MR3, R2, AR_CSD}, EMPTY}, 423 {"st8.spill", M, OpMXX6aHint (4, 0, 0, 0x3b, 0), {MR3, R2}, EMPTY}, 424 {"st8.spill.nta", M, OpMXX6aHint (4, 0, 0, 0x3b, 3), {MR3, R2}, EMPTY}, 425 426 #define CMPXCHG(c,h) M, OpMXX6aHint (4, 0, 1, c, h), {R1, MR3, R2, AR_CCV}, EMPTY 427 #define CMPXCHG16(c,h) M, OpMXX6aHint (4, 0, 1, c, h), {R1, MR3, R2, AR_CSD, AR_CCV}, EMPTY 428 {"cmpxchg1.acq", CMPXCHG (0x00, 0)}, 429 {"cmpxchg1.acq.nt1", CMPXCHG (0x00, 1)}, 430 {"cmpxchg1.acq.nta", CMPXCHG (0x00, 3)}, 431 {"cmpxchg2.acq", CMPXCHG (0x01, 0)}, 432 {"cmpxchg2.acq.nt1", CMPXCHG (0x01, 1)}, 433 {"cmpxchg2.acq.nta", CMPXCHG (0x01, 3)}, 434 {"cmpxchg4.acq", CMPXCHG (0x02, 0)}, 435 {"cmpxchg4.acq.nt1", CMPXCHG (0x02, 1)}, 436 {"cmpxchg4.acq.nta", CMPXCHG (0x02, 3)}, 437 {"cmpxchg8.acq", CMPXCHG (0x03, 0)}, 438 {"cmpxchg8.acq.nt1", CMPXCHG (0x03, 1)}, 439 {"cmpxchg8.acq.nta", CMPXCHG (0x03, 3)}, 440 {"cmp8xchg16.acq", CMPXCHG16 (0x20, 0)}, 441 {"cmp8xchg16.acq.nt1", CMPXCHG16 (0x20, 1)}, 442 {"cmp8xchg16.acq.nta", CMPXCHG16 (0x20, 3)}, 443 {"cmpxchg1.rel", CMPXCHG (0x04, 0)}, 444 {"cmpxchg1.rel.nt1", CMPXCHG (0x04, 1)}, 445 {"cmpxchg1.rel.nta", CMPXCHG (0x04, 3)}, 446 {"cmpxchg2.rel", CMPXCHG (0x05, 0)}, 447 {"cmpxchg2.rel.nt1", CMPXCHG (0x05, 1)}, 448 {"cmpxchg2.rel.nta", CMPXCHG (0x05, 3)}, 449 {"cmpxchg4.rel", CMPXCHG (0x06, 0)}, 450 {"cmpxchg4.rel.nt1", CMPXCHG (0x06, 1)}, 451 {"cmpxchg4.rel.nta", CMPXCHG (0x06, 3)}, 452 {"cmpxchg8.rel", CMPXCHG (0x07, 0)}, 453 {"cmpxchg8.rel.nt1", CMPXCHG (0x07, 1)}, 454 {"cmpxchg8.rel.nta", CMPXCHG (0x07, 3)}, 455 {"cmp8xchg16.rel", CMPXCHG16 (0x24, 0)}, 456 {"cmp8xchg16.rel.nt1", CMPXCHG16 (0x24, 1)}, 457 {"cmp8xchg16.rel.nta", CMPXCHG16 (0x24, 3)}, 458 #undef CMPXCHG 459 #undef CMPXCHG16 460 {"xchg1", M, OpMXX6aHint (4, 0, 1, 0x08, 0), {R1, MR3, R2}, EMPTY}, 461 {"xchg1.nt1", M, OpMXX6aHint (4, 0, 1, 0x08, 1), {R1, MR3, R2}, EMPTY}, 462 {"xchg1.nta", M, OpMXX6aHint (4, 0, 1, 0x08, 3), {R1, MR3, R2}, EMPTY}, 463 {"xchg2", M, OpMXX6aHint (4, 0, 1, 0x09, 0), {R1, MR3, R2}, EMPTY}, 464 {"xchg2.nt1", M, OpMXX6aHint (4, 0, 1, 0x09, 1), {R1, MR3, R2}, EMPTY}, 465 {"xchg2.nta", M, OpMXX6aHint (4, 0, 1, 0x09, 3), {R1, MR3, R2}, EMPTY}, 466 {"xchg4", M, OpMXX6aHint (4, 0, 1, 0x0a, 0), {R1, MR3, R2}, EMPTY}, 467 {"xchg4.nt1", M, OpMXX6aHint (4, 0, 1, 0x0a, 1), {R1, MR3, R2}, EMPTY}, 468 {"xchg4.nta", M, OpMXX6aHint (4, 0, 1, 0x0a, 3), {R1, MR3, R2}, EMPTY}, 469 {"xchg8", M, OpMXX6aHint (4, 0, 1, 0x0b, 0), {R1, MR3, R2}, EMPTY}, 470 {"xchg8.nt1", M, OpMXX6aHint (4, 0, 1, 0x0b, 1), {R1, MR3, R2}, EMPTY}, 471 {"xchg8.nta", M, OpMXX6aHint (4, 0, 1, 0x0b, 3), {R1, MR3, R2}, EMPTY}, 472 473 {"fetchadd4.acq", M, OpMXX6aHint (4, 0, 1, 0x12, 0), {R1, MR3, INC3}, EMPTY}, 474 {"fetchadd4.acq.nt1", M, OpMXX6aHint (4, 0, 1, 0x12, 1), {R1, MR3, INC3}, EMPTY}, 475 {"fetchadd4.acq.nta", M, OpMXX6aHint (4, 0, 1, 0x12, 3), {R1, MR3, INC3}, EMPTY}, 476 {"fetchadd8.acq", M, OpMXX6aHint (4, 0, 1, 0x13, 0), {R1, MR3, INC3}, EMPTY}, 477 {"fetchadd8.acq.nt1", M, OpMXX6aHint (4, 0, 1, 0x13, 1), {R1, MR3, INC3}, EMPTY}, 478 {"fetchadd8.acq.nta", M, OpMXX6aHint (4, 0, 1, 0x13, 3), {R1, MR3, INC3}, EMPTY}, 479 {"fetchadd4.rel", M, OpMXX6aHint (4, 0, 1, 0x16, 0), {R1, MR3, INC3}, EMPTY}, 480 {"fetchadd4.rel.nt1", M, OpMXX6aHint (4, 0, 1, 0x16, 1), {R1, MR3, INC3}, EMPTY}, 481 {"fetchadd4.rel.nta", M, OpMXX6aHint (4, 0, 1, 0x16, 3), {R1, MR3, INC3}, EMPTY}, 482 {"fetchadd8.rel", M, OpMXX6aHint (4, 0, 1, 0x17, 0), {R1, MR3, INC3}, EMPTY}, 483 {"fetchadd8.rel.nt1", M, OpMXX6aHint (4, 0, 1, 0x17, 1), {R1, MR3, INC3}, EMPTY}, 484 {"fetchadd8.rel.nta", M, OpMXX6aHint (4, 0, 1, 0x17, 3), {R1, MR3, INC3}, EMPTY}, 485 486 {"getf.sig", M, OpMXX6a (4, 0, 1, 0x1c), {R1, F2}, EMPTY}, 487 {"getf.exp", M, OpMXX6a (4, 0, 1, 0x1d), {R1, F2}, EMPTY}, 488 {"getf.s", M, OpMXX6a (4, 0, 1, 0x1e), {R1, F2}, EMPTY}, 489 {"getf.d", M, OpMXX6a (4, 0, 1, 0x1f), {R1, F2}, EMPTY}, 490 491 /* Integer load w/increment by immediate. */ 492 #define LDINCIMMED(c,h) M, OpX6aHint (5, c, h), {R1, MR3, IMM9b}, POSTINC, 0, NULL 493 {"ld1", LDINCIMMED (0x00, 0)}, 494 {"ld1.nt1", LDINCIMMED (0x00, 1)}, 495 {"ld1.nta", LDINCIMMED (0x00, 3)}, 496 {"ld2", LDINCIMMED (0x01, 0)}, 497 {"ld2.nt1", LDINCIMMED (0x01, 1)}, 498 {"ld2.nta", LDINCIMMED (0x01, 3)}, 499 {"ld4", LDINCIMMED (0x02, 0)}, 500 {"ld4.nt1", LDINCIMMED (0x02, 1)}, 501 {"ld4.nta", LDINCIMMED (0x02, 3)}, 502 {"ld8", LDINCIMMED (0x03, 0)}, 503 {"ld8.nt1", LDINCIMMED (0x03, 1)}, 504 {"ld8.nta", LDINCIMMED (0x03, 3)}, 505 {"ld1.s", LDINCIMMED (0x04, 0)}, 506 {"ld1.s.nt1", LDINCIMMED (0x04, 1)}, 507 {"ld1.s.nta", LDINCIMMED (0x04, 3)}, 508 {"ld2.s", LDINCIMMED (0x05, 0)}, 509 {"ld2.s.nt1", LDINCIMMED (0x05, 1)}, 510 {"ld2.s.nta", LDINCIMMED (0x05, 3)}, 511 {"ld4.s", LDINCIMMED (0x06, 0)}, 512 {"ld4.s.nt1", LDINCIMMED (0x06, 1)}, 513 {"ld4.s.nta", LDINCIMMED (0x06, 3)}, 514 {"ld8.s", LDINCIMMED (0x07, 0)}, 515 {"ld8.s.nt1", LDINCIMMED (0x07, 1)}, 516 {"ld8.s.nta", LDINCIMMED (0x07, 3)}, 517 {"ld1.a", LDINCIMMED (0x08, 0)}, 518 {"ld1.a.nt1", LDINCIMMED (0x08, 1)}, 519 {"ld1.a.nta", LDINCIMMED (0x08, 3)}, 520 {"ld2.a", LDINCIMMED (0x09, 0)}, 521 {"ld2.a.nt1", LDINCIMMED (0x09, 1)}, 522 {"ld2.a.nta", LDINCIMMED (0x09, 3)}, 523 {"ld4.a", LDINCIMMED (0x0a, 0)}, 524 {"ld4.a.nt1", LDINCIMMED (0x0a, 1)}, 525 {"ld4.a.nta", LDINCIMMED (0x0a, 3)}, 526 {"ld8.a", LDINCIMMED (0x0b, 0)}, 527 {"ld8.a.nt1", LDINCIMMED (0x0b, 1)}, 528 {"ld8.a.nta", LDINCIMMED (0x0b, 3)}, 529 {"ld1.sa", LDINCIMMED (0x0c, 0)}, 530 {"ld1.sa.nt1", LDINCIMMED (0x0c, 1)}, 531 {"ld1.sa.nta", LDINCIMMED (0x0c, 3)}, 532 {"ld2.sa", LDINCIMMED (0x0d, 0)}, 533 {"ld2.sa.nt1", LDINCIMMED (0x0d, 1)}, 534 {"ld2.sa.nta", LDINCIMMED (0x0d, 3)}, 535 {"ld4.sa", LDINCIMMED (0x0e, 0)}, 536 {"ld4.sa.nt1", LDINCIMMED (0x0e, 1)}, 537 {"ld4.sa.nta", LDINCIMMED (0x0e, 3)}, 538 {"ld8.sa", LDINCIMMED (0x0f, 0)}, 539 {"ld8.sa.nt1", LDINCIMMED (0x0f, 1)}, 540 {"ld8.sa.nta", LDINCIMMED (0x0f, 3)}, 541 {"ld1.bias", LDINCIMMED (0x10, 0)}, 542 {"ld1.bias.nt1", LDINCIMMED (0x10, 1)}, 543 {"ld1.bias.nta", LDINCIMMED (0x10, 3)}, 544 {"ld2.bias", LDINCIMMED (0x11, 0)}, 545 {"ld2.bias.nt1", LDINCIMMED (0x11, 1)}, 546 {"ld2.bias.nta", LDINCIMMED (0x11, 3)}, 547 {"ld4.bias", LDINCIMMED (0x12, 0)}, 548 {"ld4.bias.nt1", LDINCIMMED (0x12, 1)}, 549 {"ld4.bias.nta", LDINCIMMED (0x12, 3)}, 550 {"ld8.bias", LDINCIMMED (0x13, 0)}, 551 {"ld8.bias.nt1", LDINCIMMED (0x13, 1)}, 552 {"ld8.bias.nta", LDINCIMMED (0x13, 3)}, 553 {"ld1.acq", LDINCIMMED (0x14, 0)}, 554 {"ld1.acq.nt1", LDINCIMMED (0x14, 1)}, 555 {"ld1.acq.nta", LDINCIMMED (0x14, 3)}, 556 {"ld2.acq", LDINCIMMED (0x15, 0)}, 557 {"ld2.acq.nt1", LDINCIMMED (0x15, 1)}, 558 {"ld2.acq.nta", LDINCIMMED (0x15, 3)}, 559 {"ld4.acq", LDINCIMMED (0x16, 0)}, 560 {"ld4.acq.nt1", LDINCIMMED (0x16, 1)}, 561 {"ld4.acq.nta", LDINCIMMED (0x16, 3)}, 562 {"ld8.acq", LDINCIMMED (0x17, 0)}, 563 {"ld8.acq.nt1", LDINCIMMED (0x17, 1)}, 564 {"ld8.acq.nta", LDINCIMMED (0x17, 3)}, 565 {"ld8.fill", LDINCIMMED (0x1b, 0)}, 566 {"ld8.fill.nt1", LDINCIMMED (0x1b, 1)}, 567 {"ld8.fill.nta", LDINCIMMED (0x1b, 3)}, 568 {"ld1.c.clr", LDINCIMMED (0x20, 0)}, 569 {"ld1.c.clr.nt1", LDINCIMMED (0x20, 1)}, 570 {"ld1.c.clr.nta", LDINCIMMED (0x20, 3)}, 571 {"ld2.c.clr", LDINCIMMED (0x21, 0)}, 572 {"ld2.c.clr.nt1", LDINCIMMED (0x21, 1)}, 573 {"ld2.c.clr.nta", LDINCIMMED (0x21, 3)}, 574 {"ld4.c.clr", LDINCIMMED (0x22, 0)}, 575 {"ld4.c.clr.nt1", LDINCIMMED (0x22, 1)}, 576 {"ld4.c.clr.nta", LDINCIMMED (0x22, 3)}, 577 {"ld8.c.clr", LDINCIMMED (0x23, 0)}, 578 {"ld8.c.clr.nt1", LDINCIMMED (0x23, 1)}, 579 {"ld8.c.clr.nta", LDINCIMMED (0x23, 3)}, 580 {"ld1.c.nc", LDINCIMMED (0x24, 0)}, 581 {"ld1.c.nc.nt1", LDINCIMMED (0x24, 1)}, 582 {"ld1.c.nc.nta", LDINCIMMED (0x24, 3)}, 583 {"ld2.c.nc", LDINCIMMED (0x25, 0)}, 584 {"ld2.c.nc.nt1", LDINCIMMED (0x25, 1)}, 585 {"ld2.c.nc.nta", LDINCIMMED (0x25, 3)}, 586 {"ld4.c.nc", LDINCIMMED (0x26, 0)}, 587 {"ld4.c.nc.nt1", LDINCIMMED (0x26, 1)}, 588 {"ld4.c.nc.nta", LDINCIMMED (0x26, 3)}, 589 {"ld8.c.nc", LDINCIMMED (0x27, 0)}, 590 {"ld8.c.nc.nt1", LDINCIMMED (0x27, 1)}, 591 {"ld8.c.nc.nta", LDINCIMMED (0x27, 3)}, 592 {"ld1.c.clr.acq", LDINCIMMED (0x28, 0)}, 593 {"ld1.c.clr.acq.nt1", LDINCIMMED (0x28, 1)}, 594 {"ld1.c.clr.acq.nta", LDINCIMMED (0x28, 3)}, 595 {"ld2.c.clr.acq", LDINCIMMED (0x29, 0)}, 596 {"ld2.c.clr.acq.nt1", LDINCIMMED (0x29, 1)}, 597 {"ld2.c.clr.acq.nta", LDINCIMMED (0x29, 3)}, 598 {"ld4.c.clr.acq", LDINCIMMED (0x2a, 0)}, 599 {"ld4.c.clr.acq.nt1", LDINCIMMED (0x2a, 1)}, 600 {"ld4.c.clr.acq.nta", LDINCIMMED (0x2a, 3)}, 601 {"ld8.c.clr.acq", LDINCIMMED (0x2b, 0)}, 602 {"ld8.c.clr.acq.nt1", LDINCIMMED (0x2b, 1)}, 603 {"ld8.c.clr.acq.nta", LDINCIMMED (0x2b, 3)}, 604 #undef LDINCIMMED 605 606 /* Store w/increment by immediate. */ 607 #define STINCIMMED(c,h) M, OpX6aHint (5, c, h), {MR3, R2, IMM9a}, POSTINC, 0, NULL 608 {"st1", STINCIMMED (0x30, 0)}, 609 {"st1.nta", STINCIMMED (0x30, 3)}, 610 {"st2", STINCIMMED (0x31, 0)}, 611 {"st2.nta", STINCIMMED (0x31, 3)}, 612 {"st4", STINCIMMED (0x32, 0)}, 613 {"st4.nta", STINCIMMED (0x32, 3)}, 614 {"st8", STINCIMMED (0x33, 0)}, 615 {"st8.nta", STINCIMMED (0x33, 3)}, 616 {"st1.rel", STINCIMMED (0x34, 0)}, 617 {"st1.rel.nta", STINCIMMED (0x34, 3)}, 618 {"st2.rel", STINCIMMED (0x35, 0)}, 619 {"st2.rel.nta", STINCIMMED (0x35, 3)}, 620 {"st4.rel", STINCIMMED (0x36, 0)}, 621 {"st4.rel.nta", STINCIMMED (0x36, 3)}, 622 {"st8.rel", STINCIMMED (0x37, 0)}, 623 {"st8.rel.nta", STINCIMMED (0x37, 3)}, 624 {"st8.spill", STINCIMMED (0x3b, 0)}, 625 {"st8.spill.nta", STINCIMMED (0x3b, 3)}, 626 #undef STINCIMMED 627 628 /* Floating-point load. */ 629 {"ldfs", M, OpMXX6aHint (6, 0, 0, 0x02, 0), {F1, MR3}, EMPTY}, 630 {"ldfs.nt1", M, OpMXX6aHint (6, 0, 0, 0x02, 1), {F1, MR3}, EMPTY}, 631 {"ldfs.nta", M, OpMXX6aHint (6, 0, 0, 0x02, 3), {F1, MR3}, EMPTY}, 632 {"ldfd", M, OpMXX6aHint (6, 0, 0, 0x03, 0), {F1, MR3}, EMPTY}, 633 {"ldfd.nt1", M, OpMXX6aHint (6, 0, 0, 0x03, 1), {F1, MR3}, EMPTY}, 634 {"ldfd.nta", M, OpMXX6aHint (6, 0, 0, 0x03, 3), {F1, MR3}, EMPTY}, 635 {"ldf8", M, OpMXX6aHint (6, 0, 0, 0x01, 0), {F1, MR3}, EMPTY}, 636 {"ldf8.nt1", M, OpMXX6aHint (6, 0, 0, 0x01, 1), {F1, MR3}, EMPTY}, 637 {"ldf8.nta", M, OpMXX6aHint (6, 0, 0, 0x01, 3), {F1, MR3}, EMPTY}, 638 {"ldfe", M, OpMXX6aHint (6, 0, 0, 0x00, 0), {F1, MR3}, EMPTY}, 639 {"ldfe.nt1", M, OpMXX6aHint (6, 0, 0, 0x00, 1), {F1, MR3}, EMPTY}, 640 {"ldfe.nta", M, OpMXX6aHint (6, 0, 0, 0x00, 3), {F1, MR3}, EMPTY}, 641 {"ldfs.s", M, OpMXX6aHint (6, 0, 0, 0x06, 0), {F1, MR3}, EMPTY}, 642 {"ldfs.s.nt1", M, OpMXX6aHint (6, 0, 0, 0x06, 1), {F1, MR3}, EMPTY}, 643 {"ldfs.s.nta", M, OpMXX6aHint (6, 0, 0, 0x06, 3), {F1, MR3}, EMPTY}, 644 {"ldfd.s", M, OpMXX6aHint (6, 0, 0, 0x07, 0), {F1, MR3}, EMPTY}, 645 {"ldfd.s.nt1", M, OpMXX6aHint (6, 0, 0, 0x07, 1), {F1, MR3}, EMPTY}, 646 {"ldfd.s.nta", M, OpMXX6aHint (6, 0, 0, 0x07, 3), {F1, MR3}, EMPTY}, 647 {"ldf8.s", M, OpMXX6aHint (6, 0, 0, 0x05, 0), {F1, MR3}, EMPTY}, 648 {"ldf8.s.nt1", M, OpMXX6aHint (6, 0, 0, 0x05, 1), {F1, MR3}, EMPTY}, 649 {"ldf8.s.nta", M, OpMXX6aHint (6, 0, 0, 0x05, 3), {F1, MR3}, EMPTY}, 650 {"ldfe.s", M, OpMXX6aHint (6, 0, 0, 0x04, 0), {F1, MR3}, EMPTY}, 651 {"ldfe.s.nt1", M, OpMXX6aHint (6, 0, 0, 0x04, 1), {F1, MR3}, EMPTY}, 652 {"ldfe.s.nta", M, OpMXX6aHint (6, 0, 0, 0x04, 3), {F1, MR3}, EMPTY}, 653 {"ldfs.a", M, OpMXX6aHint (6, 0, 0, 0x0a, 0), {F1, MR3}, EMPTY}, 654 {"ldfs.a.nt1", M, OpMXX6aHint (6, 0, 0, 0x0a, 1), {F1, MR3}, EMPTY}, 655 {"ldfs.a.nta", M, OpMXX6aHint (6, 0, 0, 0x0a, 3), {F1, MR3}, EMPTY}, 656 {"ldfd.a", M, OpMXX6aHint (6, 0, 0, 0x0b, 0), {F1, MR3}, EMPTY}, 657 {"ldfd.a.nt1", M, OpMXX6aHint (6, 0, 0, 0x0b, 1), {F1, MR3}, EMPTY}, 658 {"ldfd.a.nta", M, OpMXX6aHint (6, 0, 0, 0x0b, 3), {F1, MR3}, EMPTY}, 659 {"ldf8.a", M, OpMXX6aHint (6, 0, 0, 0x09, 0), {F1, MR3}, EMPTY}, 660 {"ldf8.a.nt1", M, OpMXX6aHint (6, 0, 0, 0x09, 1), {F1, MR3}, EMPTY}, 661 {"ldf8.a.nta", M, OpMXX6aHint (6, 0, 0, 0x09, 3), {F1, MR3}, EMPTY}, 662 {"ldfe.a", M, OpMXX6aHint (6, 0, 0, 0x08, 0), {F1, MR3}, EMPTY}, 663 {"ldfe.a.nt1", M, OpMXX6aHint (6, 0, 0, 0x08, 1), {F1, MR3}, EMPTY}, 664 {"ldfe.a.nta", M, OpMXX6aHint (6, 0, 0, 0x08, 3), {F1, MR3}, EMPTY}, 665 {"ldfs.sa", M, OpMXX6aHint (6, 0, 0, 0x0e, 0), {F1, MR3}, EMPTY}, 666 {"ldfs.sa.nt1", M, OpMXX6aHint (6, 0, 0, 0x0e, 1), {F1, MR3}, EMPTY}, 667 {"ldfs.sa.nta", M, OpMXX6aHint (6, 0, 0, 0x0e, 3), {F1, MR3}, EMPTY}, 668 {"ldfd.sa", M, OpMXX6aHint (6, 0, 0, 0x0f, 0), {F1, MR3}, EMPTY}, 669 {"ldfd.sa.nt1", M, OpMXX6aHint (6, 0, 0, 0x0f, 1), {F1, MR3}, EMPTY}, 670 {"ldfd.sa.nta", M, OpMXX6aHint (6, 0, 0, 0x0f, 3), {F1, MR3}, EMPTY}, 671 {"ldf8.sa", M, OpMXX6aHint (6, 0, 0, 0x0d, 0), {F1, MR3}, EMPTY}, 672 {"ldf8.sa.nt1", M, OpMXX6aHint (6, 0, 0, 0x0d, 1), {F1, MR3}, EMPTY}, 673 {"ldf8.sa.nta", M, OpMXX6aHint (6, 0, 0, 0x0d, 3), {F1, MR3}, EMPTY}, 674 {"ldfe.sa", M, OpMXX6aHint (6, 0, 0, 0x0c, 0), {F1, MR3}, EMPTY}, 675 {"ldfe.sa.nt1", M, OpMXX6aHint (6, 0, 0, 0x0c, 1), {F1, MR3}, EMPTY}, 676 {"ldfe.sa.nta", M, OpMXX6aHint (6, 0, 0, 0x0c, 3), {F1, MR3}, EMPTY}, 677 {"ldf.fill", M, OpMXX6aHint (6, 0, 0, 0x1b, 0), {F1, MR3}, EMPTY}, 678 {"ldf.fill.nt1", M, OpMXX6aHint (6, 0, 0, 0x1b, 1), {F1, MR3}, EMPTY}, 679 {"ldf.fill.nta", M, OpMXX6aHint (6, 0, 0, 0x1b, 3), {F1, MR3}, EMPTY}, 680 {"ldfs.c.clr", M, OpMXX6aHint (6, 0, 0, 0x22, 0), {F1, MR3}, EMPTY}, 681 {"ldfs.c.clr.nt1", M, OpMXX6aHint (6, 0, 0, 0x22, 1), {F1, MR3}, EMPTY}, 682 {"ldfs.c.clr.nta", M, OpMXX6aHint (6, 0, 0, 0x22, 3), {F1, MR3}, EMPTY}, 683 {"ldfd.c.clr", M, OpMXX6aHint (6, 0, 0, 0x23, 0), {F1, MR3}, EMPTY}, 684 {"ldfd.c.clr.nt1", M, OpMXX6aHint (6, 0, 0, 0x23, 1), {F1, MR3}, EMPTY}, 685 {"ldfd.c.clr.nta", M, OpMXX6aHint (6, 0, 0, 0x23, 3), {F1, MR3}, EMPTY}, 686 {"ldf8.c.clr", M, OpMXX6aHint (6, 0, 0, 0x21, 0), {F1, MR3}, EMPTY}, 687 {"ldf8.c.clr.nt1", M, OpMXX6aHint (6, 0, 0, 0x21, 1), {F1, MR3}, EMPTY}, 688 {"ldf8.c.clr.nta", M, OpMXX6aHint (6, 0, 0, 0x21, 3), {F1, MR3}, EMPTY}, 689 {"ldfe.c.clr", M, OpMXX6aHint (6, 0, 0, 0x20, 0), {F1, MR3}, EMPTY}, 690 {"ldfe.c.clr.nt1", M, OpMXX6aHint (6, 0, 0, 0x20, 1), {F1, MR3}, EMPTY}, 691 {"ldfe.c.clr.nta", M, OpMXX6aHint (6, 0, 0, 0x20, 3), {F1, MR3}, EMPTY}, 692 {"ldfs.c.nc", M, OpMXX6aHint (6, 0, 0, 0x26, 0), {F1, MR3}, EMPTY}, 693 {"ldfs.c.nc.nt1", M, OpMXX6aHint (6, 0, 0, 0x26, 1), {F1, MR3}, EMPTY}, 694 {"ldfs.c.nc.nta", M, OpMXX6aHint (6, 0, 0, 0x26, 3), {F1, MR3}, EMPTY}, 695 {"ldfd.c.nc", M, OpMXX6aHint (6, 0, 0, 0x27, 0), {F1, MR3}, EMPTY}, 696 {"ldfd.c.nc.nt1", M, OpMXX6aHint (6, 0, 0, 0x27, 1), {F1, MR3}, EMPTY}, 697 {"ldfd.c.nc.nta", M, OpMXX6aHint (6, 0, 0, 0x27, 3), {F1, MR3}, EMPTY}, 698 {"ldf8.c.nc", M, OpMXX6aHint (6, 0, 0, 0x25, 0), {F1, MR3}, EMPTY}, 699 {"ldf8.c.nc.nt1", M, OpMXX6aHint (6, 0, 0, 0x25, 1), {F1, MR3}, EMPTY}, 700 {"ldf8.c.nc.nta", M, OpMXX6aHint (6, 0, 0, 0x25, 3), {F1, MR3}, EMPTY}, 701 {"ldfe.c.nc", M, OpMXX6aHint (6, 0, 0, 0x24, 0), {F1, MR3}, EMPTY}, 702 {"ldfe.c.nc.nt1", M, OpMXX6aHint (6, 0, 0, 0x24, 1), {F1, MR3}, EMPTY}, 703 {"ldfe.c.nc.nta", M, OpMXX6aHint (6, 0, 0, 0x24, 3), {F1, MR3}, EMPTY}, 704 705 /* Floating-point load w/increment by register. */ 706 #define FLDINCREG(c,h) M, OpMXX6aHint (6, 1, 0, c, h), {F1, MR3, R2}, POSTINC, 0, NULL 707 {"ldfs", FLDINCREG (0x02, 0)}, 708 {"ldfs.nt1", FLDINCREG (0x02, 1)}, 709 {"ldfs.nta", FLDINCREG (0x02, 3)}, 710 {"ldfd", FLDINCREG (0x03, 0)}, 711 {"ldfd.nt1", FLDINCREG (0x03, 1)}, 712 {"ldfd.nta", FLDINCREG (0x03, 3)}, 713 {"ldf8", FLDINCREG (0x01, 0)}, 714 {"ldf8.nt1", FLDINCREG (0x01, 1)}, 715 {"ldf8.nta", FLDINCREG (0x01, 3)}, 716 {"ldfe", FLDINCREG (0x00, 0)}, 717 {"ldfe.nt1", FLDINCREG (0x00, 1)}, 718 {"ldfe.nta", FLDINCREG (0x00, 3)}, 719 {"ldfs.s", FLDINCREG (0x06, 0)}, 720 {"ldfs.s.nt1", FLDINCREG (0x06, 1)}, 721 {"ldfs.s.nta", FLDINCREG (0x06, 3)}, 722 {"ldfd.s", FLDINCREG (0x07, 0)}, 723 {"ldfd.s.nt1", FLDINCREG (0x07, 1)}, 724 {"ldfd.s.nta", FLDINCREG (0x07, 3)}, 725 {"ldf8.s", FLDINCREG (0x05, 0)}, 726 {"ldf8.s.nt1", FLDINCREG (0x05, 1)}, 727 {"ldf8.s.nta", FLDINCREG (0x05, 3)}, 728 {"ldfe.s", FLDINCREG (0x04, 0)}, 729 {"ldfe.s.nt1", FLDINCREG (0x04, 1)}, 730 {"ldfe.s.nta", FLDINCREG (0x04, 3)}, 731 {"ldfs.a", FLDINCREG (0x0a, 0)}, 732 {"ldfs.a.nt1", FLDINCREG (0x0a, 1)}, 733 {"ldfs.a.nta", FLDINCREG (0x0a, 3)}, 734 {"ldfd.a", FLDINCREG (0x0b, 0)}, 735 {"ldfd.a.nt1", FLDINCREG (0x0b, 1)}, 736 {"ldfd.a.nta", FLDINCREG (0x0b, 3)}, 737 {"ldf8.a", FLDINCREG (0x09, 0)}, 738 {"ldf8.a.nt1", FLDINCREG (0x09, 1)}, 739 {"ldf8.a.nta", FLDINCREG (0x09, 3)}, 740 {"ldfe.a", FLDINCREG (0x08, 0)}, 741 {"ldfe.a.nt1", FLDINCREG (0x08, 1)}, 742 {"ldfe.a.nta", FLDINCREG (0x08, 3)}, 743 {"ldfs.sa", FLDINCREG (0x0e, 0)}, 744 {"ldfs.sa.nt1", FLDINCREG (0x0e, 1)}, 745 {"ldfs.sa.nta", FLDINCREG (0x0e, 3)}, 746 {"ldfd.sa", FLDINCREG (0x0f, 0)}, 747 {"ldfd.sa.nt1", FLDINCREG (0x0f, 1)}, 748 {"ldfd.sa.nta", FLDINCREG (0x0f, 3)}, 749 {"ldf8.sa", FLDINCREG (0x0d, 0)}, 750 {"ldf8.sa.nt1", FLDINCREG (0x0d, 1)}, 751 {"ldf8.sa.nta", FLDINCREG (0x0d, 3)}, 752 {"ldfe.sa", FLDINCREG (0x0c, 0)}, 753 {"ldfe.sa.nt1", FLDINCREG (0x0c, 1)}, 754 {"ldfe.sa.nta", FLDINCREG (0x0c, 3)}, 755 {"ldf.fill", FLDINCREG (0x1b, 0)}, 756 {"ldf.fill.nt1", FLDINCREG (0x1b, 1)}, 757 {"ldf.fill.nta", FLDINCREG (0x1b, 3)}, 758 {"ldfs.c.clr", FLDINCREG (0x22, 0)}, 759 {"ldfs.c.clr.nt1", FLDINCREG (0x22, 1)}, 760 {"ldfs.c.clr.nta", FLDINCREG (0x22, 3)}, 761 {"ldfd.c.clr", FLDINCREG (0x23, 0)}, 762 {"ldfd.c.clr.nt1", FLDINCREG (0x23, 1)}, 763 {"ldfd.c.clr.nta", FLDINCREG (0x23, 3)}, 764 {"ldf8.c.clr", FLDINCREG (0x21, 0)}, 765 {"ldf8.c.clr.nt1", FLDINCREG (0x21, 1)}, 766 {"ldf8.c.clr.nta", FLDINCREG (0x21, 3)}, 767 {"ldfe.c.clr", FLDINCREG (0x20, 0)}, 768 {"ldfe.c.clr.nt1", FLDINCREG (0x20, 1)}, 769 {"ldfe.c.clr.nta", FLDINCREG (0x20, 3)}, 770 {"ldfs.c.nc", FLDINCREG (0x26, 0)}, 771 {"ldfs.c.nc.nt1", FLDINCREG (0x26, 1)}, 772 {"ldfs.c.nc.nta", FLDINCREG (0x26, 3)}, 773 {"ldfd.c.nc", FLDINCREG (0x27, 0)}, 774 {"ldfd.c.nc.nt1", FLDINCREG (0x27, 1)}, 775 {"ldfd.c.nc.nta", FLDINCREG (0x27, 3)}, 776 {"ldf8.c.nc", FLDINCREG (0x25, 0)}, 777 {"ldf8.c.nc.nt1", FLDINCREG (0x25, 1)}, 778 {"ldf8.c.nc.nta", FLDINCREG (0x25, 3)}, 779 {"ldfe.c.nc", FLDINCREG (0x24, 0)}, 780 {"ldfe.c.nc.nt1", FLDINCREG (0x24, 1)}, 781 {"ldfe.c.nc.nta", FLDINCREG (0x24, 3)}, 782 #undef FLDINCREG 783 784 /* Floating-point store. */ 785 {"stfs", M, OpMXX6aHint (6, 0, 0, 0x32, 0), {MR3, F2}, EMPTY}, 786 {"stfs.nta", M, OpMXX6aHint (6, 0, 0, 0x32, 3), {MR3, F2}, EMPTY}, 787 {"stfd", M, OpMXX6aHint (6, 0, 0, 0x33, 0), {MR3, F2}, EMPTY}, 788 {"stfd.nta", M, OpMXX6aHint (6, 0, 0, 0x33, 3), {MR3, F2}, EMPTY}, 789 {"stf8", M, OpMXX6aHint (6, 0, 0, 0x31, 0), {MR3, F2}, EMPTY}, 790 {"stf8.nta", M, OpMXX6aHint (6, 0, 0, 0x31, 3), {MR3, F2}, EMPTY}, 791 {"stfe", M, OpMXX6aHint (6, 0, 0, 0x30, 0), {MR3, F2}, EMPTY}, 792 {"stfe.nta", M, OpMXX6aHint (6, 0, 0, 0x30, 3), {MR3, F2}, EMPTY}, 793 {"stf.spill", M, OpMXX6aHint (6, 0, 0, 0x3b, 0), {MR3, F2}, EMPTY}, 794 {"stf.spill.nta", M, OpMXX6aHint (6, 0, 0, 0x3b, 3), {MR3, F2}, EMPTY}, 795 796 /* Floating-point load pair. */ 797 {"ldfps", M2, OpMXX6aHint (6, 0, 1, 0x02, 0), {F1, F2, MR3}, EMPTY}, 798 {"ldfps.nt1", M2, OpMXX6aHint (6, 0, 1, 0x02, 1), {F1, F2, MR3}, EMPTY}, 799 {"ldfps.nta", M2, OpMXX6aHint (6, 0, 1, 0x02, 3), {F1, F2, MR3}, EMPTY}, 800 {"ldfpd", M2, OpMXX6aHint (6, 0, 1, 0x03, 0), {F1, F2, MR3}, EMPTY}, 801 {"ldfpd.nt1", M2, OpMXX6aHint (6, 0, 1, 0x03, 1), {F1, F2, MR3}, EMPTY}, 802 {"ldfpd.nta", M2, OpMXX6aHint (6, 0, 1, 0x03, 3), {F1, F2, MR3}, EMPTY}, 803 {"ldfp8", M2, OpMXX6aHint (6, 0, 1, 0x01, 0), {F1, F2, MR3}, EMPTY}, 804 {"ldfp8.nt1", M2, OpMXX6aHint (6, 0, 1, 0x01, 1), {F1, F2, MR3}, EMPTY}, 805 {"ldfp8.nta", M2, OpMXX6aHint (6, 0, 1, 0x01, 3), {F1, F2, MR3}, EMPTY}, 806 {"ldfps.s", M2, OpMXX6aHint (6, 0, 1, 0x06, 0), {F1, F2, MR3}, EMPTY}, 807 {"ldfps.s.nt1", M2, OpMXX6aHint (6, 0, 1, 0x06, 1), {F1, F2, MR3}, EMPTY}, 808 {"ldfps.s.nta", M2, OpMXX6aHint (6, 0, 1, 0x06, 3), {F1, F2, MR3}, EMPTY}, 809 {"ldfpd.s", M2, OpMXX6aHint (6, 0, 1, 0x07, 0), {F1, F2, MR3}, EMPTY}, 810 {"ldfpd.s.nt1", M2, OpMXX6aHint (6, 0, 1, 0x07, 1), {F1, F2, MR3}, EMPTY}, 811 {"ldfpd.s.nta", M2, OpMXX6aHint (6, 0, 1, 0x07, 3), {F1, F2, MR3}, EMPTY}, 812 {"ldfp8.s", M2, OpMXX6aHint (6, 0, 1, 0x05, 0), {F1, F2, MR3}, EMPTY}, 813 {"ldfp8.s.nt1", M2, OpMXX6aHint (6, 0, 1, 0x05, 1), {F1, F2, MR3}, EMPTY}, 814 {"ldfp8.s.nta", M2, OpMXX6aHint (6, 0, 1, 0x05, 3), {F1, F2, MR3}, EMPTY}, 815 {"ldfps.a", M2, OpMXX6aHint (6, 0, 1, 0x0a, 0), {F1, F2, MR3}, EMPTY}, 816 {"ldfps.a.nt1", M2, OpMXX6aHint (6, 0, 1, 0x0a, 1), {F1, F2, MR3}, EMPTY}, 817 {"ldfps.a.nta", M2, OpMXX6aHint (6, 0, 1, 0x0a, 3), {F1, F2, MR3}, EMPTY}, 818 {"ldfpd.a", M2, OpMXX6aHint (6, 0, 1, 0x0b, 0), {F1, F2, MR3}, EMPTY}, 819 {"ldfpd.a.nt1", M2, OpMXX6aHint (6, 0, 1, 0x0b, 1), {F1, F2, MR3}, EMPTY}, 820 {"ldfpd.a.nta", M2, OpMXX6aHint (6, 0, 1, 0x0b, 3), {F1, F2, MR3}, EMPTY}, 821 {"ldfp8.a", M2, OpMXX6aHint (6, 0, 1, 0x09, 0), {F1, F2, MR3}, EMPTY}, 822 {"ldfp8.a.nt1", M2, OpMXX6aHint (6, 0, 1, 0x09, 1), {F1, F2, MR3}, EMPTY}, 823 {"ldfp8.a.nta", M2, OpMXX6aHint (6, 0, 1, 0x09, 3), {F1, F2, MR3}, EMPTY}, 824 {"ldfps.sa", M2, OpMXX6aHint (6, 0, 1, 0x0e, 0), {F1, F2, MR3}, EMPTY}, 825 {"ldfps.sa.nt1", M2, OpMXX6aHint (6, 0, 1, 0x0e, 1), {F1, F2, MR3}, EMPTY}, 826 {"ldfps.sa.nta", M2, OpMXX6aHint (6, 0, 1, 0x0e, 3), {F1, F2, MR3}, EMPTY}, 827 {"ldfpd.sa", M2, OpMXX6aHint (6, 0, 1, 0x0f, 0), {F1, F2, MR3}, EMPTY}, 828 {"ldfpd.sa.nt1", M2, OpMXX6aHint (6, 0, 1, 0x0f, 1), {F1, F2, MR3}, EMPTY}, 829 {"ldfpd.sa.nta", M2, OpMXX6aHint (6, 0, 1, 0x0f, 3), {F1, F2, MR3}, EMPTY}, 830 {"ldfp8.sa", M2, OpMXX6aHint (6, 0, 1, 0x0d, 0), {F1, F2, MR3}, EMPTY}, 831 {"ldfp8.sa.nt1", M2, OpMXX6aHint (6, 0, 1, 0x0d, 1), {F1, F2, MR3}, EMPTY}, 832 {"ldfp8.sa.nta", M2, OpMXX6aHint (6, 0, 1, 0x0d, 3), {F1, F2, MR3}, EMPTY}, 833 {"ldfps.c.clr", M2, OpMXX6aHint (6, 0, 1, 0x22, 0), {F1, F2, MR3}, EMPTY}, 834 {"ldfps.c.clr.nt1", M2, OpMXX6aHint (6, 0, 1, 0x22, 1), {F1, F2, MR3}, EMPTY}, 835 {"ldfps.c.clr.nta", M2, OpMXX6aHint (6, 0, 1, 0x22, 3), {F1, F2, MR3}, EMPTY}, 836 {"ldfpd.c.clr", M2, OpMXX6aHint (6, 0, 1, 0x23, 0), {F1, F2, MR3}, EMPTY}, 837 {"ldfpd.c.clr.nt1", M2, OpMXX6aHint (6, 0, 1, 0x23, 1), {F1, F2, MR3}, EMPTY}, 838 {"ldfpd.c.clr.nta", M2, OpMXX6aHint (6, 0, 1, 0x23, 3), {F1, F2, MR3}, EMPTY}, 839 {"ldfp8.c.clr", M2, OpMXX6aHint (6, 0, 1, 0x21, 0), {F1, F2, MR3}, EMPTY}, 840 {"ldfp8.c.clr.nt1", M2, OpMXX6aHint (6, 0, 1, 0x21, 1), {F1, F2, MR3}, EMPTY}, 841 {"ldfp8.c.clr.nta", M2, OpMXX6aHint (6, 0, 1, 0x21, 3), {F1, F2, MR3}, EMPTY}, 842 {"ldfps.c.nc", M2, OpMXX6aHint (6, 0, 1, 0x26, 0), {F1, F2, MR3}, EMPTY}, 843 {"ldfps.c.nc.nt1", M2, OpMXX6aHint (6, 0, 1, 0x26, 1), {F1, F2, MR3}, EMPTY}, 844 {"ldfps.c.nc.nta", M2, OpMXX6aHint (6, 0, 1, 0x26, 3), {F1, F2, MR3}, EMPTY}, 845 {"ldfpd.c.nc", M2, OpMXX6aHint (6, 0, 1, 0x27, 0), {F1, F2, MR3}, EMPTY}, 846 {"ldfpd.c.nc.nt1", M2, OpMXX6aHint (6, 0, 1, 0x27, 1), {F1, F2, MR3}, EMPTY}, 847 {"ldfpd.c.nc.nta", M2, OpMXX6aHint (6, 0, 1, 0x27, 3), {F1, F2, MR3}, EMPTY}, 848 {"ldfp8.c.nc", M2, OpMXX6aHint (6, 0, 1, 0x25, 0), {F1, F2, MR3}, EMPTY}, 849 {"ldfp8.c.nc.nt1", M2, OpMXX6aHint (6, 0, 1, 0x25, 1), {F1, F2, MR3}, EMPTY}, 850 {"ldfp8.c.nc.nta", M2, OpMXX6aHint (6, 0, 1, 0x25, 3), {F1, F2, MR3}, EMPTY}, 851 852 /* Floating-point load pair w/increment by immediate. */ 853 #define LD(a,b,c) M2, OpMXX6aHint (6, 1, 1, a, b), {F1, F2, MR3, c}, POSTINC, 0, NULL 854 {"ldfps", LD (0x02, 0, C8)}, 855 {"ldfps.nt1", LD (0x02, 1, C8)}, 856 {"ldfps.nta", LD (0x02, 3, C8)}, 857 {"ldfpd", LD (0x03, 0, C16)}, 858 {"ldfpd.nt1", LD (0x03, 1, C16)}, 859 {"ldfpd.nta", LD (0x03, 3, C16)}, 860 {"ldfp8", LD (0x01, 0, C16)}, 861 {"ldfp8.nt1", LD (0x01, 1, C16)}, 862 {"ldfp8.nta", LD (0x01, 3, C16)}, 863 {"ldfps.s", LD (0x06, 0, C8)}, 864 {"ldfps.s.nt1", LD (0x06, 1, C8)}, 865 {"ldfps.s.nta", LD (0x06, 3, C8)}, 866 {"ldfpd.s", LD (0x07, 0, C16)}, 867 {"ldfpd.s.nt1", LD (0x07, 1, C16)}, 868 {"ldfpd.s.nta", LD (0x07, 3, C16)}, 869 {"ldfp8.s", LD (0x05, 0, C16)}, 870 {"ldfp8.s.nt1", LD (0x05, 1, C16)}, 871 {"ldfp8.s.nta", LD (0x05, 3, C16)}, 872 {"ldfps.a", LD (0x0a, 0, C8)}, 873 {"ldfps.a.nt1", LD (0x0a, 1, C8)}, 874 {"ldfps.a.nta", LD (0x0a, 3, C8)}, 875 {"ldfpd.a", LD (0x0b, 0, C16)}, 876 {"ldfpd.a.nt1", LD (0x0b, 1, C16)}, 877 {"ldfpd.a.nta", LD (0x0b, 3, C16)}, 878 {"ldfp8.a", LD (0x09, 0, C16)}, 879 {"ldfp8.a.nt1", LD (0x09, 1, C16)}, 880 {"ldfp8.a.nta", LD (0x09, 3, C16)}, 881 {"ldfps.sa", LD (0x0e, 0, C8)}, 882 {"ldfps.sa.nt1", LD (0x0e, 1, C8)}, 883 {"ldfps.sa.nta", LD (0x0e, 3, C8)}, 884 {"ldfpd.sa", LD (0x0f, 0, C16)}, 885 {"ldfpd.sa.nt1", LD (0x0f, 1, C16)}, 886 {"ldfpd.sa.nta", LD (0x0f, 3, C16)}, 887 {"ldfp8.sa", LD (0x0d, 0, C16)}, 888 {"ldfp8.sa.nt1", LD (0x0d, 1, C16)}, 889 {"ldfp8.sa.nta", LD (0x0d, 3, C16)}, 890 {"ldfps.c.clr", LD (0x22, 0, C8)}, 891 {"ldfps.c.clr.nt1", LD (0x22, 1, C8)}, 892 {"ldfps.c.clr.nta", LD (0x22, 3, C8)}, 893 {"ldfpd.c.clr", LD (0x23, 0, C16)}, 894 {"ldfpd.c.clr.nt1", LD (0x23, 1, C16)}, 895 {"ldfpd.c.clr.nta", LD (0x23, 3, C16)}, 896 {"ldfp8.c.clr", LD (0x21, 0, C16)}, 897 {"ldfp8.c.clr.nt1", LD (0x21, 1, C16)}, 898 {"ldfp8.c.clr.nta", LD (0x21, 3, C16)}, 899 {"ldfps.c.nc", LD (0x26, 0, C8)}, 900 {"ldfps.c.nc.nt1", LD (0x26, 1, C8)}, 901 {"ldfps.c.nc.nta", LD (0x26, 3, C8)}, 902 {"ldfpd.c.nc", LD (0x27, 0, C16)}, 903 {"ldfpd.c.nc.nt1", LD (0x27, 1, C16)}, 904 {"ldfpd.c.nc.nta", LD (0x27, 3, C16)}, 905 {"ldfp8.c.nc", LD (0x25, 0, C16)}, 906 {"ldfp8.c.nc.nt1", LD (0x25, 1, C16)}, 907 {"ldfp8.c.nc.nta", LD (0x25, 3, C16)}, 908 #undef LD 909 910 /* Line prefetch. */ 911 {"lfetch", M0, OpMXX6aHint (6, 0, 0, 0x2c, 0), {MR3}, EMPTY}, 912 {"lfetch.nt1", M0, OpMXX6aHint (6, 0, 0, 0x2c, 1), {MR3}, EMPTY}, 913 {"lfetch.nt2", M0, OpMXX6aHint (6, 0, 0, 0x2c, 2), {MR3}, EMPTY}, 914 {"lfetch.nta", M0, OpMXX6aHint (6, 0, 0, 0x2c, 3), {MR3}, EMPTY}, 915 {"lfetch.excl", M0, OpMXX6aHint (6, 0, 0, 0x2d, 0), {MR3}, EMPTY}, 916 {"lfetch.excl.nt1", M0, OpMXX6aHint (6, 0, 0, 0x2d, 1), {MR3}, EMPTY}, 917 {"lfetch.excl.nt2", M0, OpMXX6aHint (6, 0, 0, 0x2d, 2), {MR3}, EMPTY}, 918 {"lfetch.excl.nta", M0, OpMXX6aHint (6, 0, 0, 0x2d, 3), {MR3}, EMPTY}, 919 {"lfetch.fault", M0, OpMXX6aHint (6, 0, 0, 0x2e, 0), {MR3}, EMPTY}, 920 {"lfetch.fault.nt1", M0, OpMXX6aHint (6, 0, 0, 0x2e, 1), {MR3}, EMPTY}, 921 {"lfetch.fault.nt2", M0, OpMXX6aHint (6, 0, 0, 0x2e, 2), {MR3}, EMPTY}, 922 {"lfetch.fault.nta", M0, OpMXX6aHint (6, 0, 0, 0x2e, 3), {MR3}, EMPTY}, 923 {"lfetch.fault.excl", M0, OpMXX6aHint (6, 0, 0, 0x2f, 0), {MR3}, EMPTY}, 924 {"lfetch.fault.excl.nt1", M0, OpMXX6aHint (6, 0, 0, 0x2f, 1), {MR3}, EMPTY}, 925 {"lfetch.fault.excl.nt2", M0, OpMXX6aHint (6, 0, 0, 0x2f, 2), {MR3}, EMPTY}, 926 {"lfetch.fault.excl.nta", M0, OpMXX6aHint (6, 0, 0, 0x2f, 3), {MR3}, EMPTY}, 927 928 /* Line prefetch w/increment by register. */ 929 #define LFETCHINCREG(c,h) M0, OpMXX6aHint (6, 1, 0, c, h), {MR3, R2}, POSTINC, 0, NULL 930 {"lfetch", LFETCHINCREG (0x2c, 0)}, 931 {"lfetch.nt1", LFETCHINCREG (0x2c, 1)}, 932 {"lfetch.nt2", LFETCHINCREG (0x2c, 2)}, 933 {"lfetch.nta", LFETCHINCREG (0x2c, 3)}, 934 {"lfetch.excl", LFETCHINCREG (0x2d, 0)}, 935 {"lfetch.excl.nt1", LFETCHINCREG (0x2d, 1)}, 936 {"lfetch.excl.nt2", LFETCHINCREG (0x2d, 2)}, 937 {"lfetch.excl.nta", LFETCHINCREG (0x2d, 3)}, 938 {"lfetch.fault", LFETCHINCREG (0x2e, 0)}, 939 {"lfetch.fault.nt1", LFETCHINCREG (0x2e, 1)}, 940 {"lfetch.fault.nt2", LFETCHINCREG (0x2e, 2)}, 941 {"lfetch.fault.nta", LFETCHINCREG (0x2e, 3)}, 942 {"lfetch.fault.excl", LFETCHINCREG (0x2f, 0)}, 943 {"lfetch.fault.excl.nt1", LFETCHINCREG (0x2f, 1)}, 944 {"lfetch.fault.excl.nt2", LFETCHINCREG (0x2f, 2)}, 945 {"lfetch.fault.excl.nta", LFETCHINCREG (0x2f, 3)}, 946 #undef LFETCHINCREG 947 948 /* Semaphore operations. */ 949 {"setf.sig", M, OpMXX6a (6, 0, 1, 0x1c), {F1, R2}, EMPTY}, 950 {"setf.exp", M, OpMXX6a (6, 0, 1, 0x1d), {F1, R2}, EMPTY}, 951 {"setf.s", M, OpMXX6a (6, 0, 1, 0x1e), {F1, R2}, EMPTY}, 952 {"setf.d", M, OpMXX6a (6, 0, 1, 0x1f), {F1, R2}, EMPTY}, 953 954 /* Floating-point load w/increment by immediate. */ 955 #define FLDINCIMMED(c,h) M, OpX6aHint (7, c, h), {F1, MR3, IMM9b}, POSTINC, 0, NULL 956 {"ldfs", FLDINCIMMED (0x02, 0)}, 957 {"ldfs.nt1", FLDINCIMMED (0x02, 1)}, 958 {"ldfs.nta", FLDINCIMMED (0x02, 3)}, 959 {"ldfd", FLDINCIMMED (0x03, 0)}, 960 {"ldfd.nt1", FLDINCIMMED (0x03, 1)}, 961 {"ldfd.nta", FLDINCIMMED (0x03, 3)}, 962 {"ldf8", FLDINCIMMED (0x01, 0)}, 963 {"ldf8.nt1", FLDINCIMMED (0x01, 1)}, 964 {"ldf8.nta", FLDINCIMMED (0x01, 3)}, 965 {"ldfe", FLDINCIMMED (0x00, 0)}, 966 {"ldfe.nt1", FLDINCIMMED (0x00, 1)}, 967 {"ldfe.nta", FLDINCIMMED (0x00, 3)}, 968 {"ldfs.s", FLDINCIMMED (0x06, 0)}, 969 {"ldfs.s.nt1", FLDINCIMMED (0x06, 1)}, 970 {"ldfs.s.nta", FLDINCIMMED (0x06, 3)}, 971 {"ldfd.s", FLDINCIMMED (0x07, 0)}, 972 {"ldfd.s.nt1", FLDINCIMMED (0x07, 1)}, 973 {"ldfd.s.nta", FLDINCIMMED (0x07, 3)}, 974 {"ldf8.s", FLDINCIMMED (0x05, 0)}, 975 {"ldf8.s.nt1", FLDINCIMMED (0x05, 1)}, 976 {"ldf8.s.nta", FLDINCIMMED (0x05, 3)}, 977 {"ldfe.s", FLDINCIMMED (0x04, 0)}, 978 {"ldfe.s.nt1", FLDINCIMMED (0x04, 1)}, 979 {"ldfe.s.nta", FLDINCIMMED (0x04, 3)}, 980 {"ldfs.a", FLDINCIMMED (0x0a, 0)}, 981 {"ldfs.a.nt1", FLDINCIMMED (0x0a, 1)}, 982 {"ldfs.a.nta", FLDINCIMMED (0x0a, 3)}, 983 {"ldfd.a", FLDINCIMMED (0x0b, 0)}, 984 {"ldfd.a.nt1", FLDINCIMMED (0x0b, 1)}, 985 {"ldfd.a.nta", FLDINCIMMED (0x0b, 3)}, 986 {"ldf8.a", FLDINCIMMED (0x09, 0)}, 987 {"ldf8.a.nt1", FLDINCIMMED (0x09, 1)}, 988 {"ldf8.a.nta", FLDINCIMMED (0x09, 3)}, 989 {"ldfe.a", FLDINCIMMED (0x08, 0)}, 990 {"ldfe.a.nt1", FLDINCIMMED (0x08, 1)}, 991 {"ldfe.a.nta", FLDINCIMMED (0x08, 3)}, 992 {"ldfs.sa", FLDINCIMMED (0x0e, 0)}, 993 {"ldfs.sa.nt1", FLDINCIMMED (0x0e, 1)}, 994 {"ldfs.sa.nta", FLDINCIMMED (0x0e, 3)}, 995 {"ldfd.sa", FLDINCIMMED (0x0f, 0)}, 996 {"ldfd.sa.nt1", FLDINCIMMED (0x0f, 1)}, 997 {"ldfd.sa.nta", FLDINCIMMED (0x0f, 3)}, 998 {"ldf8.sa", FLDINCIMMED (0x0d, 0)}, 999 {"ldf8.sa.nt1", FLDINCIMMED (0x0d, 1)}, 1000 {"ldf8.sa.nta", FLDINCIMMED (0x0d, 3)}, 1001 {"ldfe.sa", FLDINCIMMED (0x0c, 0)}, 1002 {"ldfe.sa.nt1", FLDINCIMMED (0x0c, 1)}, 1003 {"ldfe.sa.nta", FLDINCIMMED (0x0c, 3)}, 1004 {"ldf.fill", FLDINCIMMED (0x1b, 0)}, 1005 {"ldf.fill.nt1", FLDINCIMMED (0x1b, 1)}, 1006 {"ldf.fill.nta", FLDINCIMMED (0x1b, 3)}, 1007 {"ldfs.c.clr", FLDINCIMMED (0x22, 0)}, 1008 {"ldfs.c.clr.nt1", FLDINCIMMED (0x22, 1)}, 1009 {"ldfs.c.clr.nta", FLDINCIMMED (0x22, 3)}, 1010 {"ldfd.c.clr", FLDINCIMMED (0x23, 0)}, 1011 {"ldfd.c.clr.nt1", FLDINCIMMED (0x23, 1)}, 1012 {"ldfd.c.clr.nta", FLDINCIMMED (0x23, 3)}, 1013 {"ldf8.c.clr", FLDINCIMMED (0x21, 0)}, 1014 {"ldf8.c.clr.nt1", FLDINCIMMED (0x21, 1)}, 1015 {"ldf8.c.clr.nta", FLDINCIMMED (0x21, 3)}, 1016 {"ldfe.c.clr", FLDINCIMMED (0x20, 0)}, 1017 {"ldfe.c.clr.nt1", FLDINCIMMED (0x20, 1)}, 1018 {"ldfe.c.clr.nta", FLDINCIMMED (0x20, 3)}, 1019 {"ldfs.c.nc", FLDINCIMMED (0x26, 0)}, 1020 {"ldfs.c.nc.nt1", FLDINCIMMED (0x26, 1)}, 1021 {"ldfs.c.nc.nta", FLDINCIMMED (0x26, 3)}, 1022 {"ldfd.c.nc", FLDINCIMMED (0x27, 0)}, 1023 {"ldfd.c.nc.nt1", FLDINCIMMED (0x27, 1)}, 1024 {"ldfd.c.nc.nta", FLDINCIMMED (0x27, 3)}, 1025 {"ldf8.c.nc", FLDINCIMMED (0x25, 0)}, 1026 {"ldf8.c.nc.nt1", FLDINCIMMED (0x25, 1)}, 1027 {"ldf8.c.nc.nta", FLDINCIMMED (0x25, 3)}, 1028 {"ldfe.c.nc", FLDINCIMMED (0x24, 0)}, 1029 {"ldfe.c.nc.nt1", FLDINCIMMED (0x24, 1)}, 1030 {"ldfe.c.nc.nta", FLDINCIMMED (0x24, 3)}, 1031 #undef FLDINCIMMED 1032 1033 /* Floating-point store w/increment by immediate. */ 1034 #define FSTINCIMMED(c,h) M, OpX6aHint (7, c, h), {MR3, F2, IMM9a}, POSTINC, 0, NULL 1035 {"stfs", FSTINCIMMED (0x32, 0)}, 1036 {"stfs.nta", FSTINCIMMED (0x32, 3)}, 1037 {"stfd", FSTINCIMMED (0x33, 0)}, 1038 {"stfd.nta", FSTINCIMMED (0x33, 3)}, 1039 {"stf8", FSTINCIMMED (0x31, 0)}, 1040 {"stf8.nta", FSTINCIMMED (0x31, 3)}, 1041 {"stfe", FSTINCIMMED (0x30, 0)}, 1042 {"stfe.nta", FSTINCIMMED (0x30, 3)}, 1043 {"stf.spill", FSTINCIMMED (0x3b, 0)}, 1044 {"stf.spill.nta", FSTINCIMMED (0x3b, 3)}, 1045 #undef FSTINCIMMED 1046 1047 /* Line prefetch w/increment by immediate. */ 1048 #define LFETCHINCIMMED(c,h) M0, OpX6aHint (7, c, h), {MR3, IMM9b}, POSTINC, 0, NULL 1049 {"lfetch", LFETCHINCIMMED (0x2c, 0)}, 1050 {"lfetch.nt1", LFETCHINCIMMED (0x2c, 1)}, 1051 {"lfetch.nt2", LFETCHINCIMMED (0x2c, 2)}, 1052 {"lfetch.nta", LFETCHINCIMMED (0x2c, 3)}, 1053 {"lfetch.excl", LFETCHINCIMMED (0x2d, 0)}, 1054 {"lfetch.excl.nt1", LFETCHINCIMMED (0x2d, 1)}, 1055 {"lfetch.excl.nt2", LFETCHINCIMMED (0x2d, 2)}, 1056 {"lfetch.excl.nta", LFETCHINCIMMED (0x2d, 3)}, 1057 {"lfetch.fault", LFETCHINCIMMED (0x2e, 0)}, 1058 {"lfetch.fault.nt1", LFETCHINCIMMED (0x2e, 1)}, 1059 {"lfetch.fault.nt2", LFETCHINCIMMED (0x2e, 2)}, 1060 {"lfetch.fault.nta", LFETCHINCIMMED (0x2e, 3)}, 1061 {"lfetch.fault.excl", LFETCHINCIMMED (0x2f, 0)}, 1062 {"lfetch.fault.excl.nt1", LFETCHINCIMMED (0x2f, 1)}, 1063 {"lfetch.fault.excl.nt2", LFETCHINCIMMED (0x2f, 2)}, 1064 {"lfetch.fault.excl.nta", LFETCHINCIMMED (0x2f, 3)}, 1065 #undef LFETCHINCIMMED 1066 1067 {NULL, 0, 0, 0, 0, {0}, 0, 0, NULL} 1068 }; 1069 1070 #undef M0 1071 #undef M 1072 #undef M2 1073 #undef bM 1074 #undef bX 1075 #undef bX2 1076 #undef bX3 1077 #undef bX4 1078 #undef bX6a 1079 #undef bX6b 1080 #undef bHint 1081 #undef mM 1082 #undef mX 1083 #undef mX2 1084 #undef mX3 1085 #undef mX4 1086 #undef mX6a 1087 #undef mX6b 1088 #undef mHint 1089 #undef OpX3 1090 #undef OpX3X6b 1091 #undef OpX3X4 1092 #undef OpX3X4X2 1093 #undef OpX6aHint 1094 #undef OpXX6aHint 1095 #undef OpMXX6a 1096 #undef OpMXX6aHint 1097 #undef EMPTY 1098