X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=opcodes%2Fsysdep.h;h=7ddf55de62850385a83d489dae4790e6a187414b;hb=265b467340e5334a682e47a0e1b69a80c4428349;hp=57ba282ad85a150183b7f8e38a7dd9a28811a513;hpb=dabbade67e0b558a90c99f1c5173026a2c339ada;p=deliverable%2Fbinutils-gdb.git diff --git a/opcodes/sysdep.h b/opcodes/sysdep.h index 57ba282ad8..7ddf55de62 100644 --- a/opcodes/sysdep.h +++ b/opcodes/sysdep.h @@ -1,5 +1,5 @@ /* Random host-dependent support code. - Copyright 1995, 1997, 2000, 2007 Free Software Foundation, Inc. + Copyright (C) 1995-2020 Free Software Foundation, Inc. Written by Ken Raeburn. This file is part of the GNU opcodes library. @@ -27,6 +27,10 @@ trying to replace often did that. If it can be dropped from this file (check in a non-ANSI environment!), it should be. */ +#ifdef PACKAGE +#error sysdep.h must be included in lieu of config.h +#endif + #include "config.h" #include "ansidecl.h" @@ -35,6 +39,10 @@ #include #endif +#ifdef STRING_WITH_STRINGS +#include +#include +#else #ifdef HAVE_STRING_H #include #else @@ -42,7 +50,24 @@ #include #endif #endif +#endif #if !HAVE_DECL_STPCPY extern char *stpcpy (char *__dest, const char *__src); #endif + +#define opcodes_error_handler _bfd_error_handler + +/* 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