blob: e13a4b2030b7c51c6859a60512c2b67cb9807463 [file] [log] [blame]
J. Duke319a3b92007-12-01 00:00:00 +00001/*
2 * Copyright 1998-2003 Sun Microsystems, Inc. All Rights Reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Sun designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Sun in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
22 * CA 95054 USA or visit www.sun.com if you need additional information or
23 * have any questions.
24 */
25
26#ifndef _JAVASOFT_OPCODES_H_
27#define _JAVASOFT_OPCODES_H_
28
29typedef enum {
30 opc_nop = 0,
31 opc_aconst_null = 1,
32 opc_iconst_m1 = 2,
33 opc_iconst_0 = 3,
34 opc_iconst_1 = 4,
35 opc_iconst_2 = 5,
36 opc_iconst_3 = 6,
37 opc_iconst_4 = 7,
38 opc_iconst_5 = 8,
39 opc_lconst_0 = 9,
40 opc_lconst_1 = 10,
41 opc_fconst_0 = 11,
42 opc_fconst_1 = 12,
43 opc_fconst_2 = 13,
44 opc_dconst_0 = 14,
45 opc_dconst_1 = 15,
46 opc_bipush = 16,
47 opc_sipush = 17,
48 opc_ldc = 18,
49 opc_ldc_w = 19,
50 opc_ldc2_w = 20,
51 opc_iload = 21,
52 opc_lload = 22,
53 opc_fload = 23,
54 opc_dload = 24,
55 opc_aload = 25,
56 opc_iload_0 = 26,
57 opc_iload_1 = 27,
58 opc_iload_2 = 28,
59 opc_iload_3 = 29,
60 opc_lload_0 = 30,
61 opc_lload_1 = 31,
62 opc_lload_2 = 32,
63 opc_lload_3 = 33,
64 opc_fload_0 = 34,
65 opc_fload_1 = 35,
66 opc_fload_2 = 36,
67 opc_fload_3 = 37,
68 opc_dload_0 = 38,
69 opc_dload_1 = 39,
70 opc_dload_2 = 40,
71 opc_dload_3 = 41,
72 opc_aload_0 = 42,
73 opc_aload_1 = 43,
74 opc_aload_2 = 44,
75 opc_aload_3 = 45,
76 opc_iaload = 46,
77 opc_laload = 47,
78 opc_faload = 48,
79 opc_daload = 49,
80 opc_aaload = 50,
81 opc_baload = 51,
82 opc_caload = 52,
83 opc_saload = 53,
84 opc_istore = 54,
85 opc_lstore = 55,
86 opc_fstore = 56,
87 opc_dstore = 57,
88 opc_astore = 58,
89 opc_istore_0 = 59,
90 opc_istore_1 = 60,
91 opc_istore_2 = 61,
92 opc_istore_3 = 62,
93 opc_lstore_0 = 63,
94 opc_lstore_1 = 64,
95 opc_lstore_2 = 65,
96 opc_lstore_3 = 66,
97 opc_fstore_0 = 67,
98 opc_fstore_1 = 68,
99 opc_fstore_2 = 69,
100 opc_fstore_3 = 70,
101 opc_dstore_0 = 71,
102 opc_dstore_1 = 72,
103 opc_dstore_2 = 73,
104 opc_dstore_3 = 74,
105 opc_astore_0 = 75,
106 opc_astore_1 = 76,
107 opc_astore_2 = 77,
108 opc_astore_3 = 78,
109 opc_iastore = 79,
110 opc_lastore = 80,
111 opc_fastore = 81,
112 opc_dastore = 82,
113 opc_aastore = 83,
114 opc_bastore = 84,
115 opc_castore = 85,
116 opc_sastore = 86,
117 opc_pop = 87,
118 opc_pop2 = 88,
119 opc_dup = 89,
120 opc_dup_x1 = 90,
121 opc_dup_x2 = 91,
122 opc_dup2 = 92,
123 opc_dup2_x1 = 93,
124 opc_dup2_x2 = 94,
125 opc_swap = 95,
126 opc_iadd = 96,
127 opc_ladd = 97,
128 opc_fadd = 98,
129 opc_dadd = 99,
130 opc_isub = 100,
131 opc_lsub = 101,
132 opc_fsub = 102,
133 opc_dsub = 103,
134 opc_imul = 104,
135 opc_lmul = 105,
136 opc_fmul = 106,
137 opc_dmul = 107,
138 opc_idiv = 108,
139 opc_ldiv = 109,
140 opc_fdiv = 110,
141 opc_ddiv = 111,
142 opc_irem = 112,
143 opc_lrem = 113,
144 opc_frem = 114,
145 opc_drem = 115,
146 opc_ineg = 116,
147 opc_lneg = 117,
148 opc_fneg = 118,
149 opc_dneg = 119,
150 opc_ishl = 120,
151 opc_lshl = 121,
152 opc_ishr = 122,
153 opc_lshr = 123,
154 opc_iushr = 124,
155 opc_lushr = 125,
156 opc_iand = 126,
157 opc_land = 127,
158 opc_ior = 128,
159 opc_lor = 129,
160 opc_ixor = 130,
161 opc_lxor = 131,
162 opc_iinc = 132,
163 opc_i2l = 133,
164 opc_i2f = 134,
165 opc_i2d = 135,
166 opc_l2i = 136,
167 opc_l2f = 137,
168 opc_l2d = 138,
169 opc_f2i = 139,
170 opc_f2l = 140,
171 opc_f2d = 141,
172 opc_d2i = 142,
173 opc_d2l = 143,
174 opc_d2f = 144,
175 opc_i2b = 145,
176 opc_i2c = 146,
177 opc_i2s = 147,
178 opc_lcmp = 148,
179 opc_fcmpl = 149,
180 opc_fcmpg = 150,
181 opc_dcmpl = 151,
182 opc_dcmpg = 152,
183 opc_ifeq = 153,
184 opc_ifne = 154,
185 opc_iflt = 155,
186 opc_ifge = 156,
187 opc_ifgt = 157,
188 opc_ifle = 158,
189 opc_if_icmpeq = 159,
190 opc_if_icmpne = 160,
191 opc_if_icmplt = 161,
192 opc_if_icmpge = 162,
193 opc_if_icmpgt = 163,
194 opc_if_icmple = 164,
195 opc_if_acmpeq = 165,
196 opc_if_acmpne = 166,
197 opc_goto = 167,
198 opc_jsr = 168,
199 opc_ret = 169,
200 opc_tableswitch = 170,
201 opc_lookupswitch = 171,
202 opc_ireturn = 172,
203 opc_lreturn = 173,
204 opc_freturn = 174,
205 opc_dreturn = 175,
206 opc_areturn = 176,
207 opc_return = 177,
208 opc_getstatic = 178,
209 opc_putstatic = 179,
210 opc_getfield = 180,
211 opc_putfield = 181,
212 opc_invokevirtual = 182,
213 opc_invokespecial = 183,
214 opc_invokestatic = 184,
215 opc_invokeinterface = 185,
216 opc_xxxunusedxxx = 186,
217 opc_new = 187,
218 opc_newarray = 188,
219 opc_anewarray = 189,
220 opc_arraylength = 190,
221 opc_athrow = 191,
222 opc_checkcast = 192,
223 opc_instanceof = 193,
224 opc_monitorenter = 194,
225 opc_monitorexit = 195,
226 opc_wide = 196,
227 opc_multianewarray = 197,
228 opc_ifnull = 198,
229 opc_ifnonnull = 199,
230 opc_goto_w = 200,
231 opc_jsr_w = 201,
232 opc_breakpoint = 202,
233 opc_ldc_quick = 203,
234 opc_ldc_w_quick = 204,
235 opc_ldc2_w_quick = 205,
236 opc_getfield_quick = 206,
237 opc_putfield_quick = 207,
238 opc_getfield2_quick = 208,
239 opc_putfield2_quick = 209,
240 opc_getstatic_quick = 210,
241 opc_putstatic_quick = 211,
242 opc_getstatic2_quick = 212,
243 opc_putstatic2_quick = 213,
244 opc_invokevirtual_quick = 214,
245 opc_invokenonvirtual_quick = 215,
246 opc_invokesuper_quick = 216,
247 opc_invokestatic_quick = 217,
248 opc_invokeinterface_quick = 218,
249 opc_invokevirtualobject_quick = 219,
250 opc_invokeignored_quick = 220,
251 opc_new_quick = 221,
252 opc_anewarray_quick = 222,
253 opc_multianewarray_quick = 223,
254 opc_checkcast_quick = 224,
255 opc_instanceof_quick = 225,
256 opc_invokevirtual_quick_w = 226,
257 opc_getfield_quick_w = 227,
258 opc_putfield_quick_w = 228,
259 opc_nonnull_quick = 229,
260 opc_first_unused_index = 230,
261 opc_software = 254,
262 opc_hardware = 255,
263 opc_dummy = (int)0xF0000000U /* portability change, opc_invokeinit in the
264 * verifier requires more than 8 bits.
265 */
266} opcode_type;
267
268#endif /* !_JAVASOFT_OPCODES_H_ */