diff options
Diffstat (limited to 'libgcc')
-rw-r--r-- | libgcc/ChangeLog | 5 | ||||
-rw-r--r-- | libgcc/config/i386/crtfastmath.c | 20 |
2 files changed, 5 insertions, 20 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index d128b08a8ad..e2b28ee2c4d 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,8 @@ +2014-04-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * config/i386/crtfastmath.c [!__x86_64__ && __sun__ && __svr4__] + (sigill_caught, sigill_hdlr): Remove. + 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> * config/i386/crtfastmath.c (set_fast_math): Remove SSE execution diff --git a/libgcc/config/i386/crtfastmath.c b/libgcc/config/i386/crtfastmath.c index 24a08843286..67b37eea56f 100644 --- a/libgcc/config/i386/crtfastmath.c +++ b/libgcc/config/i386/crtfastmath.c @@ -31,26 +31,6 @@ #include "cpuid.h" #endif -#if !defined __x86_64__ && defined __sun__ && defined __svr4__ -#include <signal.h> -#include <ucontext.h> - -static volatile sig_atomic_t sigill_caught; - -static void -sigill_hdlr (int sig __attribute((unused)), - siginfo_t *sip __attribute__((unused)), - ucontext_t *ucp) -{ - sigill_caught = 1; - /* Set PC to the instruction after the faulting one to skip over it, - otherwise we enter an infinite loop. 3 is the size of the movaps - instruction. */ - ucp->uc_mcontext.gregs[EIP] += 3; - setcontext (ucp); -} -#endif - static void __attribute__((constructor)) #ifndef __x86_64__ /* The i386 ABI only requires 4-byte stack alignment, so this is necessary |