> Hi, please consider the following changes: > > This is a fix for `sp > unextended_sp` state, which can happen when > interpreted -> interpreted calls go through a method handle linker method. > > On x86 the issue is addressed by incrementing `r13` register value when the > `memberName `appendix arg is being popped out. Additionally, some changes in > JVMTI - related method `_remove_activation_preserving_args_entry` have to be > done to reflect the changes. > > On aarch64 the issue is addressed by keeping a 16-bytes aligned snapshot of > the expression stack pointer (eps) in `r19` instead of the regular stack > pointer, and an increment of that register value when the `MemberName > `appendix arg is being popped out. Although due to the 16-bytes alignment the > result of this increment is wiped out immediately, I think it is good to be > consistent with x86 and have instructions in place. > > Tested in tiers 1 - 7.
Anton Artemov 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 four additional commits since the last revision: - Merge remote-tracking branch 'origin/master' into JDK-8302745-unextended-sp-less-than-sp - 8302745: Don't touch ARM code. - 8302745: Addressed reviewer's comments. - 8302745: Fix for sp > unextended_sp for x86 and aarch64. ------------- Changes: - all: https://git.openjdk.org/jdk/pull/29744/files - new: https://git.openjdk.org/jdk/pull/29744/files/6b98c348..5432a99b Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=29744&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=29744&range=01-02 Stats: 58433 lines in 1607 files changed: 32306 ins; 11679 del; 14448 mod Patch: https://git.openjdk.org/jdk/pull/29744.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/29744/head:pull/29744 PR: https://git.openjdk.org/jdk/pull/29744
