Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src Implement __cxa_thread_atexit and __cxa_thread_atexit_impl. ...



details:   https://anonhg.NetBSD.org/src/rev/db99d438c20f
branches:  trunk
changeset: 825360:db99d438c20f
user:      joerg <joerg%NetBSD.org@localhost>
date:      Tue Jul 11 15:21:31 2017 +0000

description:
Implement __cxa_thread_atexit and __cxa_thread_atexit_impl. This
functions are used for destructors of thread_local objects.

If a pending destructor exists, prevent unloading of shared objects.
Introduce __dl_cxa_refcount interface for this purpose. When the last
reference is gone and the object has been dlclose'd before, the
unloading is finalized.

Ideally, __cxa_thread_atexit_impl wouldn't exist, but libstdc++ insists
on providing __cxa_thread_atexit as direct wrapper without further
patching.

diffstat:

 distrib/sets/lists/debug/mi                                    |   3 +-
 distrib/sets/lists/debug/shl.mi                                |   4 +-
 distrib/sets/lists/tests/mi                                    |   6 +-
 distrib/sets/lists/tests/shl.mi                                |   4 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/alpha/c++config.h      |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/arm/c++config.h        |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/armeb/c++config.h      |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/coldfire/c++config.h   |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/earm/c++config.h       |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/earmeb/c++config.h     |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/earmhf/c++config.h     |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/earmhfeb/c++config.h   |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/earmv4/c++config.h     |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/earmv4eb/c++config.h   |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6/c++config.h     |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6eb/c++config.h   |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6hf/c++config.h   |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6hfeb/c++config.h |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/earmv7/c++config.h     |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/earmv7eb/c++config.h   |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/earmv7hf/c++config.h   |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/earmv7hfeb/c++config.h |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/hppa/c++config.h       |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/i386/c++config.h       |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/ia64/c++config.h       |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/m68000/c++config.h     |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/m68k/c++config.h       |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/mips64eb/c++config.h   |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/mips64el/c++config.h   |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/mipseb/c++config.h     |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/mipsel/c++config.h     |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/or1k/c++config.h       |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/powerpc/c++config.h    |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/powerpc64/c++config.h  |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/riscv32/c++config.h    |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/riscv64/c++config.h    |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/sh3eb/c++config.h      |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/sh3el/c++config.h      |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/sparc/c++config.h      |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/sparc64/c++config.h    |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/vax/c++config.h        |   2 +-
 external/gpl3/gcc/lib/libstdc++-v3/arch/x86_64/c++config.h     |   2 +-
 include/dlfcn.h                                                |   9 +-
 lib/libc/dlfcn/dlfcn_elf.c                                     |  13 +-
 lib/libc/include/atexit.h                                      |  41 ++++
 lib/libc/stdlib/Makefile.inc                                   |   4 +-
 lib/libc/stdlib/atexit.h                                       |  33 ---
 lib/libc/stdlib/cxa_thread_atexit.c                            |  88 +++++++++
 lib/libc/stdlib/exit.c                                         |   9 +-
 lib/libpthread/pthread.c                                       |   9 +-
 libexec/ld.elf_so/rtld.c                                       |  43 ++++-
 libexec/ld.elf_so/rtld.h                                       |   4 +-
 libexec/ld.elf_so/symbols.map                                  |   1 +
 tests/lib/libpthread/Makefile                                  |   8 +-
 tests/lib/libpthread/h_thread_local_dtor.cpp                   |  80 ++++++++
 tests/lib/libpthread/t_thread_local_dtor.sh                    |  41 ++++
 tests/libexec/ld.elf_so/Makefile                               |   9 +-
 tests/libexec/ld.elf_so/h_thread_local_dtor.c                  |  92 ++++++++++
 tests/libexec/ld.elf_so/helper_dso3/Makefile                   |  22 ++
 tests/libexec/ld.elf_so/helper_dso3/h_helper_dso3.cpp          |  46 +++++
 tests/libexec/ld.elf_so/t_thread_local_dtor.sh                 |  54 +++++
 61 files changed, 608 insertions(+), 91 deletions(-)

