2006-11-10 H.J. Lu <hongjiu.lu@intel.com>
[binutils.git] / opcodes / ia64-opc.h
blob617de5e8fad263043541e4280b7c23a8803e3e72
1 /* ia64-opc.h -- IA-64 opcode table.
2 Copyright 1998, 1999, 2000, 2002, 2005, 2006
3 Free Software Foundation, Inc.
4 Contributed by David Mosberger-Tang <davidm@hpl.hp.com>
6 This file is part of GDB, GAS, and the GNU binutils.
8 GDB, GAS, and the GNU binutils are free software; you can redistribute
9 them and/or modify them under the terms of the GNU General Public
10 License as published by the Free Software Foundation; either version
11 2, or (at your option) any later version.
13 GDB, GAS, and the GNU binutils are distributed in the hope that they
14 will be useful, but WITHOUT ANY WARRANTY; without even the implied
15 warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
16 the GNU General Public License for more details.
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, MA
21 02110-1301, USA. */
23 #ifndef IA64_OPC_H
24 #define IA64_OPC_H
26 #include "opcode/ia64.h"
28 /* define a couple of abbreviations: */
30 #define bOp(x) (((ia64_insn) ((x) & 0xf)) << 37)
31 #define mOp bOp (-1)
32 #define Op(x) bOp (x), mOp
34 #define FIRST IA64_OPCODE_FIRST
35 #define X_IN_MLX IA64_OPCODE_X_IN_MLX
36 #define LAST IA64_OPCODE_LAST
37 #define PRIV IA64_OPCODE_PRIV
38 #define NO_PRED IA64_OPCODE_NO_PRED
39 #define SLOT2 IA64_OPCODE_SLOT2
40 #define PSEUDO IA64_OPCODE_PSEUDO
41 #define F2_EQ_F3 IA64_OPCODE_F2_EQ_F3
42 #define LEN_EQ_64MCNT IA64_OPCODE_LEN_EQ_64MCNT
43 #define MOD_RRBS IA64_OPCODE_MOD_RRBS
44 #define POSTINC IA64_OPCODE_POSTINC
46 #define AR_CCV IA64_OPND_AR_CCV
47 #define AR_PFS IA64_OPND_AR_PFS
48 #define AR_CSD IA64_OPND_AR_CSD
49 #define C1 IA64_OPND_C1
50 #define C8 IA64_OPND_C8
51 #define C16 IA64_OPND_C16
52 #define GR0 IA64_OPND_GR0
53 #define IP IA64_OPND_IP
54 #define PR IA64_OPND_PR
55 #define PR_ROT IA64_OPND_PR_ROT
56 #define PSR IA64_OPND_PSR
57 #define PSR_L IA64_OPND_PSR_L
58 #define PSR_UM IA64_OPND_PSR_UM
60 #define AR3 IA64_OPND_AR3
61 #define B1 IA64_OPND_B1
62 #define B2 IA64_OPND_B2
63 #define CR3 IA64_OPND_CR3
64 #define F1 IA64_OPND_F1
65 #define F2 IA64_OPND_F2
66 #define F3 IA64_OPND_F3
67 #define F4 IA64_OPND_F4
68 #define P1 IA64_OPND_P1
69 #define P2 IA64_OPND_P2
70 #define R1 IA64_OPND_R1
71 #define R2 IA64_OPND_R2
72 #define R3 IA64_OPND_R3
73 #define R3_2 IA64_OPND_R3_2
75 #define CPUID_R3 IA64_OPND_CPUID_R3
76 #define DBR_R3 IA64_OPND_DBR_R3
77 #define DTR_R3 IA64_OPND_DTR_R3
78 #define ITR_R3 IA64_OPND_ITR_R3
79 #define IBR_R3 IA64_OPND_IBR_R3
80 #define MR3 IA64_OPND_MR3
81 #define MSR_R3 IA64_OPND_MSR_R3
82 #define PKR_R3 IA64_OPND_PKR_R3
83 #define PMC_R3 IA64_OPND_PMC_R3
84 #define PMD_R3 IA64_OPND_PMD_R3
85 #define RR_R3 IA64_OPND_RR_R3
87 #define CCNT5 IA64_OPND_CCNT5
88 #define CNT2a IA64_OPND_CNT2a
89 #define CNT2b IA64_OPND_CNT2b
90 #define CNT2c IA64_OPND_CNT2c
91 #define CNT5 IA64_OPND_CNT5
92 #define CNT6 IA64_OPND_CNT6
93 #define CPOS6a IA64_OPND_CPOS6a
94 #define CPOS6b IA64_OPND_CPOS6b
95 #define CPOS6c IA64_OPND_CPOS6c
96 #define IMM1 IA64_OPND_IMM1
97 #define IMM14 IA64_OPND_IMM14
98 #define IMM17 IA64_OPND_IMM17
99 #define IMM22 IA64_OPND_IMM22
100 #define IMM44 IA64_OPND_IMM44
101 #define SOF IA64_OPND_SOF
102 #define SOL IA64_OPND_SOL
103 #define SOR IA64_OPND_SOR
104 #define IMM8 IA64_OPND_IMM8
105 #define IMM8U4 IA64_OPND_IMM8U4
106 #define IMM8M1 IA64_OPND_IMM8M1
107 #define IMM8M1U4 IA64_OPND_IMM8M1U4
108 #define IMM8M1U8 IA64_OPND_IMM8M1U8
109 #define IMM9a IA64_OPND_IMM9a
110 #define IMM9b IA64_OPND_IMM9b
111 #define IMMU2 IA64_OPND_IMMU2
112 #define IMMU21 IA64_OPND_IMMU21
113 #define IMMU24 IA64_OPND_IMMU24
114 #define IMMU62 IA64_OPND_IMMU62
115 #define IMMU64 IA64_OPND_IMMU64
116 #define IMMU5b IA64_OPND_IMMU5b
117 #define IMMU7a IA64_OPND_IMMU7a
118 #define IMMU7b IA64_OPND_IMMU7b
119 #define IMMU9 IA64_OPND_IMMU9
120 #define INC3 IA64_OPND_INC3
121 #define LEN4 IA64_OPND_LEN4
122 #define LEN6 IA64_OPND_LEN6
123 #define MBTYPE4 IA64_OPND_MBTYPE4
124 #define MHTYPE8 IA64_OPND_MHTYPE8
125 #define POS6 IA64_OPND_POS6
126 #define TAG13 IA64_OPND_TAG13
127 #define TAG13b IA64_OPND_TAG13b
128 #define TGT25 IA64_OPND_TGT25
129 #define TGT25b IA64_OPND_TGT25b
130 #define TGT25c IA64_OPND_TGT25c
131 #define TGT64 IA64_OPND_TGT64
133 #endif