RFR: 8307352: AARCH64: Improve itable_stub [v2]

Boris Ulasevich bulasevich at openjdk.org
Mon Aug 7 08:12:01 UTC 2023


On Wed, 19 Jul 2023 09:03:33 GMT, Evgeny Astigeevich <eastigeevich at openjdk.org> wrote:

>> Boris Ulasevich has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains one additional commit since the last revision:
>> 
>>   8307352: AARCH64: Improve itable_stub
>
> src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp line 1217:
> 
>> 1215:   assert_different_registers(method_result, recv_klass, holder_klass, temp_itbl_klass, scan_temp, holder_offset);
>> 1216: 
>> 1217:   int vtable_base = in_bytes(Klass::vtable_start_offset());
> 
> Why not to use `vtable_start_offset` to be explicit?

OK

> src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp line 1218:
> 
>> 1216: 
>> 1217:   int vtable_base = in_bytes(Klass::vtable_start_offset());
>> 1218:   int itentry_off = in_bytes(itableMethodEntry::method_offset());
> 
> `itmentry_method_offset`?

The value is applied once. I removed the variable and use `in_bytes(itableMethodEntry::method_offset())` in place.

> src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp line 1219:
> 
>> 1217:   int vtable_base = in_bytes(Klass::vtable_start_offset());
>> 1218:   int itentry_off = in_bytes(itableMethodEntry::method_offset());
>> 1219:   int scan_step = itableOffsetEntry::size() * wordSize;
> 
> `itoentry_size_in_bytes`?

Let it be itable_offset_entry_size

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

PR Review Comment: https://git.openjdk.org/jdk/pull/13792#discussion_r1285522209
PR Review Comment: https://git.openjdk.org/jdk/pull/13792#discussion_r1285524698
PR Review Comment: https://git.openjdk.org/jdk/pull/13792#discussion_r1285525284


More information about the hotspot-dev mailing list