diffs (truncated from 1406 to 300 lines):

diff -r 6cb4c913851d -r db99d438c20f distrib/sets/lists/debug/mi
--- a/distrib/sets/lists/debug/mi       Tue Jul 11 14:00:15 2017 +0000
+++ b/distrib/sets/lists/debug/mi       Tue Jul 11 15:21:31 2017 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.218 2017/06/09 06:09:01 knakahara Exp $
+# $NetBSD: mi,v 1.219 2017/07/11 15:21:31 joerg Exp $
 ./etc/mtree/set.debug                           comp-sys-root
 ./usr/lib                                      comp-sys-usr            compatdir
 ./usr/lib/i18n/libBIG5_g.a                     comp-c-debuglib         debuglib,compatfile
@@ -2197,6 +2197,7 @@
 ./usr/libdata/debug/usr/tests/lib/libpthread/h_cancel.debug            tests-lib-tests         debug,atf,compattestfile
 ./usr/libdata/debug/usr/tests/lib/libpthread/h_exit.debug              tests-lib-tests         debug,atf,compattestfile
 ./usr/libdata/debug/usr/tests/lib/libpthread/h_resolv.debug            tests-lib-tests         debug,atf,compattestfile
+./usr/libdata/debug/usr/tests/lib/libpthread/h_thread_local_dtor.debug tests-lib-tests         debug,atf,compattestfile
 ./usr/libdata/debug/usr/tests/lib/libpthread/t_barrier.debug           tests-lib-tests         debug,atf,compattestfile
 ./usr/libdata/debug/usr/tests/lib/libpthread/t_cond.debug              tests-lib-tests         debug,atf,compattestfile
 ./usr/libdata/debug/usr/tests/lib/libpthread/t_condwait.debug          tests-lib-tests         debug,atf,compattestfile
diff -r 6cb4c913851d -r db99d438c20f distrib/sets/lists/debug/shl.mi
--- a/distrib/sets/lists/debug/shl.mi   Tue Jul 11 14:00:15 2017 +0000
+++ b/distrib/sets/lists/debug/shl.mi   Tue Jul 11 15:21:31 2017 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: shl.mi,v 1.177 2017/06/15 16:00:57 christos Exp $
+# $NetBSD: shl.mi,v 1.178 2017/07/11 15:21:31 joerg Exp $
 ./usr/lib/libbfd_g.a                                           comp-c-debuglib debuglib,compatfile,binutils
 ./usr/libdata/debug/lib                                                base-sys-usr    debug,dynamicroot,compatdir
 ./usr/libdata/debug/lib/libblacklist.so.0.0.debug              comp-sys-debug  debug,dynamicroot
@@ -307,8 +307,10 @@
 ./usr/libdata/debug/usr/tests/libexec/ld.elf_so/h_helper_symver_dso0/libh_helper_symver_dso.so.1.debug tests-libexec-debug     debug,compattestfile,atf
 ./usr/libdata/debug/usr/tests/libexec/ld.elf_so/h_helper_symver_dso1/libh_helper_symver_dso.so.1.debug tests-libexec-debug     debug,compattestfile,atf
 ./usr/libdata/debug/usr/tests/libexec/ld.elf_so/h_helper_symver_dso2/libh_helper_symver_dso.so.1.debug tests-libexec-debug     debug,compattestfile,atf
+./usr/libdata/debug/usr/tests/libexec/ld.elf_so/h_thread_local_dtor    tests-libexec-debug     debug,compattestfile,atf
 ./usr/libdata/debug/usr/tests/libexec/ld.elf_so/libh_helper_dso1.so.1.debug    tests-libexec-debug     debug,compattestfile,atf
 ./usr/libdata/debug/usr/tests/libexec/ld.elf_so/libh_helper_dso2.so.1.debug    tests-libexec-debug     debug,compattestfile,atf
