diff runtime/object.h @ 66:d4b44ae2e34a

New variant of C backend works now
author Mike Pavone <pavone@retrodev.com>
date Sun, 06 Jun 2010 20:29:10 -0400
parents 04baa003de5a
children c40c3d399133
line wrap: on
line diff
--- a/runtime/object.h	Tue Jun 01 01:13:54 2010 -0400
+++ b/runtime/object.h	Sun Jun 06 20:29:10 2010 -0400
@@ -42,17 +42,17 @@
 } multisize;
 
 #pragma pack(push,1)
-typedef struct calldata {
-	object 			*params[1];
+struct calldata {
 	struct calldata	*lastframe;
+	uint32_t 		func;
 	uint16_t 		num_params;
-	uint16_t 		resume;
-	uint32_t 		func;
+	uint16_t		callspace;
+	object 			*params[1];
 };
 #pragma pack(pop)
 
 #define OBegin typedef struct {
-#define Object(name) } nt_ ## name; typedef struct { object SP_header; nt_ ## name payload; } t_ ## name;
+#define Object(name) } nt_ ## name; typedef struct { object SP_header; nt_ ## name payload; } t_ ## name;
 #define MObject(name) } nt_ ## name; typedef struct { multisize SP_header; nt_ ## name payload; } t_ ## name; 
 #define Box(nakedtype,fieldname,objectname) typedef struct{ object SP_header; nakedtype fieldname; } t_ ## objectname;