RFR: 8340241: RISC-V: Returns mispredicted [v10]

Robbin Ehn rehn at openjdk.org
Tue Oct 15 09:41:55 UTC 2024


On Tue, 15 Oct 2024 02:13:19 GMT, Fei Yang <fyang at openjdk.org> wrote:

>> Robbin Ehn has updated the pull request incrementally with two additional commits since the last revision:
>> 
>>  - Fixed no explicit use of default t1
>>  - Revert clinit_barrier t1
>
> src/hotspot/cpu/riscv/c1_LIRAssembler_riscv.cpp line 100:
> 
>> 98: 
>> 99:   __ mov_metadata(t0, method->holder()->constant_encoding());
>> 100:   __ clinit_barrier(t0, t1, &L_skip_barrier /* L_fast_path */);
> 
> Can we revert this as well? Missed?

Yes

> src/hotspot/cpu/riscv/riscv.ad line 1422:
> 
>> 1420: 
>> 1421:     __ mov_metadata(t0, C->method()->holder()->constant_encoding());
>> 1422:     __ clinit_barrier(t0, t1, &L_skip_barrier);
> 
> Similar here. Missed?

Yes

> src/hotspot/cpu/riscv/sharedRuntime_riscv.cpp line 614:
> 
>> 612:   const Register receiver = j_rarg0;
>> 613:   const Register data = t0;
>> 614:   const Register tmp = t2;  // A call-clobbered register not used for arg passing
> 
> Can you remove following line at L614 while you are on it? Seems a left-over which is now not used anywhere.
> 
> 
> const Register tmp = t2;  // A call-clobbered register not used for arg passing

Yes

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

PR Review Comment: https://git.openjdk.org/jdk/pull/21406#discussion_r1800809015
PR Review Comment: https://git.openjdk.org/jdk/pull/21406#discussion_r1800809177
PR Review Comment: https://git.openjdk.org/jdk/pull/21406#discussion_r1800809363


More information about the hotspot-dev mailing list