On 2/17/21 4:35 PM, John Baldwin wrote:
The branch main has been updated by jhb:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=24fd63e0970f91189dd2acde987bd2e4c8c04a50

commit 24fd63e0970f91189dd2acde987bd2e4c8c04a50
Author:     John Baldwin <j...@freebsd.org>
AuthorDate: 2021-02-18 00:34:23 +0000
Commit:     John Baldwin <j...@freebsd.org>
CommitDate: 2021-02-18 00:34:23 +0000

     mips: Don't set __NO_TLS to disable some uses of TLS.
__NO_TLS was originally added to disable use of _Thread in the locale
     code in libc in 82dd5016bd749d1d9e1531bd1703aebeecceab34.  At the time
     libc did not support TLS on MIPS (I believe), but TLS support was
     added to libc (at least _set_tp.c) for MIPS about a month after
     __NO_TLS was added, but __NO_TLS was still left around.
Reviewed by: imp
     Sponsored by:   DARPA
     Differential Revision:  https://reviews.freebsd.org/D28713
---
  sys/sys/cdefs.h | 3 +--
  1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/sys/sys/cdefs.h b/sys/sys/cdefs.h
index 64f26480a2f5..ff18911f6acf 100644
--- a/sys/sys/cdefs.h
+++ b/sys/sys/cdefs.h
@@ -768,8 +768,7 @@
  #endif
  #endif /* __STDC_WANT_LIB_EXT1__ */
-#if defined(__mips) || \
-    (defined(__powerpc64__) && (!defined(_CALL_ELF) || _CALL_ELF == 1))
+#if defined(__powerpc64__) && (!defined(_CALL_ELF) || _CALL_ELF == 1)
  #define       __NO_TLS 1
  #endif

It would be really nice to kill __NO_TLS entirely.  There is at least one
unconditional use of _Thread_local (sorry, should have used that instead
of _Thread above) in libc in stdlib/cxa_thread_atexit_impl.c, so it seems
highly unlikely that TLS is actually broken on any of our platforms as the
libc build would have been broken instead.

--
John Baldwin
_______________________________________________
dev-commits-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/dev-commits-src-all
To unsubscribe, send any mail to "dev-commits-src-all-unsubscr...@freebsd.org"

Reply via email to