[PATCH v4] Destructor support for C++11 thread_local variables
Siddhesh Poyarekar
siddhesh@redhat.com
Tue Oct 30 14:39:00 GMT 2012
My test run completed and I realized that I had got to sort order wrong
in the abilist files. Here's the updated patch.
Siddhesh
On Tue, 30 Oct 2012 19:36:03 +0530, Siddhesh wrote:
> ChangeLog:
> 2012-10-30 Siddhesh Poyarekar <siddhesh@redhat.com>
>
> * include/link.h (struct link_map): New member
> l_tls_dtor_count.
> * include/stdlib.h (__cxa_thread_atexit_impl): Declare.
> (__call_tls_dtors): Likewise.
> * sysdeps/unix/sysv/linux/i386/nptl/libc.abilist: Add
> __cxa_thread_atexit_impl.
> *
> sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist:
> Likewise.
> * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc.abilist:
> Likewise.
> * sysdeps/unix/sysv/linux/s390/s390-32/nptl/libc.abilist:
> Likewise.
> * sysdeps/unix/sysv/linux/s390/s390-64/nptl/libc.abilist:
> Likewise.
> * sysdeps/unix/sysv/linux/sh/nptl/libc.abilist: Likewise.
> * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libc.abilist:
> Likewise.
> * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libc.abilist:
> Likewise.
> * sysdeps/unix/sysv/linux/x86_64/64/nptl/libc.abilist:
> Likewise.
> * sysdeps/unix/sysv/linux/x86_64/x32/nptl/libc.abilist:
> Likewise.
> * stdlib/Makefile (routines): Add __cxa_thread_atexit_impl.
> (tests): Add test case tst-tls-atexit.
> (modules-names): Add shared library for tst-tls-atexit.
> * stdlib/Versions (GLIBC_2.17): Add __cxa_thread_atexit_impl.
> (GLIBC_PRIVATE): Add __call_tls_dtors.
> * stdlib/cxa_thread_atexit_impl.c: New file with helper
> function for libstdc++.
> * stdlib/exit.c (__run_exit_handlers): Call __call_tls_dtors.
> * stdlib/tst-tls-atexit.c: New test case.
> * stdlib/tst-tls-atexit-lib.c: New test case.
>
>
> ChangeLog.alpha:
> 2012-10-30 Siddhesh Poyarekar <siddhesh@redhat.com>
>
> * sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist: Add
> __cxa_thread_atexit_impl.
>
>
> ChangeLog.arm:
> 2012-10-30 Siddhesh Poyarekar <siddhesh@redhat.com>
>
> * sysdeps/unix/sysv/linux/arm/nptl/libc.abilist: Add
> __cxa_thread_atexit_impl.
>
>
> ChangeLog.ia64:
> 2012-10-30 Siddhesh Poyarekar <siddhesh@redhat.com>
>
> * sysdeps/unix/sysv/linux/ia64/nptl/libc.abilist: Add
> __cxa_thread_atexit_impl.
>
>
> ChangeLog.m68k:
> 2012-10-30 Siddhesh Poyarekar <siddhesh@redhat.com>
>
> * sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libc.abilist: Add
> __cxa_thread_atexit_impl.
> * sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libc.abilist:
> Likewise.
>
>
> ChangeLog.mips:
> 2012-10-30 Siddhesh Poyarekar <siddhesh@redhat.com>
>
> * sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist: Add
> __cxa_thread_atexit_impl.
> * sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist:
> Likewise.
> * sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libc.abilist:
> Likewise.
>
>
> ChangeLog.powerpc:
> 2012-10-30 Siddhesh Poyarekar <siddhesh@redhat.com>
>
> *
> sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist:
> Add __cxa_thread_atexit_impl.
> *
> sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist:
> Likewise.
>
>
> ChangeLog.tile:
> 2012-10-30 Siddhesh Poyarekar <siddhesh@redhat.com>
>
> *
> sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist: Add
> __cxa_thread_atexit_impl.
> * sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist:
> Likewise.
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: thread-local-3.patch
Type: text/x-patch
Size: 22253 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20121030/b1fb6179/attachment.bin>
More information about the Libc-alpha
mailing list