RFR: 8342882: RISC-V: Unify handling of jumps to runtime

Fei Yang fyang at openjdk.org
Wed Oct 23 10:28:50 UTC 2024


This fixes and unifies handling of jumps to runtime. Was previously discussed here [1]. ( Tagging @robehn )
Seems not reasonable for `MacroAssembler::j(const Address &dest, Register temp)` to directly delegate work to `MacroAssembler::j(const address dest, Register temp)` for literal Address. This could generate a plain `JAL`, which means when we relocate the code, but the `JAL` immediate could be too large. This relaxes this constaint.

[1] https://github.com/openjdk/jdk/pull/21406#issuecomment-2415965656

Testing in progress on linux-riscv64.
- [ ] tier1 - tier3 (release)
- [ ] tier1 (fastdebug)

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

Commit messages:
 - JDK-8342882: RISC-V: Unify handling of jumps to runtime

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

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


More information about the hotspot-dev mailing list