comparison runtime/object.h @ 105:43cc42df26cc

Various compiler improvements
author Mike Pavone <pavone@retrodev.com>
date Tue, 24 Aug 2010 23:22:17 -0400
parents 5a195ee08eac
children 60906f8803ef
comparison
equal deleted inserted replaced
103:7428aa5d6ade 105:43cc42df26cc
43 43
44 #pragma pack(push,1) 44 #pragma pack(push,1)
45 struct calldata { 45 struct calldata {
46 struct calldata *lastframe; 46 struct calldata *lastframe;
47 void *vars; 47 void *vars;
48 uint32_t func; 48 #ifdef ENABLE_PROFILING
49 uint16_t num_params; 49 uint64_t start;
50 uint16_t callspace; 50 uint64_t accum;
51 object *params[1]; 51 uint64_t self_start;
52 uint64_t self_accum;
53 #endif
54 uint32_t func;
55 uint16_t num_params;
56 uint16_t callspace;
57 object *params[1];
52 }; 58 };
53 #pragma pack(pop) 59 #pragma pack(pop)
54 60
55 #define OBegin typedef struct { 61 #define OBegin typedef struct {
56 #define Object(name) } nt_ ## name; typedef struct { object SP_header; nt_ ## name payload; } t_ ## name; 62 #define Object(name) } nt_ ## name; typedef struct { object SP_header; nt_ ## name payload; } t_ ## name;