443 static void run_finalizers_on_exit(); 444 445 // Iteration 446 447 // Apply "f" to the addresses of all the direct heap pointers maintained 448 // as static fields of "Universe". 449 static void oops_do(OopClosure* f, bool do_all = false); 450 451 // CDS support 452 static void serialize(SerializeClosure* f, bool do_all = false); 453 454 // Apply "f" to all klasses for basic types (classes not present in 455 // SystemDictionary). 456 static void basic_type_classes_do(void f(Klass*)); 457 458 // For sharing -- fill in a list of known vtable pointers. 459 static void init_self_patching_vtbl_list(void** list, int count); 460 461 // Debugging 462 static bool verify_in_progress() { return _verify_in_progress; } 463 static void verify(VerifyOption option, const char* prefix, bool silent = VerifySilently); 464 static void verify(const char* prefix, bool silent = VerifySilently) { 465 verify(VerifyOption_Default, prefix, silent); 466 } 467 static void verify(bool silent = VerifySilently) { 468 verify("", silent); 469 } 470 471 static int verify_count() { return _verify_count; } 472 // The default behavior is to call print_on() on gclog_or_tty. 473 static void print(); 474 // The extended parameter determines which method on the heap will 475 // be called: print_on() (extended == false) or print_extended_on() 476 // (extended == true). 477 static void print_on(outputStream* st, bool extended = false); 478 static void print_heap_at_SIGBREAK(); 479 static void print_heap_before_gc() { print_heap_before_gc(gclog_or_tty); } 480 static void print_heap_after_gc() { print_heap_after_gc(gclog_or_tty); } 481 static void print_heap_before_gc(outputStream* st, bool ignore_extended = false); 482 static void print_heap_after_gc(outputStream* st, bool ignore_extended = false); 483 484 // Change the number of dummy objects kept reachable by the full gc dummy 485 // array; this should trigger relocation in a sliding compaction collector. 486 debug_only(static bool release_fullgc_alot_dummy();) 487 // The non-oop pattern (see compiledIC.hpp, etc) 488 static void* non_oop_word(); 489 490 // Oop verification (see MacroAssembler::verify_oop) 491 static uintptr_t verify_oop_mask() PRODUCT_RETURN0; 492 static uintptr_t verify_oop_bits() PRODUCT_RETURN0; 493 static uintptr_t verify_mark_bits() PRODUCT_RETURN0; 494 static uintptr_t verify_mark_mask() PRODUCT_RETURN0; 495 496 // Compiler support 497 static int base_vtable_size() { return _base_vtable_size; } 498 }; 499 500 class DeferredObjAllocEvent : public CHeapObj<mtInternal> { 501 private: 502 oop _oop; | 443 static void run_finalizers_on_exit(); 444 445 // Iteration 446 447 // Apply "f" to the addresses of all the direct heap pointers maintained 448 // as static fields of "Universe". 449 static void oops_do(OopClosure* f, bool do_all = false); 450 451 // CDS support 452 static void serialize(SerializeClosure* f, bool do_all = false); 453 454 // Apply "f" to all klasses for basic types (classes not present in 455 // SystemDictionary). 456 static void basic_type_classes_do(void f(Klass*)); 457 458 // For sharing -- fill in a list of known vtable pointers. 459 static void init_self_patching_vtbl_list(void** list, int count); 460 461 // Debugging 462 static bool verify_in_progress() { return _verify_in_progress; } 463 static void verify(VerifyOption option, const char* prefix); 464 static void verify(const char* prefix) { 465 verify(VerifyOption_Default, prefix); 466 } 467 static void verify() { 468 verify(""); 469 } 470 471 static int verify_count() { return _verify_count; } 472 static void print_on(outputStream* st); 473 static void print_heap_at_SIGBREAK(); 474 static void print_heap_before_gc(); 475 static void print_heap_after_gc(); 476 477 // Change the number of dummy objects kept reachable by the full gc dummy 478 // array; this should trigger relocation in a sliding compaction collector. 479 debug_only(static bool release_fullgc_alot_dummy();) 480 // The non-oop pattern (see compiledIC.hpp, etc) 481 static void* non_oop_word(); 482 483 // Oop verification (see MacroAssembler::verify_oop) 484 static uintptr_t verify_oop_mask() PRODUCT_RETURN0; 485 static uintptr_t verify_oop_bits() PRODUCT_RETURN0; 486 static uintptr_t verify_mark_bits() PRODUCT_RETURN0; 487 static uintptr_t verify_mark_mask() PRODUCT_RETURN0; 488 489 // Compiler support 490 static int base_vtable_size() { return _base_vtable_size; } 491 }; 492 493 class DeferredObjAllocEvent : public CHeapObj<mtInternal> { 494 private: 495 oop _oop; |