diff runtime/object.h @ 8:8d74ef7fa357

Improved helper macros and added separate Rhope stack in runtime
author Mike Pavone <pavone@retrodev.com>
date Wed, 13 May 2009 23:37:19 -0400
parents d61550e2c001
children 0f2c4ee070fe
line wrap: on
line diff
--- a/runtime/object.h	Wed May 13 00:47:40 2009 -0400
+++ b/runtime/object.h	Wed May 13 23:37:19 2009 -0400
@@ -3,18 +3,7 @@
 
 #include "plat_types.h"
 #include "thread.h"
-
-typedef enum {
-	NORMAL_RETURN=0,
-	EXCEPTION_RETURN,
-	TAIL_RETURN,
-	NO_CONVERSION,
-	STACK_UNWIND
-} returntype;
-
-
-typedef returntype (*rhope_func)(struct calldata *);
-typedef void (*special_func) (struct object *);
+#include "func.h"
 
 typedef struct{
 	rhope_func     *method_lookup;
@@ -52,10 +41,11 @@
 
 
 typedef struct calldata {
-	rhope_func  tail_func;
-	uint32_t    num_params;
-	uint32_t    original_methodid;
-	object      *params[32];
+	rhope_func     tail_func;
+	struct context *ct;
+	uint32_t       num_params;
+	uint32_t       original_methodid;
+	object         *params[1];
 } calldata;
 
 #define OBegin typedef struct { object header;