RFR 8197954 Remove unnecessary intermediary APIs from AppCDS implementation
Calvin Cheung
calvin.cheung at oracle.com
Wed May 2 22:38:32 UTC 2018
Hi Ioi,
The changes look good. I have the following minor comments:
1) classLoaderExt.hpp
32 class ClassListParser;
The above can remain as CDS_ONLY.
It is needed for
113 static Klass* load_one_class(ClassListParser* parser, TRAPS);
The above function should be CDS_ONLY as it is called via the
MetaspaceShared::preload_and_dump() code path.
2) sharedPathsMiscInfo.hpp
124 enum {
125 BOOT = 1,
126 NON_EXIST = 2,
127 APP = 5,
128 MODULE = 6
129 };
How about set APP to 3 and MODULE to 4?
thanks,
Calvin
On 5/1/18, 10:17 PM, Ioi Lam wrote:
> https://bugs.openjdk.java.net/browse/JDK-8197954
> http://cr.openjdk.java.net/~iklam/jdk11/8197954-remove-unnecessary-appcds-api.v01/
>
>
> Summary:
>
> Before AppCDS was open sourced, we had a few "Ext" classes in
> sharedClassUtil.hpp
> that abstracted away the CDS operations related to the non-boot class
> loaders.
> This API made it possible to build the Oracle JDK with AppCDS
> included, or build
> the Open JDK with AppCDS removed.
>
> With the open sourcing of AppCDS, this abstraction layer is no longer
> necessary. I
> have moved the contents of the "Ext" classes into their proper
> locations and removed
> the sharedClassUtil.hpp/cpp files.
>
> Most of the changes are just moving things around. There shouldn't be
> behavioral
> changes.
>
> The files classLoaderExt.hpp/cpp still exists -- it encapsulates the
> classpath
> management code and is not strictly unnecessary. Some clean up may be
> needed there, but
> I'll probably do that in a separate RFE.
>
> Testing with hotspot tiers1~4.
>
> Thanks
> - Ioi
>
>
More information about the hotspot-runtime-dev
mailing list