* src/vm/jit/stack.c: Removed interpreter-specific code.
[cacao.git] / src / vm / vm.h
index d6c905058b26d14a9c55e9e8259f034b8ede35ca..0f8d1e58ca7de5659860064051efc56955c104a8 100644 (file)
@@ -51,13 +51,17 @@ extern _Jv_JNIEnv *_Jv_env;
 extern bool vm_initializing;
 extern bool vm_exiting;
 
-extern u1 *intrp_main_stack;
-
-extern void **stackbottom;
+extern char      *cacao_prefix;
+extern char      *cacao_libjvm;
+extern char      *classpath_libdir;
 
-extern char *mainstring;
+extern char      *mainstring;
 extern classinfo *mainclass;
 
+#if defined(ENABLE_INTRP)
+extern u1 *intrp_main_stack;
+#endif
+
 
 /* vm_arg **********************************************************************
 
@@ -70,7 +74,12 @@ typedef struct vm_arg vm_arg;
 
 struct vm_arg {
        u8 type;
-       u8 data;
+
+       union {
+               u8     l;
+               float  f;
+               double d;
+       } data;
 };
 
 
@@ -79,12 +88,15 @@ struct vm_arg {
 void usage(void);
 
 bool vm_create(JavaVMInitArgs *vm_args);
+void vm_run(JavaVM *vm, JavaVMInitArgs *vm_args);
 s4   vm_destroy(JavaVM *vm);
 void vm_exit(s4 status);
 void vm_shutdown(s4 status);
 
 void vm_exit_handler(void);
 
+void vm_abort(const char *text, ...);
+
 /* Java method calling functions */
 java_objectheader *vm_call_method(methodinfo *m, java_objectheader *o, ...);
 java_objectheader *vm_call_method_valist(methodinfo *m, java_objectheader *o,