RFR: 8349088: De-virtualize Codeblob and nmethod [v8]

Vladimir Kozlov kvn at openjdk.org
Fri Feb 14 23:14:22 UTC 2025


On Fri, 14 Feb 2025 00:08:35 GMT, Dean Long <dlong at openjdk.org> wrote:

>> Vladimir Kozlov has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   rename SA argument
>
> src/hotspot/share/code/codeBlob.hpp line 669:
> 
>> 667: 
>> 668:   jobject  receiver()          { return _receiver; }
>> 669:   ByteSize frame_data_offset() { return _frame_data_offset; }
> 
> `frame_data_offset()` seems to be unused.

removed

> src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/c1/Runtime1.java line 65:
> 
>> 63:   public CodeBlob blobFor(int id) {
>> 64:     Address blobAddr = blobsField.getStaticFieldAddress().getAddressAt(id * VM.getVM().getAddressSize());
>> 65:     return VM.getVM().getCodeCache().createCodeBlobWrapper(blobAddr);
> 
> We don't need to change all the callers if we keep a 1-arg version of createCodeBlobWrapper():
> 
> public CodeBlob createCodeBlobWrapper(Address codeBlobAddr) {
>     return createCodeBlobWrapper(codeBlobAddr, codeBlobAddr);
> }

This is the only one place where arguments are the same. In other two arguments are different.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/23533#discussion_r1956672379
PR Review Comment: https://git.openjdk.org/jdk/pull/23533#discussion_r1956667806


More information about the serviceability-dev mailing list