diff options
author | aph <aph@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-06-03 16:13:22 +0000 |
---|---|---|
committer | aph <aph@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-06-03 16:13:22 +0000 |
commit | 33c3c686c76172118370066481a9809472381690 (patch) | |
tree | 8e507c8788c16f77b2599f76c0abb6adfd9a6ed2 /libjava/include | |
parent | 872998df8d4e15dada56f3843aeff14972e5bdf0 (diff) | |
download | gcc-33c3c686c76172118370066481a9809472381690.tar.gz |
2003-06-03 Andrew Haley <aph@redhat.com>
* include/x86_64-signal.h (MAKE_THROW_FRAME): Mark sigcontext on
stack volatile to prevent optimization from removing it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@67379 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/include')
-rw-r--r-- | libjava/include/x86_64-signal.h | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/libjava/include/x86_64-signal.h b/libjava/include/x86_64-signal.h index b5bb8236f10..54095a96df3 100644 --- a/libjava/include/x86_64-signal.h +++ b/libjava/include/x86_64-signal.h @@ -21,7 +21,7 @@ details. */ #define HANDLE_SEGV 1 #define SIGNAL_HANDLER(_name) \ -static void _Jv_##_name (int, siginfo_t *_sip, void *_p) +static void _Jv_##_name (int, siginfo_t *, void *_p) extern "C" { @@ -34,16 +34,16 @@ extern "C" }; } -#define MAKE_THROW_FRAME(_exception) \ -do \ -{ \ - /* Advance the program counter so that it is after the start of the \ - instruction: the x86_64 exception handler expects \ - the PC to point to the instruction after a call. */ \ - struct ucontext *_uc = (struct ucontext *)_p; \ - struct sigcontext *_sc = (struct sigcontext *) &_uc->uc_mcontext; \ - _sc->rip += 2; \ -} \ +#define MAKE_THROW_FRAME(_exception) \ +do \ +{ \ + /* Advance the program counter so that it is after the start of the \ + instruction: the x86_64 exception handler expects \ + the PC to point to the instruction after a call. */ \ + struct ucontext *_uc = (struct ucontext *)_p; \ + volatile struct sigcontext *_sc = (struct sigcontext *) &_uc->uc_mcontext; \ + _sc->rip += 2; \ +} \ while (0) #define RESTORE(name, syscall) RESTORE2 (name, syscall) |