RFR: 8367692: RISC-V: Align post call nop [v6]

Hamlin Li mli at openjdk.org
Mon Sep 29 10:12:14 UTC 2025


On Mon, 29 Sep 2025 09:17:02 GMT, Robbin Ehn <rehn at openjdk.org> wrote:

>> Hi please, consider.
>> 
>> As ziccif require instructions to natural aligned to be atomic the 4 byte post call nop must be aligned.
>> But I don't want to add a c.nop(2b) to align the nop(4b) which means the jal(r) must also be algined.
>> As we have no utility to aligned the end of an instruction sequence the call it self is aligned and uses only 4 byte instructions. Only in the case where we could use an two c-instruction we may loose space.
>> 
>> Thanks, Robbin
>
> Robbin Ehn 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 seven additional commits since the last revision:
> 
>  - Merge branch 'master' into align_post_nops
>  - Use relocation spec as marker.
>  - Revert "Removed relocate for post call nops"
>    
>    This reverts commit 033ecd4ab3d62c1ccc7845d8bc9e62fc6574e05d.
>  - Removed relocate for post call nops
>  - Merge branch 'master' into align_post_nops
>  - Review comments
>  - init

src/hotspot/cpu/riscv/macroAssembler_riscv.cpp line 363:

> 361:     return;
> 362:   }
> 363:   relocate(post_call_nop_Relocation::spec());

What's the reason for this change? Does it make difference from the previous code?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/27467#discussion_r2387410055


More information about the hotspot-dev mailing list