pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/lang
Module Name: pkgsrc
Committed By: tnn
Date: Sun Sep 6 16:53:12 UTC 2026
Modified Files:
pkgsrc/lang/openjdk17: distinfo
pkgsrc/lang/openjdk17/patches: patch-make_autoconf_buildjdk-spec.gmk.in
pkgsrc/lang/openjdk21: PLIST distinfo options.mk
pkgsrc/lang/openjdk21/patches: patch-make_autoconf_buildjdk-spec.gmk.in
patch-make_autoconf_flags-cflags.m4
Added Files:
pkgsrc/lang/openjdk21/patches: patch-make_autoconf_flags-ldflags.m4
patch-src_hotspot_os__cpu_bsd__zero_os__bsd__zero.cpp
Log Message:
openjdk{17,21}: backport Zero VM build fixes from wip/openjdk25
To generate a diff of this commit:
cvs rdiff -u -r1.29 -r1.30 pkgsrc/lang/openjdk17/distinfo
cvs rdiff -u -r1.1 -r1.2 \
pkgsrc/lang/openjdk17/patches/patch-make_autoconf_buildjdk-spec.gmk.in
cvs rdiff -u -r1.6 -r1.7 pkgsrc/lang/openjdk21/PLIST
cvs rdiff -u -r1.19 -r1.20 pkgsrc/lang/openjdk21/distinfo
cvs rdiff -u -r1.4 -r1.5 pkgsrc/lang/openjdk21/options.mk
cvs rdiff -u -r1.1 -r1.2 \
pkgsrc/lang/openjdk21/patches/patch-make_autoconf_buildjdk-spec.gmk.in
cvs rdiff -u -r1.2 -r1.3 \
pkgsrc/lang/openjdk21/patches/patch-make_autoconf_flags-cflags.m4
cvs rdiff -u -r0 -r1.1 \
pkgsrc/lang/openjdk21/patches/patch-make_autoconf_flags-ldflags.m4 \
pkgsrc/lang/openjdk21/patches/patch-src_hotspot_os__cpu_bsd__zero_os__bsd__zero.cpp
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/lang/openjdk17/distinfo
diff -u pkgsrc/lang/openjdk17/distinfo:1.29 pkgsrc/lang/openjdk17/distinfo:1.30
--- pkgsrc/lang/openjdk17/distinfo:1.29 Sat Sep 5 09:44:05 2026
+++ pkgsrc/lang/openjdk17/distinfo Sun Sep 6 16:53:12 2026
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.29 2026/09/05 09:44:05 tnn Exp $
+$NetBSD: distinfo,v 1.30 2026/09/06 16:53:12 tnn Exp $
BLAKE2s (bootstrap-jdk-1.17.0.15.6-netbsd-9-aarch64-20250806.tar.xz) = cd7cd0c0acc259f55291932fc679388003c3c108257f08f660d328974b764ee5
SHA512 (bootstrap-jdk-1.17.0.15.6-netbsd-9-aarch64-20250806.tar.xz) = 26003c0ace59f41b03584ae0bbe79b15041d4c3537d5d4227a3396276943ff95d687de0aa5025b5dddb1d91cf33ffbc7fd57d7cc8de70aef53907fa2c2652811
@@ -15,7 +15,7 @@ Size (bootstrap-jdk-1.17.0.3.7-netbsd-9-
BLAKE2s (jdk17u-jdk-17.0.20-8-1.tar.gz) = 867bb9147e4de803dbc072c666dc059cd772b25455687ef8c07ba4f88e2fd63d
SHA512 (jdk17u-jdk-17.0.20-8-1.tar.gz) = ae71f6f45a1e50be471bab7a5e17ce2322be08e294f8ae48789a30f0444a6c34e8f5e243eeab96188e6444a465d0f85323b50b13770ffe70f704e4a5584c5fbb
Size (jdk17u-jdk-17.0.20-8-1.tar.gz) = 108483059 bytes
-SHA1 (patch-make_autoconf_buildjdk-spec.gmk.in) = 01b6ac6dae1a886949020b9d472aab1e357084b0
+SHA1 (patch-make_autoconf_buildjdk-spec.gmk.in) = 7d6089ee4edf9ca936a839c19996056a635b0904
SHA1 (patch-make_autoconf_flags-cflags.m4) = 2777471821988895f5ae1be33b1c92b7386b068a
SHA1 (patch-make_autoconf_hotspot.m4) = 6370c6cb2a3f225c502e7916342104cf1288f4cf
SHA1 (patch-make_autoconf_lib-alsa.m4) = 999fbf951363f6b49b22aad81537728f22d7c381
Index: pkgsrc/lang/openjdk17/patches/patch-make_autoconf_buildjdk-spec.gmk.in
diff -u pkgsrc/lang/openjdk17/patches/patch-make_autoconf_buildjdk-spec.gmk.in:1.1 pkgsrc/lang/openjdk17/patches/patch-make_autoconf_buildjdk-spec.gmk.in:1.2
--- pkgsrc/lang/openjdk17/patches/patch-make_autoconf_buildjdk-spec.gmk.in:1.1 Wed May 25 06:05:34 2022
+++ pkgsrc/lang/openjdk17/patches/patch-make_autoconf_buildjdk-spec.gmk.in Sun Sep 6 16:53:12 2026
@@ -1,13 +1,13 @@
-$NetBSD: patch-make_autoconf_buildjdk-spec.gmk.in,v 1.1 2022/05/25 06:05:34 tnn Exp $
+$NetBSD: patch-make_autoconf_buildjdk-spec.gmk.in,v 1.2 2026/09/06 16:53:12 tnn Exp $
Use the same variant for the buildjdk as the target jdk.
This is needed for native builds on platforms where hotspot is broken or not
supported. In that case the buildjdk can't be hardcoded to "server" but must
use "zero". This is fine for pkgsrc since we only ever build one variant.
---- make/autoconf/buildjdk-spec.gmk.in.orig 2022-04-23 02:25:56.000000000 +0000
+--- make/autoconf/buildjdk-spec.gmk.in.orig 2026-07-23 23:31:02.000000000 +0000
+++ make/autoconf/buildjdk-spec.gmk.in
-@@ -94,8 +94,9 @@ DISABLE_WARNING_PREFIX := @BUILD_CC_DISA
+@@ -94,8 +94,9 @@ ENABLE_DEBUG_SYMBOLS := false
# Save speed and disk space by not enabling debug symbols for the buildjdk
ENABLE_DEBUG_SYMBOLS := false
@@ -15,7 +15,7 @@ use "zero". This is fine for pkgsrc sinc
-JVM_VARIANT_MAIN := server
+JVM_VARIANTS := @JVM_VARIANTS@
+JVM_VARIANT_MAIN := @JVM_VARIANT_MAIN@
-+JVM_FEATURES_zero := g1gc serialgc zero
++JVM_FEATURES_zero := cds g1gc serialgc zero
JVM_FEATURES_server := cds compiler1 compiler2 g1gc serialgc
# Some users still set EXTRA_*FLAGS on the make command line. Must
Index: pkgsrc/lang/openjdk21/PLIST
diff -u pkgsrc/lang/openjdk21/PLIST:1.6 pkgsrc/lang/openjdk21/PLIST:1.7
--- pkgsrc/lang/openjdk21/PLIST:1.6 Fri Aug 14 12:52:05 2026
+++ pkgsrc/lang/openjdk21/PLIST Sun Sep 6 16:53:12 2026
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.6 2026/08/14 12:52:05 ryoon Exp $
+@comment $NetBSD: PLIST,v 1.7 2026/09/06 16:53:12 tnn Exp $
bin/openjdk21-jar
bin/openjdk21-jarsigner
bin/openjdk21-java
@@ -508,6 +508,8 @@ java/openjdk21/lib/libdt_socket${DBGEXT}
java/openjdk21/lib/libdt_socket.so
java/openjdk21/lib/libextnet${DBGEXT}
java/openjdk21/lib/libextnet.so
+${PLIST.zero}java/openjdk21/lib/libfallbackLinker${DBGEXT}
+${PLIST.zero}java/openjdk21/lib/libfallbackLinker.so
java/openjdk21/lib/libfontmanager${DBGEXT}
java/openjdk21/lib/libfontmanager.so
java/openjdk21/lib/libinstrument${DBGEXT}
@@ -569,9 +571,9 @@ java/openjdk21/lib/security/blocked.cert
java/openjdk21/lib/security/cacerts
java/openjdk21/lib/security/default.policy
java/openjdk21/lib/security/public_suffix_list.dat
-java/openjdk21/lib/server/libjsig.so
-java/openjdk21/lib/server/libjvm${DBGEXT}
-java/openjdk21/lib/server/libjvm.so
+java/openjdk21/lib/${BUILD_VARIANT}/libjsig.so
+java/openjdk21/lib/${BUILD_VARIANT}/libjvm${DBGEXT}
+java/openjdk21/lib/${BUILD_VARIANT}/libjvm.so
java/openjdk21/lib/src.zip
java/openjdk21/lib/tzdb.dat
java/openjdk21/man/man1/jar.1
Index: pkgsrc/lang/openjdk21/distinfo
diff -u pkgsrc/lang/openjdk21/distinfo:1.19 pkgsrc/lang/openjdk21/distinfo:1.20
--- pkgsrc/lang/openjdk21/distinfo:1.19 Sat Sep 5 20:50:27 2026
+++ pkgsrc/lang/openjdk21/distinfo Sun Sep 6 16:53:12 2026
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.19 2026/09/05 20:50:27 tnn Exp $
+$NetBSD: distinfo,v 1.20 2026/09/06 16:53:12 tnn Exp $
BLAKE2s (bootstrap-jdk-1.21.0.1.12-netbsd-9-amd64-20231207.tar.xz) = 017a9d787a34faa997d72ac69bcafd9c8ab72354e3a1b751d1cb5d376b364f72
SHA512 (bootstrap-jdk-1.21.0.1.12-netbsd-9-amd64-20231207.tar.xz) = 7ec4208363f44a378674a2b87687ab7facb60bf73118ebd4bec35f7912f073365b36efc4c4b3c034bc448139cb81106e18d6d3b1db45f4ab086ce1ed72bc21bf
@@ -12,8 +12,9 @@ Size (bootstrap-jdk-1.21.0.7.6-netbsd-9-
BLAKE2s (jdk21u-jdk-21.0.12-8-1.tar.gz) = 12f7ac748e9df58b220f72e52dc9c7a29b7720a51d8548d8d2276a38e7a3e6a5
SHA512 (jdk21u-jdk-21.0.12-8-1.tar.gz) = 1e223ac3cd1aac829d68e8875610234632aac05aac4d3d4d84151a965097131aa1d05a2941c51ade46ae2015132ccc6b4aaffc18516cdaacab547fdaaff543d6
Size (jdk21u-jdk-21.0.12-8-1.tar.gz) = 114259124 bytes
-SHA1 (patch-make_autoconf_buildjdk-spec.gmk.in) = 01b6ac6dae1a886949020b9d472aab1e357084b0
-SHA1 (patch-make_autoconf_flags-cflags.m4) = 2777471821988895f5ae1be33b1c92b7386b068a
+SHA1 (patch-make_autoconf_buildjdk-spec.gmk.in) = 1f8d482c9e1498dd230bf63abfc0e4d76cfc6e9b
+SHA1 (patch-make_autoconf_flags-cflags.m4) = 88c41225834688de1ff6d4bcf80ab8c4676a0e74
+SHA1 (patch-make_autoconf_flags-ldflags.m4) = 08c7e642272a447378c8877a1311b90a7e88afad
SHA1 (patch-make_autoconf_hotspot.m4) = 6097c29677f4b84c3821b5cf7ac8c397376027d0
SHA1 (patch-make_autoconf_lib-alsa.m4) = 999fbf951363f6b49b22aad81537728f22d7c381
SHA1 (patch-make_autoconf_lib-bundled.m4) = 5f5b638a08abf2f2066a122a825cfa3db9e95139
@@ -21,6 +22,7 @@ SHA1 (patch-make_autoconf_lib-freetype.m
SHA1 (patch-make_autoconf_lib-x11.m4) = 38038e6d7cfc2d15fb3537a52f11d2961cc2ec99
SHA1 (patch-make_lib_Awt2dLibraries.gmk) = d69fa8c5cab173be2f41cfbd6479dad60a6337db
SHA1 (patch-src_hotspot_os__cpu_bsd__aarch64_vm__version__bsd__aarch64.cpp) = c4db01034655302ca686b3ca2a95ab0ade72ce3a
+SHA1 (patch-src_hotspot_os__cpu_bsd__zero_os__bsd__zero.cpp) = c86e92ae0074b46cd623290bcfa5728517875640
SHA1 (patch-src_hotspot_os_bsd_os__bsd.cpp) = 5561ed502aa925cd3d0514c7ec298e0491d14ffc
SHA1 (patch-src_hotspot_share_runtime_threadWXSetters.inline.hpp) = f704bb060803e500415b5d300e26857cf7288ca5
SHA1 (patch-src_java.desktop_bsd_data_fontconfig_fontconfig.properties) = 01aff1bb2c14265b0ebcc9d12fba8d48b876d36e
Index: pkgsrc/lang/openjdk21/options.mk
diff -u pkgsrc/lang/openjdk21/options.mk:1.4 pkgsrc/lang/openjdk21/options.mk:1.5
--- pkgsrc/lang/openjdk21/options.mk:1.4 Mon Aug 11 18:06:32 2025
+++ pkgsrc/lang/openjdk21/options.mk Sun Sep 6 16:53:12 2026
@@ -1,4 +1,4 @@
-# $NetBSD: options.mk,v 1.4 2025/08/11 18:06:32 pho Exp $
+# $NetBSD: options.mk,v 1.5 2026/09/06 16:53:12 tnn Exp $
PKG_OPTIONS_VAR= PKG_OPTIONS.openjdk21
PKG_OPTIONS_OPTIONAL_GROUPS= variant
@@ -105,13 +105,14 @@ CONFIGURE_ARGS+= --with-stdc++lib=dynami
#
# Build variant. Zero VM builds a portable JVM without assembly optimization.
#
-PLIST_VARS+= hotspot
+PLIST_SUBST+= BUILD_VARIANT=${BUILD_VARIANT}
+PLIST_VARS+= zero
.if !empty(PKG_OPTIONS:Mjdk-zero-vm)
BUILD_VARIANT= zero
+PLIST.zero= yes
.include "../../devel/libffi/buildlink3.mk"
.elif !empty(PKG_OPTIONS:Mjdk-hotspot-vm)
BUILD_VARIANT= server
-PLIST.hotspot= yes
.endif
CONFIGURE_ARGS+= --with-jvm-variants=${BUILD_VARIANT}
Index: pkgsrc/lang/openjdk21/patches/patch-make_autoconf_buildjdk-spec.gmk.in
diff -u pkgsrc/lang/openjdk21/patches/patch-make_autoconf_buildjdk-spec.gmk.in:1.1 pkgsrc/lang/openjdk21/patches/patch-make_autoconf_buildjdk-spec.gmk.in:1.2
--- pkgsrc/lang/openjdk21/patches/patch-make_autoconf_buildjdk-spec.gmk.in:1.1 Wed Nov 22 14:06:50 2023
+++ pkgsrc/lang/openjdk21/patches/patch-make_autoconf_buildjdk-spec.gmk.in Sun Sep 6 16:53:12 2026
@@ -1,13 +1,13 @@
-$NetBSD: patch-make_autoconf_buildjdk-spec.gmk.in,v 1.1 2023/11/22 14:06:50 ryoon Exp $
+$NetBSD: patch-make_autoconf_buildjdk-spec.gmk.in,v 1.2 2026/09/06 16:53:12 tnn Exp $
Use the same variant for the buildjdk as the target jdk.
This is needed for native builds on platforms where hotspot is broken or not
supported. In that case the buildjdk can't be hardcoded to "server" but must
use "zero". This is fine for pkgsrc since we only ever build one variant.
---- make/autoconf/buildjdk-spec.gmk.in.orig 2022-04-23 02:25:56.000000000 +0000
+--- make/autoconf/buildjdk-spec.gmk.in.orig 2026-07-23 23:33:34.000000000 +0000
+++ make/autoconf/buildjdk-spec.gmk.in
-@@ -94,8 +94,9 @@ DISABLE_WARNING_PREFIX := @BUILD_CC_DISA
+@@ -94,8 +94,9 @@ ENABLE_DEBUG_SYMBOLS := false
# Save speed and disk space by not enabling debug symbols for the buildjdk
ENABLE_DEBUG_SYMBOLS := false
@@ -15,7 +15,7 @@ use "zero". This is fine for pkgsrc sinc
-JVM_VARIANT_MAIN := server
+JVM_VARIANTS := @JVM_VARIANTS@
+JVM_VARIANT_MAIN := @JVM_VARIANT_MAIN@
-+JVM_FEATURES_zero := g1gc serialgc zero
++JVM_FEATURES_zero := cds g1gc serialgc zero
JVM_FEATURES_server := cds compiler1 compiler2 g1gc serialgc
# Some users still set EXTRA_*FLAGS on the make command line. Must
Index: pkgsrc/lang/openjdk21/patches/patch-make_autoconf_flags-cflags.m4
diff -u pkgsrc/lang/openjdk21/patches/patch-make_autoconf_flags-cflags.m4:1.2 pkgsrc/lang/openjdk21/patches/patch-make_autoconf_flags-cflags.m4:1.3
--- pkgsrc/lang/openjdk21/patches/patch-make_autoconf_flags-cflags.m4:1.2 Tue Oct 1 14:49:40 2024
+++ pkgsrc/lang/openjdk21/patches/patch-make_autoconf_flags-cflags.m4 Sun Sep 6 16:53:12 2026
@@ -1,8 +1,8 @@
-$NetBSD: patch-make_autoconf_flags-cflags.m4,v 1.2 2024/10/01 14:49:40 ryoon Exp $
+$NetBSD: patch-make_autoconf_flags-cflags.m4,v 1.3 2026/09/06 16:53:12 tnn Exp $
We prefer to use explicit run paths.
---- make/autoconf/flags-cflags.m4.orig 2024-07-27 15:26:53.000000000 +0000
+--- make/autoconf/flags-cflags.m4.orig 2026-07-23 23:33:34.000000000 +0000
+++ make/autoconf/flags-cflags.m4
@@ -40,8 +40,8 @@ AC_DEFUN([FLAGS_SETUP_SHARED_LIBS],
# --disable-new-dtags forces use of RPATH instead of RUNPATH for rpaths.
@@ -10,7 +10,7 @@ We prefer to use explicit run paths.
# overridden using LD_LIBRARY_PATH. See JDK-8326891 for more information.
- SET_EXECUTABLE_ORIGIN='-Wl,-rpath,\$$ORIGIN[$]1 -Wl,--disable-new-dtags'
- SET_SHARED_LIBRARY_ORIGIN="-Wl,-z,origin $SET_EXECUTABLE_ORIGIN"
-+ SET_EXECUTABLE_ORIGIN='@COMPILER_RPATH_FLAG@@PREFIX@/java/@JAVA_NAME@/lib @COMPILER_RPATH_FLAG@@PREFIX@/java/@JAVA_NAME@/lib/server'
++ SET_EXECUTABLE_ORIGIN='@COMPILER_RPATH_FLAG@@PREFIX@/java/@JAVA_NAME@/lib @COMPILER_RPATH_FLAG@@PREFIX@/java/@JAVA_NAME@/lib/${JVM_VARIANT_MAIN}'
+ SET_SHARED_LIBRARY_ORIGIN="$SET_EXECUTABLE_ORIGIN"
SET_SHARED_LIBRARY_NAME='-Wl,-soname=[$]1'
SET_SHARED_LIBRARY_MAPFILE='-Wl,-version-script=[$]1'
@@ -20,7 +20,7 @@ We prefer to use explicit run paths.
# Default works for linux, might work on other platforms as well.
SHARED_LIBRARY_FLAGS='-shared'
- SET_EXECUTABLE_ORIGIN='-Wl,-rpath,\$$ORIGIN[$]1'
-+ SET_EXECUTABLE_ORIGIN='@COMPILER_RPATH_FLAG@@PREFIX@/java/@JAVA_NAME@/lib @COMPILER_RPATH_FLAG@@PREFIX@/java/@JAVA_NAME@/lib/server'
++ SET_EXECUTABLE_ORIGIN='@COMPILER_RPATH_FLAG@@PREFIX@/java/@JAVA_NAME@/lib @COMPILER_RPATH_FLAG@@PREFIX@/java/@JAVA_NAME@/lib/${JVM_VARIANT_MAIN}'
if test "x$OPENJDK_TARGET_OS" = xlinux; then
SET_EXECUTABLE_ORIGIN="$SET_EXECUTABLE_ORIGIN -Wl,--disable-new-dtags"
fi
Added files:
Index: pkgsrc/lang/openjdk21/patches/patch-make_autoconf_flags-ldflags.m4
diff -u /dev/null pkgsrc/lang/openjdk21/patches/patch-make_autoconf_flags-ldflags.m4:1.1
--- /dev/null Sun Sep 6 16:53:12 2026
+++ pkgsrc/lang/openjdk21/patches/patch-make_autoconf_flags-ldflags.m4 Sun Sep 6 16:53:12 2026
@@ -0,0 +1,15 @@
+$NetBSD: patch-make_autoconf_flags-ldflags.m4,v 1.1 2026/09/06 16:53:12 tnn Exp $
+
+We need to use zero as buildjdk if the platform lacks hotspot support.
+
+--- make/autoconf/flags-ldflags.m4.orig 2026-09-06 13:49:11.747735674 +0000
++++ make/autoconf/flags-ldflags.m4
+@@ -41,7 +41,7 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS],
+ # Setup the build toolchain
+
+ # When building a buildjdk, it's always only the server variant
+- BUILD_JVM_VARIANT_PATH=server
++ BUILD_JVM_VARIANT_PATH=$JVM_VARIANT_MAIN
+
+ FLAGS_SETUP_LDFLAGS_CPU_DEP([BUILD], [OPENJDK_BUILD_])
+
Index: pkgsrc/lang/openjdk21/patches/patch-src_hotspot_os__cpu_bsd__zero_os__bsd__zero.cpp
diff -u /dev/null pkgsrc/lang/openjdk21/patches/patch-src_hotspot_os__cpu_bsd__zero_os__bsd__zero.cpp:1.1
--- /dev/null Sun Sep 6 16:53:12 2026
+++ pkgsrc/lang/openjdk21/patches/patch-src_hotspot_os__cpu_bsd__zero_os__bsd__zero.cpp Sun Sep 6 16:53:12 2026
@@ -0,0 +1,51 @@
+$NetBSD: patch-src_hotspot_os__cpu_bsd__zero_os__bsd__zero.cpp,v 1.1 2026/09/06 16:53:12 tnn Exp $
+
+Fix zero build on NetBSD.
+
+--- src/hotspot/os_cpu/bsd_zero/os_bsd_zero.cpp.orig 2026-07-23 23:33:34.000000000 +0000
++++ src/hotspot/os_cpu/bsd_zero/os_bsd_zero.cpp
+@@ -93,7 +93,13 @@ address os::Posix::ucontext_get_pc(const ucontext_t* u
+
+ address os::Posix::ucontext_get_pc(const ucontext_t* uc) {
+ if (DecodeErrorContext) {
+-#if defined(IA32)
++#if defined(__NetBSD__) && defined(IA32)
++ return (address)uc->uc_mcontext.__gregs[_REG_EIP];
++#elif defined(__NetBSD__) && defined(AMD64)
++ return (address)uc->uc_mcontext.__gregs[_REG_RIP];
++#elif defined(__NetBSD__) && defined(AARCH64)
++ return (address)uc->uc_mcontext.__gregs[_REG_ELR];
++#elif defined(IA32)
+ return (address)uc->uc_mcontext.mc_eip;
+ #elif defined(AMD64)
+ return (address)uc->uc_mcontext.mc_rip;
+@@ -118,7 +124,13 @@ intptr_t* os::Bsd::ucontext_get_sp(const ucontext_t* u
+
+ intptr_t* os::Bsd::ucontext_get_sp(const ucontext_t* uc) {
+ if (DecodeErrorContext) {
+-#if defined(IA32)
++#if defined(__NetBSD__) && defined(IA32)
++ return (intptr_t*)uc->uc_mcontext.__gregs[_REG_ESP];
++#elif defined(__NetBSD__) && defined(AMD64)
++ return (intptr_t*)uc->uc_mcontext.__gregs[_REG_RSP];
++#elif defined(__NetBSD__) && defined(AARCH64)
++ return (intptr_t*)uc->uc_mcontext.__gregs[_REG_SP];
++#elif defined(IA32)
+ return (intptr_t*)uc->uc_mcontext.mc_esp;
+ #elif defined(AMD64)
+ return (intptr_t*)uc->uc_mcontext.mc_rsp;
+@@ -139,7 +151,13 @@ intptr_t* os::Bsd::ucontext_get_fp(const ucontext_t* u
+
+ intptr_t* os::Bsd::ucontext_get_fp(const ucontext_t* uc) {
+ if (DecodeErrorContext) {
+-#if defined(IA32)
++#if defined(__NetBSD__) && defined(IA32)
++ return (intptr_t*)uc->uc_mcontext.__gregs[_REG_EBP];
++#elif defined(__NetBSD__) && defined(AMD64)
++ return (intptr_t*)uc->uc_mcontext.__gregs[_REG_RBP];
++#elif defined(__NetBSD__) && defined(AARCH64)
++ return (intptr_t*)uc->uc_mcontext.__gregs[_REG_FP];
++#elif defined(IA32)
+ return (intptr_t*)uc->uc_mcontext.mc_ebp;
+ #elif defined(AMD64)
+ return (intptr_t*)uc->uc_mcontext.mc_rbp;
Home |
Main Index |
Thread Index |
Old Index