180 _version = _current_version; |
180 _version = _current_version; |
181 _alignment = alignment; |
181 _alignment = alignment; |
182 _obj_alignment = ObjectAlignmentInBytes; |
182 _obj_alignment = ObjectAlignmentInBytes; |
183 _compact_strings = CompactStrings; |
183 _compact_strings = CompactStrings; |
184 _narrow_oop_mode = Universe::narrow_oop_mode(); |
184 _narrow_oop_mode = Universe::narrow_oop_mode(); |
|
185 _narrow_oop_base = Universe::narrow_oop_base(); |
185 _narrow_oop_shift = Universe::narrow_oop_shift(); |
186 _narrow_oop_shift = Universe::narrow_oop_shift(); |
186 _max_heap_size = MaxHeapSize; |
187 _max_heap_size = MaxHeapSize; |
187 _narrow_klass_base = Universe::narrow_klass_base(); |
188 _narrow_klass_base = Universe::narrow_klass_base(); |
188 _narrow_klass_shift = Universe::narrow_klass_shift(); |
189 _narrow_klass_shift = Universe::narrow_klass_shift(); |
189 _classpath_entry_table_size = mapinfo->_classpath_entry_table_size; |
190 _classpath_entry_table_size = mapinfo->_classpath_entry_table_size; |
685 // During runtime execution, out-going references to any other java heap |
686 // During runtime execution, out-going references to any other java heap |
686 // regions may be added. GC may mark and update references in the mapped |
687 // regions may be added. GC may mark and update references in the mapped |
687 // open archive objects. |
688 // open archive objects. |
688 void FileMapInfo::map_heap_regions() { |
689 void FileMapInfo::map_heap_regions() { |
689 if (MetaspaceShared::is_heap_object_archiving_allowed()) { |
690 if (MetaspaceShared::is_heap_object_archiving_allowed()) { |
|
691 log_info(cds)("Archived narrow_oop_mode = %d, narrow_oop_base = " PTR_FORMAT ", narrow_oop_shift = %d", |
|
692 narrow_oop_mode(), p2i(narrow_oop_base()), narrow_oop_shift()); |
|
693 log_info(cds)("Archived narrow_klass_base = " PTR_FORMAT ", narrow_klass_shift = %d", |
|
694 p2i(narrow_klass_base()), narrow_klass_shift()); |
|
695 |
690 // Check that all the narrow oop and klass encodings match the archive |
696 // Check that all the narrow oop and klass encodings match the archive |
691 if (narrow_oop_mode() != Universe::narrow_oop_mode() || |
697 if (narrow_oop_mode() != Universe::narrow_oop_mode() || |
|
698 narrow_oop_base() != Universe::narrow_oop_base() || |
692 narrow_oop_shift() != Universe::narrow_oop_shift() || |
699 narrow_oop_shift() != Universe::narrow_oop_shift() || |
693 narrow_klass_base() != Universe::narrow_klass_base() || |
700 narrow_klass_base() != Universe::narrow_klass_base() || |
694 narrow_klass_shift() != Universe::narrow_klass_shift()) { |
701 narrow_klass_shift() != Universe::narrow_klass_shift()) { |
695 if (log_is_enabled(Info, cds) && _header->_space[MetaspaceShared::first_string]._used > 0) { |
702 if (log_is_enabled(Info, cds) && _header->_space[MetaspaceShared::first_string]._used > 0) { |
696 log_info(cds)("Cached heap data from the CDS archive is being ignored. " |
703 log_info(cds)("Cached heap data from the CDS archive is being ignored. " |
697 "The current CompressedOops/CompressedClassPointers encoding differs from " |
704 "The current CompressedOops/CompressedClassPointers encoding differs from " |
698 "that archived due to heap size change. The archive was dumped using max heap " |
705 "that archived due to heap size change. The archive was dumped using max heap " |
699 "size " UINTX_FORMAT "M.", max_heap_size()/M); |
706 "size " UINTX_FORMAT "M.", max_heap_size()/M); |
|
707 log_info(cds)("Current narrow_oop_mode = %d, narrow_oop_base = " PTR_FORMAT ", narrow_oop_shift = %d", |
|
708 Universe::narrow_oop_mode(), p2i(Universe::narrow_oop_base()), |
|
709 Universe::narrow_oop_shift()); |
|
710 log_info(cds)("Current narrow_klass_base = " PTR_FORMAT ", narrow_klass_shift = %d", |
|
711 p2i(Universe::narrow_klass_base()), Universe::narrow_klass_shift()); |
700 } |
712 } |
701 } else { |
713 } else { |
702 // First, map string regions as closed archive heap regions. |
714 // First, map string regions as closed archive heap regions. |
703 // GC does not write into the regions. |
715 // GC does not write into the regions. |
704 if (map_heap_data(&string_ranges, |
716 if (map_heap_data(&string_ranges, |