-
Enhancement
-
Resolution: Fixed
-
P3
-
None
-
b08
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8230514 | 11.0.6 | Ioi Lam | P3 | Resolved | Fixed | b01 |
Currently HeapShared::archive_module_graph_objects requires the creation of a new C++ class in javaClasses.hpp for each Java class where we want to archive a static field. See:
http://hg.openjdk.java.net/jdk/jdk/file/910f7b56592f/src/hotspot/share/memory/heapShared.cpp#l505
http://hg.openjdk.java.net/jdk/jdk/file/910f7b56592f/src/hotspot/share/classfile/javaClasses.hpp#l1488
This is hard to maintain and error prone. We should try to refactor the code it so the set of archivable static fields can be specified by a simple table.
http://hg.openjdk.java.net/jdk/jdk/file/910f7b56592f/src/hotspot/share/memory/heapShared.cpp#l505
http://hg.openjdk.java.net/jdk/jdk/file/910f7b56592f/src/hotspot/share/classfile/javaClasses.hpp#l1488
This is hard to maintain and error prone. We should try to refactor the code it so the set of archivable static fields can be specified by a simple table.
- backported by
-
JDK-8230514 Simplify HeapShared::archive_module_graph_objects
-
- Resolved
-
- relates to
-
JDK-8209647 constantPoolHandle::constantPoolHandle(ConstantPool*) when precompiled header is disabled
-
- Resolved
-