51 bool HeapShared::_closed_archive_heap_region_mapped = false;
52 bool HeapShared::_open_archive_heap_region_mapped = false;
53 bool HeapShared::_archive_heap_region_fixed = false;
54
55 address HeapShared::_narrow_oop_base;
56 int HeapShared::_narrow_oop_shift;
57
58 //
59 // If you add new entries to the following tables, you should know what you're doing!
60 //
61
62 // Entry fields for shareable subgraphs archived in the closed archive heap
63 // region. Warning: Objects in the subgraphs should not have reference fields
64 // assigned at runtime.
65 static ArchivableStaticFieldInfo closed_archive_subgraph_entry_fields[] = {
66 {"java/lang/Integer$IntegerCache", "archivedCache"},
67 {"java/lang/Long$LongCache", "archivedCache"},
68 {"java/lang/Byte$ByteCache", "archivedCache"},
69 {"java/lang/Short$ShortCache", "archivedCache"},
70 {"java/lang/Character$CharacterCache", "archivedCache"},
71 };
72 // Entry fields for subgraphs archived in the open archive heap region.
73 static ArchivableStaticFieldInfo open_archive_subgraph_entry_fields[] = {
74 {"jdk/internal/module/ArchivedModuleGraph", "archivedSystemModules"},
75 {"jdk/internal/module/ArchivedModuleGraph", "archivedModuleFinder"},
76 {"jdk/internal/module/ArchivedModuleGraph", "archivedMainModule"},
77 {"jdk/internal/module/ArchivedModuleGraph", "archivedConfiguration"},
78 {"java/util/ImmutableCollections$ListN", "EMPTY_LIST"},
79 {"java/util/ImmutableCollections$MapN", "EMPTY_MAP"},
80 {"java/util/ImmutableCollections$SetN", "EMPTY_SET"},
81 {"java/lang/module/Configuration", "EMPTY_CONFIGURATION"},
82 };
83
84 const static int num_closed_archive_subgraph_entry_fields =
85 sizeof(closed_archive_subgraph_entry_fields) / sizeof(ArchivableStaticFieldInfo);
86 const static int num_open_archive_subgraph_entry_fields =
87 sizeof(open_archive_subgraph_entry_fields) / sizeof(ArchivableStaticFieldInfo);
88
89 ////////////////////////////////////////////////////////////////
90 //
|
51 bool HeapShared::_closed_archive_heap_region_mapped = false;
52 bool HeapShared::_open_archive_heap_region_mapped = false;
53 bool HeapShared::_archive_heap_region_fixed = false;
54
55 address HeapShared::_narrow_oop_base;
56 int HeapShared::_narrow_oop_shift;
57
58 //
59 // If you add new entries to the following tables, you should know what you're doing!
60 //
61
62 // Entry fields for shareable subgraphs archived in the closed archive heap
63 // region. Warning: Objects in the subgraphs should not have reference fields
64 // assigned at runtime.
65 static ArchivableStaticFieldInfo closed_archive_subgraph_entry_fields[] = {
66 {"java/lang/Integer$IntegerCache", "archivedCache"},
67 {"java/lang/Long$LongCache", "archivedCache"},
68 {"java/lang/Byte$ByteCache", "archivedCache"},
69 {"java/lang/Short$ShortCache", "archivedCache"},
70 {"java/lang/Character$CharacterCache", "archivedCache"},
71 {"java/util/jar/Attributes$Name", "KNOWN_NAMES"},
72 };
73 // Entry fields for subgraphs archived in the open archive heap region.
74 static ArchivableStaticFieldInfo open_archive_subgraph_entry_fields[] = {
75 {"jdk/internal/module/ArchivedModuleGraph", "archivedSystemModules"},
76 {"jdk/internal/module/ArchivedModuleGraph", "archivedModuleFinder"},
77 {"jdk/internal/module/ArchivedModuleGraph", "archivedMainModule"},
78 {"jdk/internal/module/ArchivedModuleGraph", "archivedConfiguration"},
79 {"java/util/ImmutableCollections$ListN", "EMPTY_LIST"},
80 {"java/util/ImmutableCollections$MapN", "EMPTY_MAP"},
81 {"java/util/ImmutableCollections$SetN", "EMPTY_SET"},
82 {"java/lang/module/Configuration", "EMPTY_CONFIGURATION"},
83 };
84
85 const static int num_closed_archive_subgraph_entry_fields =
86 sizeof(closed_archive_subgraph_entry_fields) / sizeof(ArchivableStaticFieldInfo);
87 const static int num_open_archive_subgraph_entry_fields =
88 sizeof(open_archive_subgraph_entry_fields) / sizeof(ArchivableStaticFieldInfo);
89
90 ////////////////////////////////////////////////////////////////
91 //
|