From acc7443a4feb0aa098f12207f2da44c21d382e66 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Tue, 26 Jul 2016 21:32:47 +0200 Subject: deduplicate jmpbuf-unwind.h Reviewed-by: Max Filippov --- libc/sysdeps/linux/alpha/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/arc/jmpbuf-unwind.h | 6 ----- libc/sysdeps/linux/arm/jmpbuf-unwind.h | 7 +---- libc/sysdeps/linux/avr32/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/bfin/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/c6x/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/cris/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/hppa/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/ia64/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/m68k/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/metag/bits/setjmp.h | 10 ------- libc/sysdeps/linux/metag/jmpbuf-offsets.h | 7 +++++ libc/sysdeps/linux/metag/jmpbuf-unwind.h | 8 +++--- libc/sysdeps/linux/microblaze/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/mips/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/nios2/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/powerpc/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/sh/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/sparc/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/x86_64/jmpbuf-unwind.h | 1 + libc/sysdeps/linux/xtensa/jmpbuf-unwind.h | 1 + libpthread/nptl/sysdeps/alpha/jmpbuf-unwind.h | 27 ------------------- libpthread/nptl/sysdeps/arc/jmpbuf-unwind.h | 32 ---------------------- libpthread/nptl/sysdeps/arm/jmpbuf-unwind.h | 32 ---------------------- libpthread/nptl/sysdeps/i386/jmpbuf-unwind.h | 27 ------------------- libpthread/nptl/sysdeps/metag/jmpbuf-unwind.h | 35 ------------------------- libpthread/nptl/sysdeps/mips/jmpbuf-unwind.h | 26 ------------------ libpthread/nptl/sysdeps/powerpc/jmpbuf-unwind.h | 27 ------------------- libpthread/nptl/sysdeps/sh/jmpbuf-unwind.h | 27 ------------------- libpthread/nptl/sysdeps/sparc/jmpbuf-unwind.h | 27 ------------------- libpthread/nptl/sysdeps/x86_64/jmpbuf-unwind.h | 27 ------------------- libpthread/nptl/sysdeps/xtensa/jmpbuf-unwind.h | 32 ---------------------- 32 files changed, 29 insertions(+), 344 deletions(-) create mode 100644 libc/sysdeps/linux/metag/jmpbuf-offsets.h delete mode 100644 libpthread/nptl/sysdeps/alpha/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/arc/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/arm/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/i386/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/metag/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/mips/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/powerpc/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/sh/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/sparc/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/x86_64/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/xtensa/jmpbuf-unwind.h diff --git a/libc/sysdeps/linux/alpha/jmpbuf-unwind.h b/libc/sysdeps/linux/alpha/jmpbuf-unwind.h index 80fe8b37d..b14837e1a 100644 --- a/libc/sysdeps/linux/alpha/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/alpha/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include #include diff --git a/libc/sysdeps/linux/arc/jmpbuf-unwind.h b/libc/sysdeps/linux/arc/jmpbuf-unwind.h index 8c41816c5..d16506a46 100644 --- a/libc/sysdeps/linux/arc/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/arc/jmpbuf-unwind.h @@ -16,12 +16,6 @@ #include #include -/* Test if longjmp to JMPBUF would unwind the frame - containing a local variable at ADDRESS. */ -#undef _JMPBUF_UNWINDS -#define _JMPBUF_UNWINDS(jmpbuf, address, demangle) \ - ((void *) (address) < (void *) demangle (jmpbuf[__JMP_BUF_SP])) - #define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \ _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) diff --git a/libc/sysdeps/linux/arm/jmpbuf-unwind.h b/libc/sysdeps/linux/arm/jmpbuf-unwind.h index d7b49e224..44f9a1b71 100644 --- a/libc/sysdeps/linux/arm/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/arm/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include #include @@ -15,12 +16,6 @@ #include #include -/* Test if longjmp to JMPBUF would unwind the frame - containing a local variable at ADDRESS. */ -#undef _JMPBUF_UNWINDS -#define _JMPBUF_UNWINDS(jmpbuf, address, demangle) \ - ((void *) (address) < (void *) demangle (jmpbuf[__JMP_BUF_SP])) - #define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \ _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) diff --git a/libc/sysdeps/linux/avr32/jmpbuf-unwind.h b/libc/sysdeps/linux/avr32/jmpbuf-unwind.h index 5caa2ee44..f19f491ba 100644 --- a/libc/sysdeps/linux/avr32/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/avr32/jmpbuf-unwind.h @@ -5,6 +5,7 @@ * Public License. See the file "COPYING.LIB" in the main directory of this * archive for more details. */ + #include #include diff --git a/libc/sysdeps/linux/bfin/jmpbuf-unwind.h b/libc/sysdeps/linux/bfin/jmpbuf-unwind.h index bb7a374fd..26b56db5c 100644 --- a/libc/sysdeps/linux/bfin/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/bfin/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include /* Test if longjmp to JMPBUF would unwind the frame diff --git a/libc/sysdeps/linux/c6x/jmpbuf-unwind.h b/libc/sysdeps/linux/c6x/jmpbuf-unwind.h index ad2ab5979..58eb18ae7 100644 --- a/libc/sysdeps/linux/c6x/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/c6x/jmpbuf-unwind.h @@ -17,6 +17,7 @@ * along with this program; see the file COPYING.LIB. If not, see * . */ + #include #include diff --git a/libc/sysdeps/linux/cris/jmpbuf-unwind.h b/libc/sysdeps/linux/cris/jmpbuf-unwind.h index 8b75dce5c..b5950ad1f 100644 --- a/libc/sysdeps/linux/cris/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/cris/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include #include diff --git a/libc/sysdeps/linux/hppa/jmpbuf-unwind.h b/libc/sysdeps/linux/hppa/jmpbuf-unwind.h index 0590754f8..efed134cd 100644 --- a/libc/sysdeps/linux/hppa/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/hppa/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include #include diff --git a/libc/sysdeps/linux/ia64/jmpbuf-unwind.h b/libc/sysdeps/linux/ia64/jmpbuf-unwind.h index 91e2df8e7..4eb0eeae6 100644 --- a/libc/sysdeps/linux/ia64/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/ia64/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include /* Test if longjmp to JMPBUF would unwind the frame containing a local diff --git a/libc/sysdeps/linux/m68k/jmpbuf-unwind.h b/libc/sysdeps/linux/m68k/jmpbuf-unwind.h index d87ace333..c5a8886e2 100644 --- a/libc/sysdeps/linux/m68k/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/m68k/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include /* Test if longjmp to JMPBUF would unwind the frame diff --git a/libc/sysdeps/linux/metag/bits/setjmp.h b/libc/sysdeps/linux/metag/bits/setjmp.h index 8ad4b12d2..d80a355b0 100644 --- a/libc/sysdeps/linux/metag/bits/setjmp.h +++ b/libc/sysdeps/linux/metag/bits/setjmp.h @@ -28,17 +28,7 @@ */ #define _JBLEN 24 -#if defined (__USE_MISC) || defined (_ASM) -#define JB_SP 0 -#endif -#ifndef _ASM typedef int __jmp_buf[_JBLEN] __attribute__((aligned (8))); -#endif - -/* Test if longjmp to JMPBUF would unwind the frame - containing a local variable at ADDRESS. */ -#define _JMPBUF_UNWINDS(jmpbuf, address) \ - ((void *) (address) > (void *) (jmpbuf)[JB_SP]) #endif /* bits/setjmp.h */ diff --git a/libc/sysdeps/linux/metag/jmpbuf-offsets.h b/libc/sysdeps/linux/metag/jmpbuf-offsets.h new file mode 100644 index 000000000..e4faf4206 --- /dev/null +++ b/libc/sysdeps/linux/metag/jmpbuf-offsets.h @@ -0,0 +1,7 @@ +/* + * Copyright (C) 2013, Imagination Technologies Ltd. + * + * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. + */ + +#define JB_SP 0 diff --git a/libc/sysdeps/linux/metag/jmpbuf-unwind.h b/libc/sysdeps/linux/metag/jmpbuf-unwind.h index 175cd7ab0..bf791413b 100644 --- a/libc/sysdeps/linux/metag/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/metag/jmpbuf-unwind.h @@ -1,14 +1,16 @@ /* + * Copyright (C) 2013, Imagination Technologies Ltd. + * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ #include +#include /* Test if longjmp to JMPBUF would unwind the frame containing a local variable at ADDRESS. */ -#undef _JMPBUF_UNWINDS -#define _JMPBUF_UNWINDS(jmpbuf, address, demangle) \ - ((void *) (address) > (void *) demangle (jmpbuf[JB_SP])) +#define _JMPBUF_UNWINDS(jmpbuf, address) \ + ((void *) (address) > (void *) jmpbuf[JB_SP]) #ifdef __UCLIBC_HAS_THREADS_NATIVE__ #include diff --git a/libc/sysdeps/linux/microblaze/jmpbuf-unwind.h b/libc/sysdeps/linux/microblaze/jmpbuf-unwind.h index a24cd12f0..2c1c0793c 100644 --- a/libc/sysdeps/linux/microblaze/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/microblaze/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include /* Test if longjmp to JMPBUF would unwind the frame diff --git a/libc/sysdeps/linux/mips/jmpbuf-unwind.h b/libc/sysdeps/linux/mips/jmpbuf-unwind.h index 2c0df95f5..3242eae0c 100644 --- a/libc/sysdeps/linux/mips/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/mips/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include /* Test if longjmp to JMPBUF would unwind the frame diff --git a/libc/sysdeps/linux/nios2/jmpbuf-unwind.h b/libc/sysdeps/linux/nios2/jmpbuf-unwind.h index 64cd55fab..c22ab2409 100644 --- a/libc/sysdeps/linux/nios2/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/nios2/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include /* Test if longjmp to JMPBUF would unwind the frame diff --git a/libc/sysdeps/linux/powerpc/jmpbuf-unwind.h b/libc/sysdeps/linux/powerpc/jmpbuf-unwind.h index 54322b805..d650b3230 100644 --- a/libc/sysdeps/linux/powerpc/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/powerpc/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include #include diff --git a/libc/sysdeps/linux/sh/jmpbuf-unwind.h b/libc/sysdeps/linux/sh/jmpbuf-unwind.h index 8875cc1c8..34977df6b 100644 --- a/libc/sysdeps/linux/sh/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/sh/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include /* Test if longjmp to JMPBUF would unwind the frame diff --git a/libc/sysdeps/linux/sparc/jmpbuf-unwind.h b/libc/sysdeps/linux/sparc/jmpbuf-unwind.h index 90efb7719..31449d8d4 100644 --- a/libc/sysdeps/linux/sparc/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/sparc/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include #include diff --git a/libc/sysdeps/linux/x86_64/jmpbuf-unwind.h b/libc/sysdeps/linux/x86_64/jmpbuf-unwind.h index 152587222..b3f39b524 100644 --- a/libc/sysdeps/linux/x86_64/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/x86_64/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include #include diff --git a/libc/sysdeps/linux/xtensa/jmpbuf-unwind.h b/libc/sysdeps/linux/xtensa/jmpbuf-unwind.h index 4516d9398..13161e915 100644 --- a/libc/sysdeps/linux/xtensa/jmpbuf-unwind.h +++ b/libc/sysdeps/linux/xtensa/jmpbuf-unwind.h @@ -3,6 +3,7 @@ * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. */ + #include #include diff --git a/libpthread/nptl/sysdeps/alpha/jmpbuf-unwind.h b/libpthread/nptl/sysdeps/alpha/jmpbuf-unwind.h deleted file mode 100644 index 2f64e7d7c..000000000 --- a/libpthread/nptl/sysdeps/alpha/jmpbuf-unwind.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright (C) 2003, 2004 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jakub Jelinek , 2003. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include -#include -#include - -#define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \ - _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) - -#define _JMPBUF_UNWINDS_ADJ(_jmpbuf, _address, _adj) \ - ((uintptr_t) (_address) - (_adj) < (uintptr_t) (_jmpbuf)[JB_SP] - (_adj)) diff --git a/libpthread/nptl/sysdeps/arc/jmpbuf-unwind.h b/libpthread/nptl/sysdeps/arc/jmpbuf-unwind.h deleted file mode 100644 index 11a043b23..000000000 --- a/libpthread/nptl/sysdeps/arc/jmpbuf-unwind.h +++ /dev/null @@ -1,32 +0,0 @@ -/* Copyright (C) 2005,2006 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include -#include -#include - -/* Test if longjmp to JMPBUF would unwind the frame - containing a local variable at ADDRESS. */ -#undef _JMPBUF_UNWINDS -#define _JMPBUF_UNWINDS(jmpbuf, address, demangle) \ - ((void *) (address) < (void *) demangle (jmpbuf[__JMP_BUF_SP])) - -#define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \ - _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) - -#define _JMPBUF_UNWINDS_ADJ(_jmpbuf, _address, _adj) \ - ((uintptr_t) (_address) - (_adj) < (uintptr_t) (_jmpbuf)[__JMP_BUF_SP] - (_adj)) diff --git a/libpthread/nptl/sysdeps/arm/jmpbuf-unwind.h b/libpthread/nptl/sysdeps/arm/jmpbuf-unwind.h deleted file mode 100644 index 11a043b23..000000000 --- a/libpthread/nptl/sysdeps/arm/jmpbuf-unwind.h +++ /dev/null @@ -1,32 +0,0 @@ -/* Copyright (C) 2005,2006 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include -#include -#include - -/* Test if longjmp to JMPBUF would unwind the frame - containing a local variable at ADDRESS. */ -#undef _JMPBUF_UNWINDS -#define _JMPBUF_UNWINDS(jmpbuf, address, demangle) \ - ((void *) (address) < (void *) demangle (jmpbuf[__JMP_BUF_SP])) - -#define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \ - _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) - -#define _JMPBUF_UNWINDS_ADJ(_jmpbuf, _address, _adj) \ - ((uintptr_t) (_address) - (_adj) < (uintptr_t) (_jmpbuf)[__JMP_BUF_SP] - (_adj)) diff --git a/libpthread/nptl/sysdeps/i386/jmpbuf-unwind.h b/libpthread/nptl/sysdeps/i386/jmpbuf-unwind.h deleted file mode 100644 index 2f64e7d7c..000000000 --- a/libpthread/nptl/sysdeps/i386/jmpbuf-unwind.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright (C) 2003, 2004 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jakub Jelinek , 2003. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include -#include -#include - -#define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \ - _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) - -#define _JMPBUF_UNWINDS_ADJ(_jmpbuf, _address, _adj) \ - ((uintptr_t) (_address) - (_adj) < (uintptr_t) (_jmpbuf)[JB_SP] - (_adj)) diff --git a/libpthread/nptl/sysdeps/metag/jmpbuf-unwind.h b/libpthread/nptl/sysdeps/metag/jmpbuf-unwind.h deleted file mode 100644 index b3da6bd74..000000000 --- a/libpthread/nptl/sysdeps/metag/jmpbuf-unwind.h +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright (C) 2003, 2004 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jakub Jelinek , 2003. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, see .  */ - -#include -#include -#include - -/* Test if longjmp to JMPBUF would unwind the frame - containing a local variable at ADDRESS. */ -#undef _JMPBUF_UNWINDS -#define _JMPBUF_UNWINDS(jmpbuf, address, demangle) \ - ((void *) (address) > (void *) demangle (jmpbuf[JB_SP])) - -#define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \ - _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) - -#define _JMPBUF_UNWINDS_ADJ(_jmpbuf, _address, _adj) \ - ((uintptr_t) (_address) - (_adj) > (uintptr_t) (_jmpbuf)[JB_SP] - (_adj)) - -#define __libc_unwind_longjmp(buf, val) __libc_longjmp (buf, val) diff --git a/libpthread/nptl/sysdeps/mips/jmpbuf-unwind.h b/libpthread/nptl/sysdeps/mips/jmpbuf-unwind.h deleted file mode 100644 index 9739efd28..000000000 --- a/libpthread/nptl/sysdeps/mips/jmpbuf-unwind.h +++ /dev/null @@ -1,26 +0,0 @@ -/* Copyright (C) 2003, 2005 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include -#include -#include - -#define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \ - _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) - -#define _JMPBUF_UNWINDS_ADJ(_jmpbuf, _address, _adj) \ - ((uintptr_t) (_address) - (_adj) < (uintptr_t) (_jmpbuf)[0].__sp - (_adj)) diff --git a/libpthread/nptl/sysdeps/powerpc/jmpbuf-unwind.h b/libpthread/nptl/sysdeps/powerpc/jmpbuf-unwind.h deleted file mode 100644 index 4a88b04a9..000000000 --- a/libpthread/nptl/sysdeps/powerpc/jmpbuf-unwind.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright (C) 2003, 2004 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jakub Jelinek , 2003. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include -#include -#include - -#define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \ - _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) - -#define _JMPBUF_UNWINDS_ADJ(_jmpbuf, _address, _adj) \ - ((uintptr_t) (_address) - (_adj) < (uintptr_t) (_jmpbuf)[JB_GPR1] - (_adj)) diff --git a/libpthread/nptl/sysdeps/sh/jmpbuf-unwind.h b/libpthread/nptl/sysdeps/sh/jmpbuf-unwind.h deleted file mode 100644 index 2f7f8526a..000000000 --- a/libpthread/nptl/sysdeps/sh/jmpbuf-unwind.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright (C) 2003, 2004 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jakub Jelinek , 2003. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include -#include -#include - -#define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \ - _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) - -#define _JMPBUF_UNWINDS_ADJ(jmpbuf, address, adj) \ - ((uintptr_t) (address) - (adj) < (uintptr_t) (jmpbuf)[0].__regs[7] - (adj)) diff --git a/libpthread/nptl/sysdeps/sparc/jmpbuf-unwind.h b/libpthread/nptl/sysdeps/sparc/jmpbuf-unwind.h deleted file mode 100644 index 2f64e7d7c..000000000 --- a/libpthread/nptl/sysdeps/sparc/jmpbuf-unwind.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright (C) 2003, 2004 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jakub Jelinek , 2003. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include -#include -#include - -#define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \ - _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) - -#define _JMPBUF_UNWINDS_ADJ(_jmpbuf, _address, _adj) \ - ((uintptr_t) (_address) - (_adj) < (uintptr_t) (_jmpbuf)[JB_SP] - (_adj)) diff --git a/libpthread/nptl/sysdeps/x86_64/jmpbuf-unwind.h b/libpthread/nptl/sysdeps/x86_64/jmpbuf-unwind.h deleted file mode 100644 index 304bf85e5..000000000 --- a/libpthread/nptl/sysdeps/x86_64/jmpbuf-unwind.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright (C) 2003, 2004 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jakub Jelinek , 2003. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include -#include -#include - -#define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \ - _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) - -#define _JMPBUF_UNWINDS_ADJ(_jmpbuf, _address, _adj) \ - ((uintptr_t) (_address) - (_adj) < (uintptr_t) (_jmpbuf)[JB_RSP] - (_adj)) diff --git a/libpthread/nptl/sysdeps/xtensa/jmpbuf-unwind.h b/libpthread/nptl/sysdeps/xtensa/jmpbuf-unwind.h deleted file mode 100644 index bda498b8a..000000000 --- a/libpthread/nptl/sysdeps/xtensa/jmpbuf-unwind.h +++ /dev/null @@ -1,32 +0,0 @@ -/* Copyright (C) 2005,2006 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include -#include -#include - -/* Test if longjmp to JMPBUF would unwind the frame - containing a local variable at ADDRESS. */ -#undef _JMPBUF_UNWINDS -#define _JMPBUF_UNWINDS(jmpbuf, address, demangle) \ - ((void *) (address) < (void *) demangle (jmpbuf[JB_SP])) - -#define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \ - _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) - -#define _JMPBUF_UNWINDS_ADJ(_jmpbuf, _address, _adj) \ - ((uintptr_t) (_address) - (_adj) < (uintptr_t) (_jmpbuf)[JB_SP] - (_adj)) -- cgit v1.2.3