RFR: 8292638: x86: Improve scratch register handling in VM stubs

Vladimir Ivanov vlivanov at openjdk.org
Thu Aug 18 22:10:26 UTC 2022


(PR depends on #9923.)

Constants which reside outside code cache are not guaranteed to be reachable in
RIP-relative addressing mode from stub code, but absolute addressing mode requires a
scratch register.

Provide a scratch register to ensure constants are reachable irrespective of
process memory layout. 

Make scratch register usage explicit to make possible conflicts with surrounding stub code explicit.

Testing:
- [x] hs-tier1 - hs-tier4
- [x] x86_32 hotspot build

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

Depends on: https://git.openjdk.org/jdk/pull/9923

Commit messages:
 - 8292638: x86: Improve scratch register handling in VM stubs

Changes: https://git.openjdk.org/jdk/pull/9932/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=9932&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8292638
  Stats: 414 lines in 13 files changed: 70 ins; 97 del; 247 mod
  Patch: https://git.openjdk.org/jdk/pull/9932.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/9932/head:pull/9932

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


More information about the hotspot-dev mailing list