aboutsummaryrefslogtreecommitdiff
path: root/nptl/unwind.c
AgeCommit message (Collapse)Author
2020-01-01Update copyright dates with scripts/update-copyrights.Joseph Myers
2019-09-07Prefer https to http for gnu.org and fsf.org URLsPaul Eggert
Also, change sources.redhat.com to sourceware.org. This patch was automatically generated by running the following shell script, which uses GNU sed, and which avoids modifying files imported from upstream: sed -ri ' s,(http|ftp)(://(.*\.)?(gnu|fsf|sourceware)\.org($|[^.]|\.[^a-z])),https\2,g s,(http|ftp)(://(.*\.)?)sources\.redhat\.com($|[^.]|\.[^a-z]),https\2sourceware.org\4,g ' \ $(find $(git ls-files) -prune -type f \ ! -name '*.po' \ ! -name 'ChangeLog*' \ ! -path COPYING ! -path COPYING.LIB \ ! -path manual/fdl-1.3.texi ! -path manual/lgpl-2.1.texi \ ! -path manual/texinfo.tex ! -path scripts/config.guess \ ! -path scripts/config.sub ! -path scripts/install-sh \ ! -path scripts/mkinstalldirs ! -path scripts/move-if-change \ ! -path INSTALL ! -path locale/programs/charmap-kw.h \ ! -path po/libc.pot ! -path sysdeps/gnu/errlist.c \ ! '(' -name configure \ -execdir test -f configure.ac -o -f configure.in ';' ')' \ ! '(' -name preconfigure \ -execdir test -f preconfigure.ac ';' ')' \ -print) and then by running 'make dist-prepare' to regenerate files built from the altered files, and then executing the following to cleanup: chmod a+x sysdeps/unix/sysv/linux/riscv/configure # Omit irrelevant whitespace and comment-only changes, # perhaps from a slightly-different Autoconf version. git checkout -f \ sysdeps/csky/configure \ sysdeps/hppa/configure \ sysdeps/riscv/configure \ sysdeps/unix/sysv/linux/csky/configure # Omit changes that caused a pre-commit check to fail like this: # remote: *** error: sysdeps/powerpc/powerpc64/ppc-mcount.S: trailing lines git checkout -f \ sysdeps/powerpc/powerpc64/ppc-mcount.S \ sysdeps/unix/sysv/linux/s390/s390-64/syscall.S # Omit change that caused a pre-commit check to fail like this: # remote: *** error: sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S: last line does not end in newline git checkout -f sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S
2019-01-01Update copyright dates with scripts/update-copyrights.Joseph Myers
* All files with FSF copyright notices: Update copyright dates using scripts/update-copyrights. * locale/programs/charmap-kw.h: Regenerated. * locale/programs/locfile-kw.h: Likewise.
2018-01-01Update copyright dates with scripts/update-copyrights.Joseph Myers
* All files with FSF copyright notices: Update copyright dates using scripts/update-copyrights. * locale/programs/charmap-kw.h: Regenerated. * locale/programs/locfile-kw.h: Likewise.
2017-01-01Update copyright dates with scripts/update-copyrights.Joseph Myers
2016-01-04Update copyright dates with scripts/update-copyrights.Joseph Myers
2015-10-27Remove sysdeps/nptl/configure.ac.Joseph Myers
sysdeps/nptl/configure.ac tests for forced unwind support and the C cleanup attribute, giving errors if either is unsupported. It does nothing beyond running those two tests. Both the attribute, and _Unwind_GetCFA which is used in the forced unwind test, were added in GCC 3.3. Thus these tests are long obsolete, and this patch removes the configure fragment running them, along with associated conditionals. Tested for x86_64 and x86 (testsuite, and that installed stripped shared libraries are unchanged by the patch). * sysdeps/nptl/configure.ac: Remove file. * sysdeps/nptl/configure: Remove generated file. * configure.ac (libc_cv_forced_unwind): Do not substitute. * configure: Regenerated. * config.h.in (HAVE_FORCED_UNWIND): Remove #undef. * config.make.in (have-forced-unwind): Remove variable. * nptl/Makefile [$(have-forced-unwind) = yes]: Make code unconditional. * nptl/descr.h [HAVE_FORCED_UNWIND]: Likewise. * nptl/unwind.c [HAVE_FORCED_UNWIND]: Likewise. (__pthread_unwind) [!HAVE_FORCED_UNWIND]: Remove conditional code. * nptl/version.c [HAVE_FORCED_UNWIND]: Make code unconditional. * sysdeps/nptl/Makefile [$(have-forced-unwind) = yes]: Make code unconditional.
2015-01-02Update copyright dates with scripts/update-copyrights.Joseph Myers
2014-12-16Revert "Use pragmas rather than makefiles for necessary options for unwind ↵Roland McGrath
code." This reverts commit c324fcfe75c3976ae0b16943df00710e1d0d74f7.
2014-12-16Use pragmas rather than makefiles for necessary options for unwind code.Roland McGrath
2014-11-20NPTL: Use __libc_fatal in unwind.c.Roland McGrath
2014-02-10Use glibc_likely instead __builtin_expect.Ondřej Bílka
2014-01-01Update copyright notices with scripts/update-copyrightsAllan McRae
2013-01-02Update copyright notices with scripts/update-copyrights.Joseph Myers
2012-11-26Cast to __intptr_t before casting pointer to int64H.J. Lu
2012-03-19Cast _Unwind_GetCFA return to _Unwind_Ptr firstH.J. Lu
2012-02-09Replace FSF snail mail address with URLs.Paul Eggert
2005-12-21* sysdeps/mach/hurd/ifreq.c: Add missing #includes.Roland McGrath
2004-12-22(CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4.Ulrich Drepper
2007-07-122.5-18.1Jakub Jelinek
2004-09-02Update.Ulrich Drepper
* sysdeps/alpha/jmpbuf-unwind.h: Define __libc_unwind_longjmp. * sysdeps/i386/jmpbuf-unwind.h: Likewise * sysdeps/powerpc/jmpbuf-unwind.h: Likewise. * sysdeps/s390/jmpbuf-unwind.h: Likewise. * sysdeps/sh/jmpbuf-unwind.h: Likewise. * sysdeps/sparc/sparc32/jmpbuf-unwind.h: Likewise. * sysdeps/unix/sysv/linux/ia64/jmpbuf-unwind.h: Likewise. * sysdeps/x86_64/jmpbuf-unwind.h: Likewise. * unwind.c: Use it.
2003-12-19Update.Ulrich Drepper
2003-12-18 Ulrich Drepper <drepper@redhat.com> * tst-eintr1.c: Better error messages. * Makefile (tests): Add tst-eintr2. * tst-eintr2.c: New file. 2003-12-18 Jakub Jelinek <jakub@redhat.com> * Makefile (tests): Add tst-cancel21 and tst-cancelx21. (CFLAGS-tst-cancelx21.c): Set. * tst-cancel21.c: New test. * tst-cancelx21.c: New test. * unwind.c (FRAME_LEFT): Add adj argument. Subtract it from each comparison operand. (unwind_stop): Use _JMPBUF_CFA_UNWINDS_ADJ macro instead of _JMPBUF_CFA_UNWINDS. Adjust FRAME_LEFT invocations. * pt-longjmp.c: Include jmpbuf-unwind.h. (__pthread_cleanup_upto): Use _JMPBUF_UNWINDS_ADJ macro instead of _JMPBUF_UNWINDS. Adjust compared pointers. * init.c (__pthread_initialize_minimal_internal): Initialize pd->stackblock_size. * sysdeps/pthread/jmpbuf-unwind.h: Removed. * sysdeps/alpha/jmpbuf-unwind.h: New file. * sysdeps/i386/jmpbuf-unwind.h: New file. * sysdeps/powerpc/jmpbuf-unwind.h: New file. * sysdeps/s390/jmpbuf-unwind.h: New file. * sysdeps/sh/jmpbuf-unwind.h: New file. * sysdeps/sparc/sparc32/jmpbuf-unwind.h: New file. * sysdeps/x86_64/jmpbuf-unwind.h: New file. * sysdeps/ia64/jmpbuf-unwind.h: Include stdint.h. (_JMPBUF_CFA_UNWINDS): Remove. (_JMPBUF_CFA_UNWINDS_ADJ, _JMPBUF_UNWINDS_ADJ): Define. 2003-12-12 Jakub Jelinek <jakub@redhat.com> * Makefile (tests): Add tst-cancel20 and tst-cancelx20. (CFLAGS-tst-cancelx20.c): Set. * tst-cancel20.c: New test. * tst-cancelx20.c: New test.
2003-11-06Update.Ulrich Drepper
2003-11-05 Jakub Jelinek <jakub@redhat.com> * unwind.c (FRAME_LEFT): Define. (unwind_stop): Handle old style cleanups here. (__pthread_unwind): Handle old style cleanups only if !HAVE_FORCED_UNWIND. * Makefile (tests): Add tst-cleanup4 and tst-cleanupx4. (CFLAGS-tst-cleanupx4.c): Add -fexceptions. ($(objpfx)tst-cleanup4): Depend on $(objpfx)tst-cleanup4aux.o. ($(objpfx)tst-cleanupx4): Likewise. * tst-cleanup4.c: New test. * tst-cleanup4aux.c: New. * tst-cleanupx4.c: New test.
2003-09-04Update.Ulrich Drepper
22003-09-04 Jakub Jelinek <jakub@redhat.com> * sysdeps/generic/unwind.h (_Unwind_GetBSP): Add prototype. 003-09-03 Ulrich Drepper <drepper@redhat.com>
2003-07-31Update.Ulrich Drepper
2003-07-31 Jakub Jelinek <jakub@redhat.com> * dlfcn/dlerror.c (once): New. (dlerror): Call __libc_once. (_dlerror_run): Remove once. 2003-07-31 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext): Sync with 2.5.7 and 2.5.73 kernel changes. 2003-07-31 Jakub Jelinek <jakub@redhat.com> * dlfcn/eval.c (funcall): Add noinline attribute to shut up warnings. * elf/rtld.c (dl_main): Cast ElfW(Addr) arguments with %Zx/%Zd formats to size_t. * elf/dl-lookup.c (_dl_debug_bindings): Likewise. * elf/tst-tls6.c (do_test): Use %zd format for l_tls_modid. * elf/tst-tls8.c (do_test): Use %zd format for modid1 and modid2. * gmon/tst-sprofil.c (main): Add parens to shut up warning. * iconv/tst-iconv3.c (main): Use %td instead of %zd for pointer difference argument. * stdio-common/tst-wc-printf.c (main): Cast arguments with %C format to wint_t. * stdlib/tst-limits.c (main): For WORD_BIT and LONG_BIT, use %d format and cast expected value to int. * sysdeps/generic/libc-start.c (STATIC): Add __attribute__((always_inline) if LIBC_START_MAIN is already defined. * sysdeps/powerpc/fpu/w_sqrt.c (a_nan, a_inf): Change from uint32_t to ieee_float_shape_type. (__sqrt): Avoid type punning. * sysdeps/powerpc/fpu/w_sqrtf.c (a_nan, a_inf): Change from uint32_t to ieee_float_shape_type. (__sqrtf): Avoid type punning. * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Don't define refsym if in dl-conflict.c. * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise. * sysdeps/unix/sysv/linux/i386/semctl.c (union semun): Add __old_buf. (__new_semctl): Shut up warning. * sysdeps/unix/sysv/linux/semctl.c (union semun): Add __old_buf. (__new_semctl): Shut up warning. * sysdeps/unix/sysv/linux/shmctl.c (__new_shmctl): Wrap long lines. Change old into union of __old_shmid_ds and __old_shminfo structs. Adjust all users. * wcsmbs/wcsmbs-tst1.c (main): Cast arguments with %C format to wint_t. 2003-07-31 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/utimes.c (__utimes): Fix actime and modtime computation. * sysdeps/unix/sysv/linux/futimes.c (__futimes): Likewise. * sysdeps/posix/utimes.c (__utimes): Likewise.
2003-07-08Update.Ulrich Drepper
2003-07-08 Jakub Jelinek <jakub@redhat.com> * pthreadP.h (__pthread_unwind_next, __pthread_register_cancel, __pthread_unregister_cancel): Add prototypes and hidden_proto. * unwind.c (__pthread_unwind_next): Add hidden_def. * cleanup.c (__pthread_register_cancel, __pthread_unregister_cancel): Likewise. * sysdeps/unix/sysv/linux/i386/i486/sem_wait.S (__new_sem_wait): Use HIDDEN_JUMPTARGET to jump to __pthread_unwind. * sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S (sem_timedwait): Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_wait.S (sem_wait): Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S (sem_timedwait): Likewise. * sysdeps/unix/sysv/linux/i386/pthread_once.S (__pthread_once): Use HIDDEN_JUMPTARGET to call __pthread_register_cancel, __pthread_unregister_cancel and __pthread_unwind_next.
2003-07-03Update.Ulrich Drepper
2003-07-03 Ulrich Drepper <drepper@redhat.com> * sysdeps/pthread/librt-cancellation.c (__pthread_unwind): Remove definition. * pthreadP.h (__pthread_unwind): Add hidden_proto if used in libpthread compilation. * unwind.c (__pthread_unwind): Add hidden_def. * Versions (libpthread) [GLIBC_PRIVATE]: Add __pthread_unwind.
2003-05-31Update.Ulrich Drepper
2003-05-31 Ulrich Drepper <drepper@redhat.com> * libio/fileops.c (_IO_file_open): Don't mark as inline. * sysdeps/ia64/elf/initfini.c ((gmon_initializer): Mark with attribute used.
2003-05-16Update.Ulrich Drepper
2003-05-16 Ulrich Drepper <drepper@redhat.com> * unwind.c: Include <unistd.h>.
2003-05-09(unwind_cleanup): Print error message and then abort. This function must ↵Ulrich Drepper
never be reached.
2003-04-12Update.Ulrich Drepper
* sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h: Likewise.
2003-04-12Update.Ulrich Drepper
2003-04-11 Ulrich Drepper <drepper@redhat.com> * sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling. Remove HAVE_CANCELBUF code. Replace with code using the new initializers for unwind-based cleanup handling. * sysdeps/generic/unwind.h: Update from latest gcc version. * sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few places to allow unwind data generation. * sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times. * sysdeps/x86_64/bits/setjmp.h: Likewise. * sysdeps/sh/bits/setjmp.h: Likewise. * sysdeps/powerpc/bits/setjmp.h: Likewise. * sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise. * sysdeps/alpha/bits/setjmp.h: Likewise.