RFR: 8288971: AArch64: Clean up stack and register handling in interpreter [v3]

Andrew Haley aph at openjdk.org
Thu Jun 30 15:06:43 UTC 2022


> There are several places in the interpreter that could be improved.
> 
> 1. We use r13 to pass the caller's SP to a callee through adapters. r13 is not a callee-saved register in the native ABI, so this causes some complications. Use a callee-saved register.
> 2. We frequently recalculate the location where the native SP needs to go. We have a spare slot in the interpreter frame, so we should calculate it once, when the frame is created, and use it.
> 3. Related to 1, we should clearly label all the places where the caller's SP is passed to a callee.

Andrew Haley has updated the pull request incrementally with two additional commits since the last revision:

 - Update templateInterpreterGenerator_aarch64.cpp
 - Update assembler_aarch64.hpp

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/9239/files
  - new: https://git.openjdk.org/jdk/pull/9239/files/bf56b389..b9d7186c

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

  Stats: 2 lines in 2 files changed: 0 ins; 0 del; 2 mod
  Patch: https://git.openjdk.org/jdk/pull/9239.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/9239/head:pull/9239

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


More information about the hotspot-dev mailing list