438 // the root using get_root(index, ...).
439 static int append_root(oop obj);
440 static GrowableArrayCHeap<oop, mtClassShared>* pending_roots() { return _pending_roots; }
441
442 // Dump-time and runtime
443 static objArrayOop root_segment(int segment_idx);
444 static oop get_root(int index, bool clear=false);
445
446 // Run-time only
447 static void clear_root(int index);
448
449 static void get_segment_indexes(int index, int& segment_index, int& internal_index);
450
451 static void setup_test_class(const char* test_class_name) PRODUCT_RETURN;
452 #endif // INCLUDE_CDS_JAVA_HEAP
453
454 public:
455 static void finish_materialize_objects() NOT_CDS_JAVA_HEAP_RETURN;
456
457 static void write_heap(AOTMappedHeapInfo* mapped_heap_info, AOTStreamedHeapInfo* streamed_heap_info) NOT_CDS_JAVA_HEAP_RETURN;
458 static objArrayOop scratch_resolved_references(ConstantPool* src);
459 static void add_scratch_resolved_references(ConstantPool* src, objArrayOop dest) NOT_CDS_JAVA_HEAP_RETURN;
460 static void init_dumping() NOT_CDS_JAVA_HEAP_RETURN;
461 static void init_scratch_objects_for_basic_type_mirrors(TRAPS) NOT_CDS_JAVA_HEAP_RETURN;
462 static void init_box_classes(TRAPS) NOT_CDS_JAVA_HEAP_RETURN;
463 static bool is_heap_region(int idx) {
464 CDS_JAVA_HEAP_ONLY(return (idx == AOTMetaspace::hp);)
465 NOT_CDS_JAVA_HEAP_RETURN_(false);
466 }
467 static void delete_tables_with_raw_oops() NOT_CDS_JAVA_HEAP_RETURN;
468
469 static void resolve_classes(JavaThread* current) NOT_CDS_JAVA_HEAP_RETURN;
470 static void initialize_from_archived_subgraph(JavaThread* current, Klass* k) NOT_CDS_JAVA_HEAP_RETURN;
471
472 static void init_for_dumping(TRAPS) NOT_CDS_JAVA_HEAP_RETURN;
473 static void init_heap_writer() NOT_CDS_JAVA_HEAP_RETURN;
474 static void write_subgraph_info_table() NOT_CDS_JAVA_HEAP_RETURN;
475 static void serialize_tables(SerializeClosure* soc) NOT_CDS_JAVA_HEAP_RETURN;
476
477 #ifndef PRODUCT
478 static bool is_a_test_class_in_unnamed_module(Klass* ik) NOT_CDS_JAVA_HEAP_RETURN_(false);
|
438 // the root using get_root(index, ...).
439 static int append_root(oop obj);
440 static GrowableArrayCHeap<oop, mtClassShared>* pending_roots() { return _pending_roots; }
441
442 // Dump-time and runtime
443 static objArrayOop root_segment(int segment_idx);
444 static oop get_root(int index, bool clear=false);
445
446 // Run-time only
447 static void clear_root(int index);
448
449 static void get_segment_indexes(int index, int& segment_index, int& internal_index);
450
451 static void setup_test_class(const char* test_class_name) PRODUCT_RETURN;
452 #endif // INCLUDE_CDS_JAVA_HEAP
453
454 public:
455 static void finish_materialize_objects() NOT_CDS_JAVA_HEAP_RETURN;
456
457 static void write_heap(AOTMappedHeapInfo* mapped_heap_info, AOTStreamedHeapInfo* streamed_heap_info) NOT_CDS_JAVA_HEAP_RETURN;
458 static refArrayOop scratch_resolved_references(ConstantPool* src);
459 static void add_scratch_resolved_references(ConstantPool* src, objArrayOop dest) NOT_CDS_JAVA_HEAP_RETURN;
460 static void init_dumping() NOT_CDS_JAVA_HEAP_RETURN;
461 static void init_scratch_objects_for_basic_type_mirrors(TRAPS) NOT_CDS_JAVA_HEAP_RETURN;
462 static void init_box_classes(TRAPS) NOT_CDS_JAVA_HEAP_RETURN;
463 static bool is_heap_region(int idx) {
464 CDS_JAVA_HEAP_ONLY(return (idx == AOTMetaspace::hp);)
465 NOT_CDS_JAVA_HEAP_RETURN_(false);
466 }
467 static void delete_tables_with_raw_oops() NOT_CDS_JAVA_HEAP_RETURN;
468
469 static void resolve_classes(JavaThread* current) NOT_CDS_JAVA_HEAP_RETURN;
470 static void initialize_from_archived_subgraph(JavaThread* current, Klass* k) NOT_CDS_JAVA_HEAP_RETURN;
471
472 static void init_for_dumping(TRAPS) NOT_CDS_JAVA_HEAP_RETURN;
473 static void init_heap_writer() NOT_CDS_JAVA_HEAP_RETURN;
474 static void write_subgraph_info_table() NOT_CDS_JAVA_HEAP_RETURN;
475 static void serialize_tables(SerializeClosure* soc) NOT_CDS_JAVA_HEAP_RETURN;
476
477 #ifndef PRODUCT
478 static bool is_a_test_class_in_unnamed_module(Klass* ik) NOT_CDS_JAVA_HEAP_RETURN_(false);
|