+./usr/libdata/debug/usr/tests/libexec/ld.elf_so/libh_helper_dso3.so.1.debug    tests-libexec-debug     debug,compattestfile,atf
 ./usr/libdata/debug/usr/tests/libexec/ld.elf_so/libh_helper_ifunc_dso.so.1.debug       tests-libexec-debug     debug,compattestfile,atf
 ./usr/tests/libexec/ld.elf_so/h_helper_symver_dso0/libh_helper_symver_dso_g.a  comp-c-debuglib atf,debuglib,compattestfile
 ./usr/tests/libexec/ld.elf_so/h_helper_symver_dso1/libh_helper_symver_dso_g.a  comp-c-debuglib atf,debuglib,compattestfile
diff -r 6cb4c913851d -r db99d438c20f distrib/sets/lists/tests/mi
--- a/distrib/sets/lists/tests/mi       Tue Jul 11 14:00:15 2017 +0000
+++ b/distrib/sets/lists/tests/mi       Tue Jul 11 15:21:31 2017 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.754 2017/07/03 06:01:16 ozaki-r Exp $
+# $NetBSD: mi,v 1.755 2017/07/11 15:21:32 joerg Exp $
 #
 # Note: don't delete entries from here - mark them as "obsolete" instead.
 #
@@ -3044,6 +3044,7 @@
 ./usr/tests/lib/libpthread/h_cancel            tests-lib-tests         compattestfile,atf
 ./usr/tests/lib/libpthread/h_exit              tests-lib-tests         compattestfile,atf
 ./usr/tests/lib/libpthread/h_resolv            tests-lib-tests         compattestfile,atf
+./usr/tests/lib/libpthread/h_thread_local_dtor tests-lib-tests         compattestfile,atf
 ./usr/tests/lib/libpthread/t_atexit            tests-lib-tests         compattestfile,atf
 ./usr/tests/lib/libpthread/t_barrier           tests-lib-tests         compattestfile,atf
 ./usr/tests/lib/libpthread/t_cancel            tests-lib-tests         compattestfile,atf
@@ -3069,6 +3070,7 @@
 ./usr/tests/lib/libpthread/t_sleep             tests-lib-tests         compattestfile,atf
 ./usr/tests/lib/libpthread/t_status            tests-obsolete          obsolete
 ./usr/tests/lib/libpthread/t_swapcontext       tests-lib-tests         compattestfile,atf
+./usr/tests/lib/libpthread/t_thread_local_dtor tests-lib-tests         compattestfile,atf
 ./usr/tests/lib/libpthread/t_timedmutex                tests-lib-tests         compattestfile,atf
 ./usr/tests/lib/libpthread_dbg                 tests-obsolete          obsolete
 ./usr/tests/lib/libpthread_dbg/Atffile         tests-obsolete          obsolete
@@ -3206,6 +3208,7 @@
 ./usr/tests/libexec/ld.elf_so/h_helper_symver_dso2     tests-libexec-tests     compattestfile,atf
 ./usr/tests/libexec/ld.elf_so/h_ifunc          tests-libexec-tests     compattestfile,atf,pic
 ./usr/tests/libexec/ld.elf_so/h_locking                tests-libexec-tests     compattestfile,atf,pic
+./usr/tests/libexec/ld.elf_so/h_thread_local_dtor      tests-libexec-tests     compattestfile,atf,pic
 ./usr/tests/libexec/ld.elf_so/t_df_1_noopen    tests-libexec-tests     compattestfile,atf,pic
 ./usr/tests/libexec/ld.elf_so/t_dl_symver      tests-libexec-tests     compattestfile,atf,pic
 ./usr/tests/libexec/ld.elf_so/t_dlerror-cleared        tests-libexec-tests     compattestfile,atf,pic
@@ -3213,6 +3216,7 @@
 ./usr/tests/libexec/ld.elf_so/t_dlinfo         tests-libexec-tests     compattestfile,atf,pic
 ./usr/tests/libexec/ld.elf_so/t_dlvsym         tests-libexec-tests     compattestfile,atf,pic
 ./usr/tests/libexec/ld.elf_so/t_ifunc          tests-libexec-tests     compattestfile,atf,pic
