changeset 19610:2073a59a2787

8023786: (jdk) setjmp/longjmp changes the process signal mask on OS X Reviewed-by: dholmes
author sla
date Thu, 29 Aug 2013 11:22:44 +0200
parents 108f52a7438f
children 0c8d4fbae4f2
files jdk/src/share/back/SDE.c jdk/src/share/native/common/check_code.c
diffstat 2 files changed, 12 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/jdk/src/share/back/SDE.c	Wed Aug 28 22:11:14 2013 +0200
+++ b/jdk/src/share/back/SDE.c	Thu Aug 29 11:22:44 2013 +0200
@@ -28,6 +28,12 @@
 #include "util.h"
 #include "SDE.h"
 
+#ifdef __APPLE__
+/* use setjmp/longjmp versions that do not save/restore the signal mask */
+#define setjmp _setjmp
+#define longjmp _longjmp
+#endif
+
 /**
  * This SourceDebugExtension code does not
  * allow concurrent translation - due to caching method.
--- a/jdk/src/share/native/common/check_code.c	Wed Aug 28 22:11:14 2013 +0200
+++ b/jdk/src/share/native/common/check_code.c	Thu Aug 29 11:22:44 2013 +0200
@@ -90,6 +90,12 @@
 #include "classfile_constants.h"
 #include "opcodes.in_out"
 
+#ifdef __APPLE__
+/* use setjmp/longjmp versions that do not save/restore the signal mask */
+#define setjmp _setjmp
+#define longjmp _longjmp
+#endif
+
 #define MAX_ARRAY_DIMENSIONS 255
 /* align byte code */
 #ifndef ALIGN_UP