X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=src%2Fvm%2Fvm.hpp;h=0430fa4d6a30be141f7a43469bd9cd9352ecca36;hb=0a5b526074fc4c7ef3cb43496c1adc7b5a098ea9;hp=4a73ecc351cc86456f08dba13ef3d366d3267745;hpb=3a16b0602c73972b42f6db5280092e57e38b4287;p=cacao.git diff --git a/src/vm/vm.hpp b/src/vm/vm.hpp index 4a73ecc35..0430fa4d6 100644 --- a/src/vm/vm.hpp +++ b/src/vm/vm.hpp @@ -41,6 +41,7 @@ #endif #include "vm/properties.hpp" +#include "vm/suck.hpp" #include "vm/jit/optimizing/recompiler.hpp" @@ -64,6 +65,7 @@ private: bool _created; bool _exiting; int64_t _starttime; + int64_t _inittime; // Subsystems. Properties _properties; ///< Commandline properties. @@ -76,6 +78,10 @@ private: #endif NativeLibraries _nativelibraries; ///< Native library table. NativeMethods _nativemethods; ///< Native methods table. +#if defined(ENABLE_JVMTI) + NativeAgents _nativeagents; ///< Native agents table. +#endif + SuckClasspath _suckclasspath; ///< Classpath entries list. public: // Constructor, Destructor. @@ -96,6 +102,7 @@ public: bool is_created() { return _created; } bool is_exiting() { return _exiting; } int64_t get_starttime() { return _starttime; } + int64_t get_inittime() { return _inittime; } Properties& get_properties () { return _properties; } Recompiler& get_recompiler () { return _recompiler; } // REMOVEME @@ -105,15 +112,16 @@ public: #endif NativeLibraries& get_nativelibraries() { return _nativelibraries; } NativeMethods& get_nativemethods () { return _nativemethods; } + SuckClasspath& get_suckclasspath () { return _suckclasspath; } + +private: + // Internal helper methods. + bool start_runtime_agents(); }; #else -JavaVM* VM_get_javavm(); JNIEnv* VM_get_jnienv(); -bool VM_is_initializing(); -bool VM_is_created(); -int64_t VM_get_starttime(); #endif @@ -149,9 +157,6 @@ extern uint8_t* intrp_main_stack; extern "C" { #endif -void usage(void); - -bool vm_create(JavaVMInitArgs *vm_args); void vm_run(JavaVM *vm, JavaVMInitArgs *vm_args); int32_t vm_destroy(JavaVM *vm); void vm_exit(int32_t status); @@ -190,8 +195,6 @@ java_handle_t *vm_call_method_objectarray(methodinfo *m, java_handle_t *o, java_ // Legacy C interface. void vm_abort(const char* text, ...); -void vm_abort_errnum(int errnum, const char* text, ...); -void vm_abort_errno(const char* text, ...); #ifdef __cplusplus }