On Fri, 30 Aug 2024 14:11:08 GMT, Coleen Phillimore <cole...@openjdk.org> wrote:

>> src/hotspot/share/jvmci/vmStructs_jvmci.cpp line 274:
>> 
>>> 272:   nonstatic_field(Klass,                       _bitmap,                
>>>                        uintx)                                 \
>>> 273:   nonstatic_field(Klass,                       _hash_slot,             
>>>                        uint8_t)                               \
>>> 274:   nonstatic_field(Klass,                       _misc_flags._flags,     
>>>                        u1)                                    \
>> 
>> Can we export `_misc_flags` instead, similar to `_access_flags`?
>> 
>> diff --git a/src/hotspot/share/jvmci/vmStructs_jvmci.cpp 
>> b/src/hotspot/share/jvmci/vmStructs_jvmci.cpp
>> index 9d65268f0fe..6170647186c 100644
>> --- a/src/hotspot/share/jvmci/vmStructs_jvmci.cpp
>> +++ b/src/hotspot/share/jvmci/vmStructs_jvmci.cpp
>> @@ -268,10 +268,10 @@
>>    nonstatic_field(Klass,                       _java_mirror,                
>>                   OopHandle)                             \
>>    nonstatic_field(Klass,                       _modifier_flags,             
>>                   jint)                                  \
>>    nonstatic_field(Klass,                       _access_flags,               
>>                   AccessFlags)                           \
>> +  nonstatic_field(Klass,                       _misc_flags,                 
>>                   KlassFlags)                            \
>>    nonstatic_field(Klass,                       _class_loader_data,          
>>                   ClassLoaderData*)                      \
>>    nonstatic_field(Klass,                       _bitmap,                     
>>                   uintx)                                 \
>>    nonstatic_field(Klass,                       _hash_slot,                  
>>                   uint8_t)                               \
>> -  nonstatic_field(Klass,                       _misc_flags._flags,          
>>                   u1)                                    \
>>                                                                              
>>                                                          \
>>    nonstatic_field(LocalVariableTableElement,   start_bci,                   
>>                   u2)                                    \
>>    nonstatic_field(LocalVariableTableElement,   length,                      
>>                   u2)                                    \
>> diff --git 
>> a/src/jdk.internal.vm.ci/share/classes/jdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl.java
>>  b/src/jdk.internal.vm.ci/share/classes/jdk/...
>
> I don't think the JVMCI knows about the type KlassFlags - I used the same 
> code that I used for InstanceKlass::_misc_flags._flags  (see above this).

I made the change to refactor the getMiscFlags function, but if you want to add 
knowledge of the KlassFlags class (and InstanceKlassFlags also), you could do 
that separately from this PR.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/20719#discussion_r1739381799

Reply via email to