version 1.2, 2002/06/02 17:02:56
|
version 1.5, 2002/12/27 15:51:28
|
Line 40 typedef union Cell {
|
Line 40 typedef union Cell {
|
#define vm_target2Cell(_x,_cell) ((_cell).target=(_x)) |
#define vm_target2Cell(_x,_cell) ((_cell).target=(_x)) |
#define vm_Cell2a(_cell,_x) ((_x)=(_cell).a) |
#define vm_Cell2a(_cell,_x) ((_x)=(_cell).a) |
#define vm_a2Cell(_x,_cell) ((_cell).a=(_x)) |
#define vm_a2Cell(_x,_cell) ((_cell).a=(_x)) |
|
#define vm_Cell2Cell(_x,_y) ((_y)=(_x)) |
|
|
|
/* for future extensions */ |
|
#define IMM_ARG(access,value) (access) |
|
|
#define VM_IS_INST(_inst, n) ((_inst).inst == vm_prim[n]) |
#define VM_IS_INST(_inst, n) ((_inst).inst == vm_prim[n]) |
|
|
Line 54 extern FILE *vm_out;
|
Line 58 extern FILE *vm_out;
|
extern Inst *vmcodep; |
extern Inst *vmcodep; |
extern Inst *last_compiled; |
extern Inst *last_compiled; |
extern Inst *vmcode_end; |
extern Inst *vmcode_end; |
|
extern int use_super; |
|
|
/* generic vmgen support functions (e.g., wrappers) */ |
/* generic vmgen support functions (e.g., wrappers) */ |
void gen_inst(Inst **vmcodepp, Label i); |
void gen_inst(Inst **vmcodepp, Label i); |