comparison runtime/blueprint.h @ 186:ba35ab624ec2

Add support for raw C function output from C backend as well as an option to use Boehm-GC instead of reference counting
author Mike Pavone <pavone@retrodev.com>
date Fri, 07 Oct 2011 00:10:02 -0700
parents 9fab36cc706b
children
comparison
equal deleted inserted replaced
185:4580c08fd4e8 186:ba35ab624ec2
9 object * make_Blueprint(int32_t type_id); 9 object * make_Blueprint(int32_t type_id);
10 10
11 int32_t _internal_blueprint_eq(object * left, object * right); 11 int32_t _internal_blueprint_eq(object * left, object * right);
12 int32_t _internal_blueprint_rawsize(object * bp); 12 int32_t _internal_blueprint_rawsize(object * bp);
13 13
14 typedef struct { 14 #define ldec_Build lvar(blueprint *, bp)
15 blueprint * bp; 15 LocalsType(ldec_Build, Build)
16 } lt_Build;
17 16
18 typedef struct {
19 blueprint * bp;
20 } lt_BlueprintSP_Of;
21 17
22 typedef struct { 18 #define ldec_BlueprintSP_Of lvar(blueprint *, bp)
23 object * id; 19 LocalsType(ldec_BlueprintSP_Of ,BlueprintSP_Of)
24 } lt_ID;
25 20
26 typedef struct { 21 #define ldec_ID lvar(object *, id)
27 uint32_t type; 22 LocalsType(ldec_ID, ID)
28 } lt_BlueprintSP_FromSP_ID; 23
24 #define ldec_BlueprintSP_FromSP_ID lvar(uint32_t, type)
25 LocalsType(ldec_BlueprintSP_FromSP_ID, BlueprintSP_FromSP_ID)
29 26
30 #endif //BLUEPRINT_H_ 27 #endif //BLUEPRINT_H_