RFR: 8295110: RISC-V: Mark out relocations as incompressible [v6]

Xiaolin Zheng xlinzheng at openjdk.org
Fri Oct 14 09:21:05 UTC 2022


> This patch marks all relocations incompressible as pre-discussions at [1] and converts instructions to their 2-byte compressible counterparts as much as possible when UseRVC is enabled.
> 
> Chaining PR #10421.
> 
> 1. Code size reduction rate: about ~17% now after this patch under RVC, meaning if there's a piece of code of 1000 bytes, it may shrink to 830 bytes when RVC is enabled. [2]
> 2. Performance: conservatively no regressions observed. [3]
> 
> The overloaded `relocate()` methods hide `IncompressibleRegion`s inside, to exclude instructions used at relocations from being compressed.
> 
> 
> Having tested several times hotspot tier1~tier4; Testing another turn on board.
> 
> 
> 
> [1] https://mail.openjdk.org/pipermail/riscv-port-dev/2022-September/000615.html
> [2] https://mail.openjdk.org/pipermail/riscv-port-dev/2022-September/000633.html
> [3] https://mail.openjdk.org/pipermail/riscv-port-dev/2022-October/000656.html

Xiaolin Zheng has updated the pull request incrementally with one additional commit since the last revision:

  Merge branch 'master' into riscv-rvc-checkin-second-half-part

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/10643/files
  - new: https://git.openjdk.org/jdk/pull/10643/files/83f3598a..0989bbc1

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=10643&range=05
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=10643&range=04-05

  Stats: 11417 lines in 239 files changed: 7643 ins; 2386 del; 1388 mod
  Patch: https://git.openjdk.org/jdk/pull/10643.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/10643/head:pull/10643

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


More information about the hotspot-dev mailing list