diff options
Diffstat (limited to 'binutils-2.25/opcodes/sysdep.h')
-rw-r--r-- | binutils-2.25/opcodes/sysdep.h | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/binutils-2.25/opcodes/sysdep.h b/binutils-2.25/opcodes/sysdep.h index b09d19eb..84811f16 100644 --- a/binutils-2.25/opcodes/sysdep.h +++ b/binutils-2.25/opcodes/sysdep.h @@ -1,5 +1,5 @@ /* Random host-dependent support code. - Copyright 1995, 1997, 2000, 2005, 2007, 2012 Free Software Foundation, Inc. + Copyright (C) 1995-2014 Free Software Foundation, Inc. Written by Ken Raeburn. This file is part of the GNU opcodes library. @@ -55,3 +55,17 @@ #if !HAVE_DECL_STPCPY extern char *stpcpy (char *__dest, const char *__src); #endif + +/* Use sigsetjmp/siglongjmp without saving the signal mask if possible. + It is faster than setjmp/longjmp on systems where the signal mask is + saved. */ + +#if defined(HAVE_SIGSETJMP) +#define OPCODES_SIGJMP_BUF sigjmp_buf +#define OPCODES_SIGSETJMP(buf) sigsetjmp((buf), 0) +#define OPCODES_SIGLONGJMP(buf,val) siglongjmp((buf), (val)) +#else +#define OPCODES_SIGJMP_BUF jmp_buf +#define OPCODES_SIGSETJMP(buf) setjmp(buf) +#define OPCODES_SIGLONGJMP(buf,val) longjmp((buf), (val)) +#endif |