+./usr/tests/libexec/ld.elf_so/t_thread_local_dtor      tests-libexec-tests     compattestfile,atf,pic
 ./usr/tests/modules                            tests-sys-tests         compattestfile,atf
 ./usr/tests/net                                        tests-net-tests         compattestfile,atf
 ./usr/tests/net/Atffile                                tests-net-tests         compattestfile,atf
diff -r 6cb4c913851d -r db99d438c20f distrib/sets/lists/tests/shl.mi
--- a/distrib/sets/lists/tests/shl.mi   Tue Jul 11 14:00:15 2017 +0000
+++ b/distrib/sets/lists/tests/shl.mi   Tue Jul 11 15:21:31 2017 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: shl.mi,v 1.10 2015/06/22 06:02:02 matt Exp $
+# $NetBSD: shl.mi,v 1.11 2017/07/11 15:21:32 joerg Exp $
 #
 ./usr/tests/lib/csu/h_initfini3_dso.so         tests-lib-tests         compattestfile,atf
 ./usr/tests/lib/csu/h_initfini3_dso.so.1       tests-lib-tests         compattestfile,atf
@@ -20,6 +20,8 @@
 ./usr/tests/libexec/ld.elf_so/libh_helper_dso1.so.1                            tests-libexec-tests     compattestfile,atf
 ./usr/tests/libexec/ld.elf_so/libh_helper_dso2.so                              tests-libexec-tests     compattestfile,atf
 ./usr/tests/libexec/ld.elf_so/libh_helper_dso2.so.1                            tests-libexec-tests     compattestfile,atf
+./usr/tests/libexec/ld.elf_so/libh_helper_dso3.so                              tests-libexec-tests     compattestfile,atf
+./usr/tests/libexec/ld.elf_so/libh_helper_dso3.so.1                            tests-libexec-tests     compattestfile,atf
 ./usr/tests/libexec/ld.elf_so/libh_helper_ifunc_dso.so                         tests-libexec-tests     compattestfile,atf
 ./usr/tests/libexec/ld.elf_so/libh_helper_ifunc_dso.so.1                       tests-libexec-tests     compattestfile,atf
 ./usr/tests/util/id/libfake.so.0               tests-obsolete          obsolete
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/alpha/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/alpha/c++config.h Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/alpha/c++config.h Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/arm/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/arm/c++config.h   Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/arm/c++config.h   Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/armeb/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/armeb/c++config.h Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/armeb/c++config.h Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/coldfire/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/coldfire/c++config.h      Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/coldfire/c++config.h      Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/earm/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/earm/c++config.h  Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/earm/c++config.h  Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/earmeb/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/earmeb/c++config.h        Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/earmeb/c++config.h        Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/earmhf/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/earmhf/c++config.h        Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/earmhf/c++config.h        Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/earmhfeb/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/earmhfeb/c++config.h      Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/earmhfeb/c++config.h      Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/earmv4/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv4/c++config.h        Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv4/c++config.h        Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/earmv4eb/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv4eb/c++config.h      Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv4eb/c++config.h      Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6/c++config.h        Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6/c++config.h        Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6eb/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6eb/c++config.h      Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6eb/c++config.h      Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6hf/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6hf/c++config.h      Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6hf/c++config.h      Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6hfeb/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6hfeb/c++config.h    Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv6hfeb/c++config.h    Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/earmv7/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv7/c++config.h        Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv7/c++config.h        Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/earmv7eb/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv7eb/c++config.h      Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv7eb/c++config.h      Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const
diff -r 6cb4c913851d -r db99d438c20f external/gpl3/gcc/lib/libstdc++-v3/arch/earmv7hf/c++config.h
--- a/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv7hf/c++config.h      Tue Jul 11 14:00:15 2017 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/arch/earmv7hf/c++config.h      Tue Jul 11 15:21:31 2017 +0000
@@ -1203,7 +1203,7 @@
 /* #undef _GLIBCXX_HAVE__TANL */
 
 /* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
-/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL */
+#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
 
 /* Define as const if the declaration of iconv() needs const. */
 #define _GLIBCXX_ICONV_CONST const



Home | Main Index | Thread Index | Old Index