1 // default-signal.h - Catch runtime signals and turn them into exceptions.
2 
3 /* Copyright (C) 1998, 1999, 2000  Free Software Foundation
4 
5    This file is part of libgcj.
6 
7 This software is copyrighted work licensed under the terms of the
8 Libgcj License.  Please consult the file "LIBGCJ_LICENSE" for
9 details.  */
10 
11 #ifndef JAVA_SIGNAL_H
12 #define JAVA_SIGNAL_H 1
13 
14 #ifdef SJLJ_EXCEPTIONS
15 
16 #define HANDLE_SEGV 1
17 #define HANDLE_FPE 1
18 
19 #include <signal.h>
20 
21 #define SIGNAL_HANDLER(_name)			\
22 static void _name (int _dummy)
23 
24 #define INIT_SEGV						\
25 do								\
26   {								\
27     signal (SIGSEGV, catch_segv);				\
28   }								\
29 while (0)
30 
31 #define INIT_FPE						\
32 do								\
33   {								\
34     signal (SIGFPE, catch_fpe);					\
35   }								\
36 while (0)
37 
38 #define MAKE_THROW_FRAME(_exception)  do {} while (0)
39 
40 #else /* SJLJ_EXCEPTIONS */
41 
42 #undef HANDLE_SEGV
43 #undef HANDLE_FPE
44 
45 #define INIT_SEGV   do {} while (0)
46 #define INIT_FPE   do {} while (0)
47 
48 #endif /* SJLJ_EXCEPTIONS */
49 
50 #endif /* JAVA_SIGNAL_H */
51 
52