RFR: 8364150: RISC-V: Leftover for JDK-8343430 removing old trampoline call

Fei Yang fyang at openjdk.org
Mon Jul 28 12:30:06 UTC 2025


Hi, please consider this small change.

JDK-8343430 removed the old trampoline call on RISC-V. And the new solution (reloc call) loads a target address from stub section and do an indirect call. This means the stub is always there for a NativeCall. So there's no need to check existence of the stub when doing `CallRelocation::fix_relocation_after_move` [1].

We can always return the stub address in `NativeCall::reloc_destination` and use that address in `NativeCall::reloc_set_destination`. This helps simplify the code and saves one `MacroAssembler::target_addr_for_insn` call
and one `trampoline_stub_Relocation::get_trampoline_for` call in these two functions respectively.

Testing on linux-riscv64:
- [x] tier1-tier3 (release build)
- [x] hs:tier1-hs:tier3 (fastdebug build)

[1] https://github.com/openjdk/jdk/blob/master/src/hotspot/share/code/relocInfo.cpp#L404-L406

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

Commit messages:
 - 8364150: RISC-V: Leftover for JDK-8343430 removing old trampoline call

Changes: https://git.openjdk.org/jdk/pull/26495/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=26495&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8364150
  Stats: 12 lines in 2 files changed: 1 ins; 7 del; 4 mod
  Patch: https://git.openjdk.org/jdk/pull/26495.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/26495/head:pull/26495

PR: https://git.openjdk.org/jdk/pull/26495


More information about the hotspot-compiler-dev mailing list