RFR: 8258961: devirtualize SafePointNode::jvms() and hide out set_jvms() [v2]

Xin Liu xliu at openjdk.java.net
Tue Jan 5 10:16:01 UTC 2021


On Mon, 4 Jan 2021 18:39:17 GMT, Vladimir Kozlov <kvn at openjdk.org> wrote:

>> Xin Liu has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   8258961: devirtualize SafePointNode::jvms() and hide out set_jvms()
>>   
>>   devirtualize SafePointNode::jvms(). We can't hide the member variable _jvms
>>   because it is exposed to HotSpot Servicability agent. keeping the qualifier
>>   const for the same resaon.
>
> src/hotspot/share/runtime/vmStructs.cpp line 945:
> 
>> 943:                                                                                                                                      \
>> 944:   c2_nonstatic_field(SafePointNode,            _jvms,                                         JVMState* const)                       \
>> 945:                                                                                                                                      \
> 
> Don't remove it. It is referenced from HotSpot Servicability agent:
> https://github.com/openjdk/jdk/blob/master/src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/opto/SafePointNode.java#L45

Thank you for pointing out this.  I wasn't aware of this agent thing. 
It turns out I can neither move SafePointNode::_jvms to the protected zone nor take off its const qualifier. 
so I revert my changes except removing "virtual" for the SafePointNode::jvms().

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

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


More information about the hotspot-compiler-dev mailing list