Mercurial > hg > graal-jvmci-8
comparison src/share/vm/runtime/os.hpp @ 11151:5e3b6f79d280
8020701: Avoid crashes in WatcherThread
Reviewed-by: acorn, dcubed, dsimms
author | rbackman |
---|---|
date | Wed, 17 Jul 2013 13:48:15 +0200 |
parents | 59b052799158 |
children | af21010d1062 |
comparison
equal
deleted
inserted
replaced
11150:c29568b733d2 | 11151:5e3b6f79d280 |
---|---|
30 #include "runtime/extendedPC.hpp" | 30 #include "runtime/extendedPC.hpp" |
31 #include "runtime/handles.hpp" | 31 #include "runtime/handles.hpp" |
32 #include "utilities/top.hpp" | 32 #include "utilities/top.hpp" |
33 #ifdef TARGET_OS_FAMILY_linux | 33 #ifdef TARGET_OS_FAMILY_linux |
34 # include "jvm_linux.h" | 34 # include "jvm_linux.h" |
35 # include <setjmp.h> | |
35 #endif | 36 #endif |
36 #ifdef TARGET_OS_FAMILY_solaris | 37 #ifdef TARGET_OS_FAMILY_solaris |
37 # include "jvm_solaris.h" | 38 # include "jvm_solaris.h" |
39 # include <setjmp.h> | |
38 #endif | 40 #endif |
39 #ifdef TARGET_OS_FAMILY_windows | 41 #ifdef TARGET_OS_FAMILY_windows |
40 # include "jvm_windows.h" | 42 # include "jvm_windows.h" |
41 #endif | 43 #endif |
42 #ifdef TARGET_OS_FAMILY_bsd | 44 #ifdef TARGET_OS_FAMILY_bsd |
43 # include "jvm_bsd.h" | 45 # include "jvm_bsd.h" |
46 # include <setjmp.h> | |
44 #endif | 47 #endif |
45 | 48 |
46 // os defines the interface to operating system; this includes traditional | 49 // os defines the interface to operating system; this includes traditional |
47 // OS services (time, I/O) as well as other functionality with system- | 50 // OS services (time, I/O) as well as other functionality with system- |
48 // dependent code. | 51 // dependent code. |
728 | 731 |
729 // Extensions | 732 // Extensions |
730 #include "runtime/os_ext.hpp" | 733 #include "runtime/os_ext.hpp" |
731 | 734 |
732 public: | 735 public: |
736 class CrashProtectionCallback : public StackObj { | |
737 public: | |
738 virtual void call() = 0; | |
739 }; | |
733 | 740 |
734 // Platform dependent stuff | 741 // Platform dependent stuff |
735 #ifdef TARGET_OS_FAMILY_linux | 742 #ifdef TARGET_OS_FAMILY_linux |
736 # include "os_linux.hpp" | 743 # include "os_linux.hpp" |
737 # include "os_posix.hpp" | 744 # include "os_posix.hpp" |
906 int home_len, | 913 int home_len, |
907 char fileSep, | 914 char fileSep, |
908 char pathSep); | 915 char pathSep); |
909 static bool set_boot_path(char fileSep, char pathSep); | 916 static bool set_boot_path(char fileSep, char pathSep); |
910 static char** split_path(const char* path, int* n); | 917 static char** split_path(const char* path, int* n); |
918 | |
911 }; | 919 }; |
912 | 920 |
913 // Note that "PAUSE" is almost always used with synchronization | 921 // Note that "PAUSE" is almost always used with synchronization |
914 // so arguably we should provide Atomic::SpinPause() instead | 922 // so arguably we should provide Atomic::SpinPause() instead |
915 // of the global SpinPause() with C linkage. | 923 // of the global SpinPause() with C linkage. |