source: branches/libc-0.6/src/gcc/libjava/include/java-insns.h

Last change on this file was 1392, checked in by bird, 21 years ago

This commit was generated by cvs2svn to compensate for changes in r1391,
which included commits to RCS files with non-trunk default branches.

  • Property cvs2svn:cvs-rev set to 1.1.1.2
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 4.9 KB
Line 
1// java-insns.h - Instruction encodings. This is -*- c++ -*-
2
3/* Copyright (C) 1999, 2001, 2002 Free Software Foundation
4
5 This file is part of libgcj.
6
7This software is copyrighted work licensed under the terms of the
8Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
9details. */
10
11#ifndef __JAVA_INSNS_H__
12#define __JAVA_INSNS_H__
13
14enum java_opcode
15{
16 op_nop = 0x00,
17 op_aconst_null = 0x01,
18 op_iconst_m1 = 0x02,
19 op_iconst_0 = 0x03,
20 op_iconst_1 = 0x04,
21 op_iconst_2 = 0x05,
22 op_iconst_3 = 0x06,
23 op_iconst_4 = 0x07,
24 op_iconst_5 = 0x08,
25 op_lconst_0 = 0x09,
26 op_lconst_1 = 0x0a,
27 op_fconst_0 = 0x0b,
28 op_fconst_1 = 0x0c,
29 op_fconst_2 = 0x0d,
30 op_dconst_0 = 0x0e,
31 op_dconst_1 = 0x0f,
32 op_bipush = 0x10,
33 op_sipush = 0x11,
34 op_ldc = 0x12,
35 op_ldc_w = 0x13,
36 op_ldc2_w = 0x14,
37 op_iload = 0x15,
38 op_lload = 0x16,
39 op_fload = 0x17,
40 op_dload = 0x18,
41 op_aload = 0x19,
42 op_iload_0 = 0x1a,
43 op_iload_1 = 0x1b,
44 op_iload_2 = 0x1c,
45 op_iload_3 = 0x1d,
46 op_lload_0 = 0x1e,
47 op_lload_1 = 0x1f,
48 op_lload_2 = 0x20,
49 op_lload_3 = 0x21,
50 op_fload_0 = 0x22,
51 op_fload_1 = 0x23,
52 op_fload_2 = 0x24,
53 op_fload_3 = 0x25,
54 op_dload_0 = 0x26,
55 op_dload_1 = 0x27,
56 op_dload_2 = 0x28,
57 op_dload_3 = 0x29,
58 op_aload_0 = 0x2a,
59 op_aload_1 = 0x2b,
60 op_aload_2 = 0x2c,
61 op_aload_3 = 0x2d,
62 op_iaload = 0x2e,
63 op_laload = 0x2f,
64 op_faload = 0x30,
65 op_daload = 0x31,
66 op_aaload = 0x32,
67 op_baload = 0x33,
68 op_caload = 0x34,
69 op_saload = 0x35,
70 op_istore = 0x36,
71 op_lstore = 0x37,
72 op_fstore = 0x38,
73 op_dstore = 0x39,
74 op_astore = 0x3a,
75 op_istore_0 = 0x3b,
76 op_istore_1 = 0x3c,
77 op_istore_2 = 0x3d,
78 op_istore_3 = 0x3e,
79 op_lstore_0 = 0x3f,
80 op_lstore_1 = 0x40,
81 op_lstore_2 = 0x41,
82 op_lstore_3 = 0x42,
83 op_fstore_0 = 0x43,
84 op_fstore_1 = 0x44,
85 op_fstore_2 = 0x45,
86 op_fstore_3 = 0x46,
87 op_dstore_0 = 0x47,
88 op_dstore_1 = 0x48,
89 op_dstore_2 = 0x49,
90 op_dstore_3 = 0x4a,
91 op_astore_0 = 0x4b,
92 op_astore_1 = 0x4c,
93 op_astore_2 = 0x4d,
94 op_astore_3 = 0x4e,
95 op_iastore = 0x4f,
96 op_lastore = 0x50,
97 op_fastore = 0x51,
98 op_dastore = 0x52,
99 op_aastore = 0x53,
100 op_bastore = 0x54,
101 op_castore = 0x55,
102 op_sastore = 0x56,
103 op_pop = 0x57,
104 op_pop2 = 0x58,
105 op_dup = 0x59,
106 op_dup_x1 = 0x5a,
107 op_dup_x2 = 0x5b,
108 op_dup2 = 0x5c,
109 op_dup2_x1 = 0x5d,
110 op_dup2_x2 = 0x5e,
111 op_swap = 0x5f,
112 op_iadd = 0x60,
113 op_ladd = 0x61,
114 op_fadd = 0x62,
115 op_dadd = 0x63,
116 op_isub = 0x64,
117 op_lsub = 0x65,
118 op_fsub = 0x66,
119 op_dsub = 0x67,
120 op_imul = 0x68,
121 op_lmul = 0x69,
122 op_fmul = 0x6a,
123 op_dmul = 0x6b,
124 op_idiv = 0x6c,
125 op_ldiv = 0x6d,
126 op_fdiv = 0x6e,
127 op_ddiv = 0x6f,
128 op_irem = 0x70,
129 op_lrem = 0x71,
130 op_frem = 0x72,
131 op_drem = 0x73,
132 op_ineg = 0x74,
133 op_lneg = 0x75,
134 op_fneg = 0x76,
135 op_dneg = 0x77,
136 op_ishl = 0x78,
137 op_lshl = 0x79,
138 op_ishr = 0x7a,
139 op_lshr = 0x7b,
140 op_iushr = 0x7c,
141 op_lushr = 0x7d,
142 op_iand = 0x7e,
143 op_land = 0x7f,
144 op_ior = 0x80,
145 op_lor = 0x81,
146 op_ixor = 0x82,
147 op_lxor = 0x83,
148 op_iinc = 0x84,
149 op_i2l = 0x85,
150 op_i2f = 0x86,
151 op_i2d = 0x87,
152 op_l2i = 0x88,
153 op_l2f = 0x89,
154 op_l2d = 0x8a,
155 op_f2i = 0x8b,
156 op_f2l = 0x8c,
157 op_f2d = 0x8d,
158 op_d2i = 0x8e,
159 op_d2l = 0x8f,
160 op_d2f = 0x90,
161 op_i2b = 0x91,
162 op_i2c = 0x92,
163 op_i2s = 0x93,
164 op_lcmp = 0x94,
165 op_fcmpl = 0x95,
166 op_fcmpg = 0x96,
167 op_dcmpl = 0x97,
168 op_dcmpg = 0x98,
169 op_ifeq = 0x99,
170 op_ifne = 0x9a,
171 op_iflt = 0x9b,
172 op_ifge = 0x9c,
173 op_ifgt = 0x9d,
174 op_ifle = 0x9e,
175 op_if_icmpeq = 0x9f,
176 op_if_icmpne = 0xa0,
177 op_if_icmplt = 0xa1,
178 op_if_icmpge = 0xa2,
179 op_if_icmpgt = 0xa3,
180 op_if_icmple = 0xa4,
181 op_if_acmpeq = 0xa5,
182 op_if_acmpne = 0xa6,
183 op_goto = 0xa7,
184 op_jsr = 0xa8,
185 op_ret = 0xa9,
186 op_tableswitch = 0xaa,
187 op_lookupswitch = 0xab,
188 op_ireturn = 0xac,
189 op_lreturn = 0xad,
190 op_freturn = 0xae,
191 op_dreturn = 0xaf,
192 op_areturn = 0xb0,
193 op_return = 0xb1,
194 op_getstatic = 0xb2,
195 op_putstatic = 0xb3,
196 op_getfield = 0xb4,
197 op_putfield = 0xb5,
198 op_invokevirtual = 0xb6,
199 op_invokespecial = 0xb7,
200 op_invokestatic = 0xb8,
201 op_invokeinterface = 0xb9,
202
203 // 0xba is unused.
204
205 op_new = 0xbb,
206 op_newarray = 0xbc,
207 op_anewarray = 0xbd,
208 op_arraylength = 0xbe,
209 op_athrow = 0xbf,
210 op_checkcast = 0xc0,
211 op_instanceof = 0xc1,
212 op_monitorenter = 0xc2,
213 op_monitorexit = 0xc3,
214 op_wide = 0xc4,
215 op_multianewarray = 0xc5,
216 op_ifnull = 0xc6,
217 op_ifnonnull = 0xc7,
218 op_goto_w = 0xc8,
219 op_jsr_w = 0xc9,
220
221 // new opcodes
222
223 op_putfield_1 = 0xca,
224 op_putfield_2 = 0xcb,
225 op_putfield_4 = 0xcc,
226 op_putfield_8 = 0xcd,
227 op_putfield_a = 0xce,
228
229 op_putstatic_1 = 0xcf,
230 op_putstatic_2 = 0xd0,
231 op_putstatic_4 = 0xd1,
232 op_putstatic_8 = 0xd2,
233 op_putstatic_a = 0xd3,
234
235 op_getfield_1 = 0xd4,
236 op_getfield_2s = 0xd5,
237 op_getfield_2u = 0xd6,
238 op_getfield_4 = 0xd7,
239 op_getfield_8 = 0xd8,
240 op_getfield_a = 0xd9,
241
242 op_getstatic_1 = 0xda,
243 op_getstatic_2s = 0xdb,
244 op_getstatic_2u = 0xdc,
245 op_getstatic_4 = 0xdd,
246 op_getstatic_8 = 0xde,
247 op_getstatic_a = 0xdf
248};
249
250#endif /* __JAVA_INSNS_H__ */
Note: See TracBrowser for help on using the repository browser.