< prev index next >


Print this page

@@ -142,10 +142,11 @@
     char*   _read_only_tables_start;
     address _cds_i2i_entry_code_buffers;
     size_t  _cds_i2i_entry_code_buffers_size;
     size_t  _core_spaces_size;        // number of bytes allocated by the core spaces
                                       // (mc, md, ro, rw and od).
+    MemRegion _g1_reserved;           // reserved region at dump time.
     struct space_info {
       int    _crc;           // crc checksum of the current space
       size_t _file_offset;   // sizeof(this) rounded to vm page size
       union {
         char*  _base;        // copy-on-write base address

@@ -212,10 +213,11 @@
   const char* _full_path;
   char* _paths_misc_info;
   static FileMapInfo* _current_info;
+  static bool _heap_pointers_need_relocation;
   bool  init_from_file(int fd);
   void  align_file_position();
   bool  validate_header_impl();
   static void metaspace_pointers_do(MetaspaceClosure* it);

@@ -276,12 +278,16 @@
   size_t write_archive_heap_regions(GrowableArray<MemRegion> *heap_mem,
                                     int first_region_id, int max_num_regions);
   void  write_bytes(const void* buffer, int count);
   void  write_bytes_aligned(const void* buffer, int count);
   char* map_region(int i, char** top_ret);
+  void  map_heap_regions_impl() NOT_CDS_JAVA_HEAP_RETURN;
   void  map_heap_regions() NOT_CDS_JAVA_HEAP_RETURN;
   void  fixup_mapped_heap_regions() NOT_CDS_JAVA_HEAP_RETURN;
+  void  relocate_archived_heap_embedded_pointers() NOT_CDS_JAVA_HEAP_RETURN;
+  void  relocate_archived_heap_embedded_pointers_impl(MemRegion *heap_mem, int num) NOT_CDS_JAVA_HEAP_RETURN;
+  bool  has_heap_regions()  NOT_CDS_JAVA_HEAP_RETURN;
   void  unmap_region(int i);
   bool  verify_region_checksum(int i);
   void  close();
   bool  is_open() { return _file_open; }
   ReservedSpace reserve_shared_memory();
< prev index next >