1 /* src/vm/jit/ir/bytecode.h - Java byte code definitions
4 CACAOVM - Verein zur Foerderung der freien virtuellen Maschine CACAO
6 This file is part of CACAO.
8 This program is free software; you can redistribute it and/or
9 modify it under the terms of the GNU General Public License as
10 published by the Free Software Foundation; either version 2, or (at
11 your option) any later version.
13 This program is distributed in the hope that it will be useful, but
14 WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
20 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
26 #ifndef _VM_JIT_IR_BYTECODE_H
27 #define _VM_JIT_IR_BYTECODE_H
32 /* bytecode_t *****************************************************************/
34 typedef struct bytecode_t bytecode_t;
37 int length; /* length of the instruction in bytes */
38 int slots; /* required stack slots */
42 extern bytecode_t bytecode[256];
45 /* Java bytecodes *************************************************************/
256 BC_tableswitch = 170,
257 BC_lookupswitch = 171,
271 BC_invokevirtual = 182,
272 BC_invokespecial = 183,
273 BC_invokestatic = 184,
274 BC_invokeinterface = 185,
276 /* xxxunusedxxx 186 */
282 BC_arraylength = 190,
289 BC_monitorenter = 194,
290 BC_monitorexit = 195,
294 BC_multianewarray = 197,
302 /* Reserved opcodes. */
310 #endif /* _VM_JIT_IR_BYTECODE_H */
314 * These are local overrides for various environment variables in Emacs.
315 * Please do not remove this and leave it at the end of the file, where
316 * Emacs will automagically detect them.
317 * ---------------------------------------------------------------------
320 * indent-tabs-mode: t
324 * vim:noexpandtab:sw=4:ts=4: