RFR: 8320697: RISC-V: Small refactoring for runtime calls [v4]

Feilong Jiang fjiang at openjdk.org
Fri Dec 1 11:03:28 UTC 2023


> Hi, please review this refactoring for runtime calls.
> Major changes:
> 1. Unified the runtime calls with the existing MacroAssembler::rt_call. This will remove the duplicate code like `relocate(target.rspec() [&] {...}` to emit uncompressed instructions.
> 2. Removed MacroAssembler::far_branches and made the call sites default to far branches. `branch_range` is 1MB for riscv, and `ReservedCodeCacheSize` will always bigger than `branch_range` in practice. We should remove this unnecessary check and simplify the code logic.
> 3. Renamed MacroAssembler::la_patchable with MacroAssembler::la making it less confusing.
> 4. `far_call` in `rt_call` should use `tmp` instead of the default temporary register `t0`
> 5. Removed some unused codes in `g1BarrierSetAssembler_riscv.cpp`
> 
> 
> Testing:
> - [x] Tier1-3 tested on hifive unmatched board (release)
> - [x] Run non-trivial benchmark workloads (fastdebug)

Feilong Jiang 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 five additional commits since the last revision:

 - Merge branch 'master' of https://github.com/openjdk/jdk into JDK-8320697
 - adjust format
 - remove unnecessary relocate
 - Rename la_patchable with la
 - RISC-V: Small refactoring for external and runtime calls

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/16816/files
  - new: https://git.openjdk.org/jdk/pull/16816/files/fee7449a..f94ece09

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=16816&range=03
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=16816&range=02-03

  Stats: 19803 lines in 677 files changed: 14322 ins; 3283 del; 2198 mod
  Patch: https://git.openjdk.org/jdk/pull/16816.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/16816/head:pull/16816

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


More information about the hotspot-compiler-dev mailing list