RFR: 8292638: x86: Improve scratch register handling in VM stubs [v7]

Vladimir Ivanov vlivanov at openjdk.org
Mon Aug 22 20:31:27 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

Vladimir Ivanov has updated the pull request incrementally with two additional commits since the last revision:

 - reuse is_always_reachable
 - is_reachable_from

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/9932/files
  - new: https://git.openjdk.org/jdk/pull/9932/files/6ea69dd2..9b4e941d

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

  Stats: 119 lines in 1 file changed: 49 ins; 58 del; 12 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