23 */
24
25 #ifndef SHARE_VM_RUNTIME_INIT_HPP
26 #define SHARE_VM_RUNTIME_INIT_HPP
27
28 #include "utilities/globalDefinitions.hpp"
29
30 // init_globals replaces C++ global objects so we can use the standard linker
31 // to link Delta (which is at least twice as fast as using the GNU C++ linker).
32 // Also, init.c gives explicit control over the sequence of initialization.
33
34 // Programming convention: instead of using a global object (e,g, "Foo foo;"),
35 // use "Foo* foo;", create a function init_foo() in foo.c, and add a call
36 // to init_foo in init.cpp.
37
38 jint init_globals(); // call constructors at startup (main Java thread)
39 void vm_init_globals(); // call constructors at startup (VM thread)
40 void exit_globals(); // call destructors before exit
41
42 bool is_init_completed(); // returns true when bootstrapping has completed
43 void set_init_completed(); // set basic init to completed
44
45 #endif // SHARE_VM_RUNTIME_INIT_HPP
|
23 */
24
25 #ifndef SHARE_VM_RUNTIME_INIT_HPP
26 #define SHARE_VM_RUNTIME_INIT_HPP
27
28 #include "utilities/globalDefinitions.hpp"
29
30 // init_globals replaces C++ global objects so we can use the standard linker
31 // to link Delta (which is at least twice as fast as using the GNU C++ linker).
32 // Also, init.c gives explicit control over the sequence of initialization.
33
34 // Programming convention: instead of using a global object (e,g, "Foo foo;"),
35 // use "Foo* foo;", create a function init_foo() in foo.c, and add a call
36 // to init_foo in init.cpp.
37
38 jint init_globals(); // call constructors at startup (main Java thread)
39 void vm_init_globals(); // call constructors at startup (VM thread)
40 void exit_globals(); // call destructors before exit
41
42 bool is_init_completed(); // returns true when bootstrapping has completed
43 void wait_init_completed(); // wait until set_init_completed() has been called
44 void set_init_completed(); // set basic init to completed
45
46 #endif // SHARE_VM_RUNTIME_INIT_HPP
|