RFR: 8285364: Remove REF_ enum for java.lang.ref.Reference [v3]

Stefan Karlsson stefank at openjdk.java.net
Mon Apr 25 19:40:33 UTC 2022


On Mon, 25 Apr 2022 15:51:35 GMT, Coleen Phillimore <coleenp at openjdk.org> wrote:

>> Albert Mingkun Yang has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Remove REF_ enum for java.lang.ref.Reference
>>   
>>   Signed-off-by: Albert Yang <albert.m.yang at oracle.com>
>
> src/hotspot/share/oops/instanceKlass.cpp line 441:
> 
>> 439: 
>> 440:   // Allocation
>> 441:   if (parser.is_java_lang_ref_Reference_subclass()) {
> 
> I'm having a really hard time understanding this.  java.lang.Reference now doesn't have any REF_OTHER type set.  I didn't realize that a java.lang.Reference instance is a plain InstanceKlass, and not an InstanceRefKlass.  Is this right?

Yes, I was also surprised by this. The java.lang.ref.Reference Klass is only an InstanceKlass, not an InstanceRefKlass.

-------------

PR: https://git.openjdk.java.net/jdk/pull/8332


More information about the hotspot-dev mailing list