*** empty log message ***

This commit is contained in:
2005-07-08 11:32:50 +00:00
parent 32285ddc5b
commit 81d93832f1
5 changed files with 226 additions and 29 deletions

View File

@@ -1,5 +1,5 @@
/*
* $Id: bytecode.h,v 1.4 2005-07-07 16:52:48 bacon Exp $
* $Id: bytecode.h,v 1.5 2005-07-08 11:32:50 bacon Exp $
*/
#ifndef _XP_STX_BYTECODE_H_
@@ -7,18 +7,35 @@
#include <xp/stx/stx.h>
#define PUSH_VARIABLE 0x0
#define PUSH_TEMPORARY 0x1
#define PUSH_LITERAL_CONSTANT 0x2
#define PUSH_LITERAL_VARIABLE 0x3
#define STORE_VARIABLE 0x4
#define STORE_TEMPORARY 0x5
#define DO_SPECIAL 0x6
#define DO_PRIMITIVE 0x7
#define PUSH_VARIABLE_EXTENDED 0xA
#define PUSH_TEMPORARY_EXTENDED 0xB
#define PUSH_RECEIVER_VARIABLE 0x00
#define PUSH_RECEIVER_VARIABLE_BIG 0x10
#define PUSH_VARIABLE 0x0
#define PUSH_TEMPORARY 0x1
#define PUSH_LITERAL_CONSTANT 0x2
#define PUSH_LITERAL_VARIABLE 0x3
#define STORE_VARIABLE 0x4
#define STORE_TEMPORARY 0x5
#define SEND 0x6
#define JUMP 0x7
#define DO_SPECIAL 0x8
#define DO_PRIMITIVE 0x9
#define PUSH_VARIABLE_EXTENDED 0xA
#define PUSH_TEMPORARY_EXTENDED 0xB
#define STORE_TEMPORARY_EXTENDED 0xC
#define DO_PRIMITIVE_EXTENDED 0xF
#define STORE_VARIABLE_EXTENDED 0xD
#define DO_SPECIAL_EXTENDED 0xE
#define DO_PRIMITIVE_EXTENDED 0xF
#define RETURN_RECEIVER 1
#define RETURN_NIL 2
#define RETURN_TRUE 3
#define RETURN_FALSE 4
#define RETURN_FROM_MESSAGE 5
#define RETURN_FROM_BLOCK 6
#define PUSH_VARIABLE(i) ((i <= 0x0F)? (i):
#define PUSH_VARIABLE(i) i
#ifdef __cplusplus
extern "C" {