changeset 7994:779ff9f3b2e3

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 b1f41565b806
children 5bf4f2eeee85
files src/share/back/SDE.c src/share/native/common/check_code.c
diffstat 2 files changed, 12 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/back/SDE.c	Wed Aug 28 22:11:14 2013 +0200
+++ b/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/src/share/native/common/check_code.c	Wed Aug 28 22:11:14 2013 +0200
+++ b/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