15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #include "precompiled.hpp"
26 #include "classfile/stringTable.hpp"
27 #include "classfile/symbolTable.hpp"
28 #include "code/icBuffer.hpp"
29 #include "gc/shared/collectedHeap.hpp"
30 #if INCLUDE_JVMCI
31 #include "jvmci/jvmci.hpp"
32 #endif
33 #include "interpreter/bytecodes.hpp"
34 #include "logging/log.hpp"
35 #include "logging/logTag.hpp"
36 #include "memory/universe.hpp"
37 #include "prims/methodHandles.hpp"
38 #include "runtime/atomic.hpp"
39 #include "runtime/flags/jvmFlag.hpp"
40 #include "runtime/handles.inline.hpp"
41 #include "runtime/icache.hpp"
42 #include "runtime/init.hpp"
43 #include "runtime/safepoint.hpp"
44 #include "runtime/sharedRuntime.hpp"
45 #include "services/memTracker.hpp"
46 #include "utilities/macros.hpp"
47
48
49 // Initialization done by VM thread in vm_init_globals()
50 void check_ThreadShadow();
51 void eventlog_init();
52 void mutex_init();
53 void oopstorage_init();
54 void chunkpool_init();
102 chunkpool_init();
103 perfMemory_init();
104 SuspendibleThreadSet_init();
105 }
106
107
108 jint init_globals() {
109 HandleMark hm;
110 management_init();
111 bytecodes_init();
112 classLoader_init1();
113 compilationPolicy_init();
114 codeCache_init();
115 VM_Version_init();
116 stubRoutines_init1();
117 jint status = universe_init(); // dependent on codeCache_init and
118 // stubRoutines_init1 and metaspace_init.
119 if (status != JNI_OK)
120 return status;
121
122 gc_barrier_stubs_init(); // depends on universe_init, must be before interpreter_init
123 interpreter_init(); // before any methods loaded
124 invocationCounter_init(); // before any methods loaded
125 accessFlags_init();
126 templateTable_init();
127 InterfaceSupport_init();
128 VMRegImpl::set_regName(); // need this before generate_stubs (for printing oop maps).
129 SharedRuntime::generate_stubs();
130 universe2_init(); // dependent on codeCache_init and stubRoutines_init1
131 javaClasses_init();// must happen after vtable initialization, before referenceProcessor_init
132 referenceProcessor_init();
133 jni_handles_init();
134 #if INCLUDE_VM_STRUCTS
135 vmStructs_init();
136 #endif // INCLUDE_VM_STRUCTS
137
138 vtableStubs_init();
139 InlineCacheBuffer_init();
140 compilerOracle_init();
141 dependencyContext_init();
|
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #include "precompiled.hpp"
26 #include "classfile/stringTable.hpp"
27 #include "classfile/symbolTable.hpp"
28 #include "code/icBuffer.hpp"
29 #include "gc/shared/collectedHeap.hpp"
30 #if INCLUDE_JVMCI
31 #include "jvmci/jvmci.hpp"
32 #endif
33 #include "interpreter/bytecodes.hpp"
34 #include "logging/log.hpp"
35 #include "logging/logAsyncFlusher.hpp"
36 #include "logging/logTag.hpp"
37 #include "memory/universe.hpp"
38 #include "prims/methodHandles.hpp"
39 #include "runtime/atomic.hpp"
40 #include "runtime/flags/jvmFlag.hpp"
41 #include "runtime/handles.inline.hpp"
42 #include "runtime/icache.hpp"
43 #include "runtime/init.hpp"
44 #include "runtime/safepoint.hpp"
45 #include "runtime/sharedRuntime.hpp"
46 #include "services/memTracker.hpp"
47 #include "utilities/macros.hpp"
48
49
50 // Initialization done by VM thread in vm_init_globals()
51 void check_ThreadShadow();
52 void eventlog_init();
53 void mutex_init();
54 void oopstorage_init();
55 void chunkpool_init();
103 chunkpool_init();
104 perfMemory_init();
105 SuspendibleThreadSet_init();
106 }
107
108
109 jint init_globals() {
110 HandleMark hm;
111 management_init();
112 bytecodes_init();
113 classLoader_init1();
114 compilationPolicy_init();
115 codeCache_init();
116 VM_Version_init();
117 stubRoutines_init1();
118 jint status = universe_init(); // dependent on codeCache_init and
119 // stubRoutines_init1 and metaspace_init.
120 if (status != JNI_OK)
121 return status;
122
123 LogAsyncFlusher::initialize();
124 gc_barrier_stubs_init(); // depends on universe_init, must be before interpreter_init
125 interpreter_init(); // before any methods loaded
126 invocationCounter_init(); // before any methods loaded
127 accessFlags_init();
128 templateTable_init();
129 InterfaceSupport_init();
130 VMRegImpl::set_regName(); // need this before generate_stubs (for printing oop maps).
131 SharedRuntime::generate_stubs();
132 universe2_init(); // dependent on codeCache_init and stubRoutines_init1
133 javaClasses_init();// must happen after vtable initialization, before referenceProcessor_init
134 referenceProcessor_init();
135 jni_handles_init();
136 #if INCLUDE_VM_STRUCTS
137 vmStructs_init();
138 #endif // INCLUDE_VM_STRUCTS
139
140 vtableStubs_init();
141 InlineCacheBuffer_init();
142 compilerOracle_init();
143 dependencyContext_init();
|