RFR: 8261268: LOAD_INSTANCE placeholders unneeded for parallelCapable class loaders
Coleen Phillimore
coleenp at openjdk.java.net
Tue Feb 9 12:36:37 UTC 2021
On Tue, 9 Feb 2021 02:55:09 GMT, David Holmes <dholmes at openjdk.org> wrote:
>> See CR for more details. This optimizes some code for class loading.
>> Tested with tier1-6.
>
> src/hotspot/share/classfile/systemDictionary.cpp line 1865:
>
>> 1863: }
>> 1864:
>> 1865: DEBUG_ONLY(if (is_parallelCapable(class_loader)) verify_placeholder(name, loader_data));
>
> I can't help but feel that somewhere in the loading process there should be a more general assertion that, not only is there a placeholder present, but that it is for this thread. Though such a check would also need to check the kind of placeholder found. Future RFE perhaps.
In this case, we call check_constraints() after loadClass so the placeholder doesn't exist for parallelCapable class loaders (we do want one for the define class path). Not sure what sort of assertion would be helpful here.
-------------
PR: https://git.openjdk.java.net/jdk/pull/2469
More information about the hotspot-runtime-dev
mailing list