diff options
author | danglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-12-09 21:31:49 +0000 |
---|---|---|
committer | danglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-12-09 21:31:49 +0000 |
commit | 20881312386a41806c79d3e25baed96aef3e42a3 (patch) | |
tree | c94f37ec30185e17faa6b719270647b7d590a4d8 /libjava | |
parent | 163052a2aeca5bef1d0847547bfde7fc99356734 (diff) | |
download | gcc-20881312386a41806c79d3e25baed96aef3e42a3.tar.gz |
* include/pa-signal.h: Do not include ucontext.h.
(SIGNAL_HANDLER): Add __attribute__ ((unused)) to signal handler
arguments.
(MAKE_THROW_FRAME): Do not adjust program counter.
* include/hppa-signal.h: Do not include sys/types.h, sys/syscall.h and
unistd.h.
(MAKE_THROW_FRAME): Do not adjust program counter.
(HANDLE_FPE): Define.
(INIT_SEGV, INIT_FPE): Revise indentation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@155116 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava')
-rw-r--r-- | libjava/ChangeLog | 12 | ||||
-rw-r--r-- | libjava/include/hppa-signal.h | 77 | ||||
-rw-r--r-- | libjava/include/pa-signal.h | 24 |
3 files changed, 47 insertions, 66 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 632d66a93e5..adef8782f74 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,15 @@ +2009-12-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> + + * include/pa-signal.h: Do not include ucontext.h. + (SIGNAL_HANDLER): Add __attribute__ ((unused)) to signal handler + arguments. + (MAKE_THROW_FRAME): Do not adjust program counter. + * include/hppa-signal.h: Do not include sys/types.h, sys/syscall.h and + unistd.h. + (MAKE_THROW_FRAME): Do not adjust program counter. + (HANDLE_FPE): Define. + (INIT_SEGV, INIT_FPE): Revise indentation. + 2009-12-09 Bryce McKinlay <bmckinlay@gmail.com> PR java/41991 diff --git a/libjava/include/hppa-signal.h b/libjava/include/hppa-signal.h index ac4cac5a5bb..116a62ee852 100644 --- a/libjava/include/hppa-signal.h +++ b/libjava/include/hppa-signal.h @@ -1,7 +1,7 @@ /* hppa-signal.h - Catch runtime signals and turn them into exceptions, on a HP-UX 11 PA system. */ -/* Copyright (C) 2006 Free Software Foundation +/* Copyright (C) 2006, 2009 Free Software Foundation This file is part of libgcj. @@ -9,60 +9,41 @@ This software is copyrighted work licensed under the terms of the Libgcj License. Please consult the file "LIBGCJ_LICENSE" for details. */ -/* This file is really more of a specification. The rest of the system - should be arranged so that this Just Works. */ - #ifndef JAVA_SIGNAL_H -# define JAVA_SIGNAL_H 1 +#define JAVA_SIGNAL_H 1 -#include <sys/types.h> #include <signal.h> -#include <sys/syscall.h> -#include <unistd.h> -# define HANDLE_SEGV 1 -# undef HANDLE_FPE +#define HANDLE_SEGV 1 +#define HANDLE_FPE 1 #define SIGNAL_HANDLER(_name) \ - static void _name (int _dummy __attribute__ ((unused)), \ - siginfo_t *_info __attribute__ ((__unused__)), \ - void *arg __attribute__ ((__unused__))) - -#define MAKE_THROW_FRAME(_exception) \ -do \ -{ \ - ucontext_t *_context = (ucontext_t *) arg; \ - (void)_dummy; \ - (void)_info; \ - mcontext_t *mc = &(_context->uc_mcontext); \ - SetSSReg (mc, ss_pcoq_head, GetSSReg (mc, ss_pcoq_tail)); \ - SetSSReg (mc, ss_pcsq_head, GetSSReg (mc, ss_pcsq_tail)); \ - /* This part is not quit right if the head pc was pointing \ - at a branch. The tail needs to be adjusted to the branch \ - target if the branch is taken. The tail space register \ - may need adjustment as well if the branch is an interspace \ - branch. */ \ - SetSSReg (mc, ss_pcoq_tail, (GetSSReg (mc, ss_pcoq_tail) + 4)); \ - \ - } \ +static void _name (int _dummy __attribute__ ((unused)), \ + siginfo_t *_info __attribute__ ((__unused__)), \ + void *arg __attribute__ ((__unused__))) + +#define MAKE_THROW_FRAME(_exception) + +#define INIT_SEGV \ +do \ + { \ + struct sigaction sa; \ + sa.sa_sigaction = catch_segv; \ + sigemptyset (&sa.sa_mask); \ + sa.sa_flags = SA_SIGINFO | SA_NODEFER; \ + sigaction (SIGSEGV, &sa, NULL); \ + } \ while (0) -# define INIT_SEGV \ - do { \ - struct sigaction sa; \ - sa.sa_sigaction = catch_segv; \ - sigemptyset (&sa.sa_mask); \ - sa.sa_flags = SA_SIGINFO | SA_NODEFER; \ - sigaction (SIGSEGV, &sa, NULL); \ - } while (0) - -# define INIT_FPE \ - do { \ - struct sigaction sa; \ - sa.sa_sigaction = catch_fpe; \ - sigemptyset (&sa.sa_mask); \ - sa.sa_flags = SA_SIGINFO | SA_NODEFER; \ - sigaction (SIGFPE, &sa, NULL); \ - } while (0) +#define INIT_FPE \ +do \ + { \ + struct sigaction sa; \ + sa.sa_sigaction = catch_fpe; \ + sigemptyset (&sa.sa_mask); \ + sa.sa_flags = SA_SIGINFO | SA_NODEFER; \ + sigaction (SIGFPE, &sa, NULL); \ + } \ +while (0) #endif /* JAVA_SIGNAL_H */ diff --git a/libjava/include/pa-signal.h b/libjava/include/pa-signal.h index 0f7c05427ab..add13251737 100644 --- a/libjava/include/pa-signal.h +++ b/libjava/include/pa-signal.h @@ -1,6 +1,6 @@ // pa-signal.h - Catch runtime signals and turn them into exceptions. -/* Copyright (C) 1998, 1999, 2000 Free Software Foundation +/* Copyright (C) 1998, 1999, 2000, 2009 Free Software Foundation This file is part of libgcj. @@ -12,29 +12,17 @@ details. */ #define JAVA_SIGNAL_H 1 #include <signal.h> -#include <ucontext.h> #include <sys/syscall.h> #define HANDLE_SEGV 1 #define HANDLE_FPE 1 -#define SIGNAL_HANDLER(_name) \ -static void _Jv_##_name (int _dummy, siginfo_t *_info, void *arg) +#define SIGNAL_HANDLER(_name) \ +static void _Jv_##_name (int _dummy __attribute__ ((unused)), \ + siginfo_t *_info __attribute__ ((__unused__)), \ + void *arg __attribute__ ((__unused__))) -#define MAKE_THROW_FRAME(_exception) \ -do \ -{ \ - struct ucontext *uc = (struct ucontext *)arg; \ - struct sigcontext *sc = &uc->uc_mcontext; \ - (void)_dummy; \ - (void)_info; \ - /* Advance the program counter so that it is after the start \ - of the instruction: the exception handler expects \ - the PC to point to the instruction after a call. */ \ - sc->sc_iaoq[0] = sc->sc_iaoq[1]; \ - sc->sc_iaoq[1] += 4; \ -} \ -while (0) +#define MAKE_THROW_FRAME(_exception) #define INIT_SEGV \ do \ |