On Tue, 3 Nov 2026 13:46:18 GMT, Gui Cao <[email protected]> wrote:

> Hi, please condiser.
> SA currently computes continuation entry frame pointers using the raw 
> sizeof(ContinuationEntry), whereas HotSpot uses that size rounded up to two 
> machine words.
> With the current 64-bit layout, the raw size is 56 bytes and the aligned size 
> is 64 bytes. Consequently, SA computes frame pointers eight bytes too low on 
> x86-64, AArch64, and RISC-V64.
> 
> This change:
> - Aligns the size in the shared SA implementation, matching 
> ContinuationEntry::size().
> - Preserves RISC-V’s additional two-word FP adjustment.
> - Adds a cross-platform jtreg test that checks FP offsets using the attached 
> JVM’s type metadata and a synthetic entry address, without depending on 
> stack-walking behavior or virtual-thread timing.
> 
> Testing: github ci
> 
> ---------
> - [x] I confirm that I make this contribution in accordance with the [OpenJDK 
> Interim AI Policy](https://openjdk.org/legal/ai).

This pull request has now been integrated.

Changeset: f3ebd00b
Author:    Gui Cao <[email protected]>
URL:       
https://git.openjdk.org/jdk/commit/f3ebd00be9a8cc20fef779a6b41b97b2fb550801
Stats:     105 lines in 2 files changed: 104 ins; 0 del; 1 mod

8396520: SA: Align continuation entry size when computing frame pointers

Reviewed-by: cjplummer, ysuenaga

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

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

Reply via email to