RFR: 8326306: RISC-V: Re-structure MASM calls and jumps [v2]
Robbin Ehn
rehn at openjdk.org
Tue Apr 30 10:36:05 UTC 2024
On Mon, 29 Apr 2024 06:30:18 GMT, Robbin Ehn <rehn at openjdk.org> wrote:
>> Hi, Let me try to understand what you mean. Are we going to remove the `relocate` for non-code-cache call at [1] and further improve the `movptr` at [2] making use of `la`? So no need for `call` then as they could be replaced with `rt_call`? This sounds interesting to me :- )
>>
>> [1] https://github.com/openjdk/jdk/blob/master/src/hotspot/cpu/riscv/macroAssembler_riscv.cpp#L5031
>> [2] https://github.com/openjdk/jdk/blob/master/src/hotspot/cpu/riscv/macroAssembler_riscv.cpp#L5033
>
> I have not looked at it in detail.
>
> As mnemonic for **call** is _auipc_ + _jalr_, in hotspot `la()` + `jalr()`.
> So sites using call() for non-code-cache was changed to rt_call(), which gets us the same result as the old call().
>
> Hence this patch 'tries' to keep the generate assembly the same.
Make sense?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/18942#discussion_r1584548549
More information about the hotspot-dev
mailing list