Integrated: 8287044: Loom: Incorrect StackChunk::pc accessors

Aleksey Shipilev shade at openjdk.java.net
Mon May 23 05:43:05 UTC 2022


On Thu, 19 May 2022 17:53:12 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> The injected field is defined as:
> 
> 
>   macro(jdk_internal_vm_StackChunk, pc, intptr_signature, false) \
> 
> 
> ...yet it is read and written as "long", which silently overwrites adjacent fields in `StackChunk` on 32-bit platforms. This is a blocker for any 32-bit support. There are plenty of other `intptr` injected fields in other classes (e.g. `Class::array_klass`), and they are properly accessed by "address" accessors. 
> 
> Additional testing:
>  - [x] Linux x86_64 fastdebug, prospective `jdk_loom hotspot_loom`
>  - [x] Linux AArch64 fastdebug, prospective `jdk_loom hotspot_loom`
>  - [x] Linux x86_32 fastdebug experimental port is not broken here anymore

This pull request has now been integrated.

Changeset: 9008cfad
Author:    Aleksey Shipilev <shade at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/9008cfad45346af570a765335846b0b4fe9af4b6
Stats:     8 lines in 3 files changed: 0 ins; 0 del; 8 mod

8287044: Loom: Incorrect StackChunk::pc accessors

Reviewed-by: rpressler, coleenp

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

PR: https://git.openjdk.java.net/jdk/pull/8792


More information about the hotspot-dev mailing list