Integrated: 8370500: Change windows x64 implementation of os::current_stack_pointer()
Erik Österlund
eosterlund at openjdk.org
Tue Oct 28 13:44:42 UTC 2025
On Thu, 23 Oct 2025 15:44:39 GMT, Erik Österlund <eosterlund at openjdk.org> wrote:
> The current implementation of os::current_stack_pointer() on windows x64 uses a code stub to read the stack pointer. This means that os::current_stack_pointer() may not be called early on in the bootstrapping. This prevents unhandled oops from being enabled early on.
>
> However, there is an MSVC intrinsic that provides the same functionality without the need to use stubs: _AddressOfReturnAddress() from intrin.h
> By changing this implementation on windows x64, we should be able to call os::current_stack_pointer() early on as it is seemingly the only implementation with such a bootstrapping dependency.
This pull request has now been integrated.
Changeset: c3c0a676
Author: Erik Österlund <eosterlund at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/c3c0a676e53dbafd82e8614a20f6c47df7fc2108
Stats: 46 lines in 4 files changed: 9 ins; 35 del; 2 mod
8370500: Change windows x64 implementation of os::current_stack_pointer()
Reviewed-by: aboldtch, dholmes, kvn, adinn
-------------
PR: https://git.openjdk.org/jdk/pull/27956
More information about the hotspot-dev
mailing list