203
204 // Compiler/dispatch support
205 static int _base_vtable_size; // Java vtbl size of klass Object (in words)
206
207 // Initialization
208 static bool _bootstrapping; // true during genesis
209 static bool _module_initialized; // true after call_initPhase2 called
210 static bool _fully_initialized; // true after universe_init and initialize_vtables called
211
212 // the array of preallocated errors with backtraces
213 static objArrayOop preallocated_out_of_memory_errors() { return _preallocated_out_of_memory_error_array; }
214
215 // generate an out of memory error; if possible using an error with preallocated backtrace;
216 // otherwise return the given default error.
217 static oop gen_out_of_memory_error(oop default_err);
218
219 // Historic gc information
220 static size_t _heap_capacity_at_last_gc;
221 static size_t _heap_used_at_last_gc;
222
223 template <class Heap, class Policy> static CollectedHeap* create_heap_with_policy();
224 static CollectedHeap* create_heap();
225 static CollectedHeap* create_heap_ext();
226 static jint initialize_heap();
227 static void initialize_basic_type_mirrors(TRAPS);
228 static void fixup_mirrors(TRAPS);
229
230 static void reinitialize_vtable_of(Klass* k, TRAPS);
231 static void reinitialize_itables(TRAPS);
232 static void compute_base_vtable_size(); // compute vtable size of class Object
233
234 static void genesis(TRAPS); // Create the initial world
235
236 // Mirrors for primitive classes (created eagerly)
237 static oop check_mirror(oop m) {
238 assert(m != NULL, "mirror not initialized");
239 return m;
240 }
241
242 static void set_narrow_oop_base(address base) {
243 assert(UseCompressedOops, "no compressed oops?");
|
203
204 // Compiler/dispatch support
205 static int _base_vtable_size; // Java vtbl size of klass Object (in words)
206
207 // Initialization
208 static bool _bootstrapping; // true during genesis
209 static bool _module_initialized; // true after call_initPhase2 called
210 static bool _fully_initialized; // true after universe_init and initialize_vtables called
211
212 // the array of preallocated errors with backtraces
213 static objArrayOop preallocated_out_of_memory_errors() { return _preallocated_out_of_memory_error_array; }
214
215 // generate an out of memory error; if possible using an error with preallocated backtrace;
216 // otherwise return the given default error.
217 static oop gen_out_of_memory_error(oop default_err);
218
219 // Historic gc information
220 static size_t _heap_capacity_at_last_gc;
221 static size_t _heap_used_at_last_gc;
222
223 static CollectedHeap* create_heap();
224 static CollectedHeap* create_heap_ext();
225 static jint initialize_heap();
226 static void initialize_basic_type_mirrors(TRAPS);
227 static void fixup_mirrors(TRAPS);
228
229 static void reinitialize_vtable_of(Klass* k, TRAPS);
230 static void reinitialize_itables(TRAPS);
231 static void compute_base_vtable_size(); // compute vtable size of class Object
232
233 static void genesis(TRAPS); // Create the initial world
234
235 // Mirrors for primitive classes (created eagerly)
236 static oop check_mirror(oop m) {
237 assert(m != NULL, "mirror not initialized");
238 return m;
239 }
240
241 static void set_narrow_oop_base(address base) {
242 assert(UseCompressedOops, "no compressed oops?");
|