Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 12 Mar 2011 19:25:56 +0100
From:      Marius Strobl <marius@alchemy.franken.de>
To:        sparc64@freebsd.org
Subject:   TLS support [marius@freebsd.org: svn commit: r219534 - in head: contrib/gcc/config/sparc gnu/lib/libgomp gnu/lib/libstdc++ gnu/usr.bin/cc/cc_tools]
Message-ID:  <20110312182556.GD1606@alchemy.franken.de>

next in thread | raw e-mail | index | archive | help

FYI, now that with binutils 2.17.50 we finally have version supporting
Thread Local Storage on sparc64 I've implemented the necessary relocations
in rtld(1) and enabled TLS support in GCC and its use in malloc(3). Given
that meanwhile TLS otherwise became fairly standard I don't expect any
fallout from this. Should it nevertheless break anything please let me
know.

Marius

----- Forwarded message from Marius Strobl <marius@freebsd.org> -----

Delivered-To: svn-src-all@freebsd.org
From: Marius Strobl <marius@freebsd.org>
Date: Fri, 11 Mar 2011 21:24:02 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
        svn-src-head@freebsd.org
X-SVN-Group: head
Cc: 
Subject: svn commit: r219534 - in head: contrib/gcc/config/sparc
	gnu/lib/libgomp gnu/lib/libstdc++ gnu/usr.bin/cc/cc_tools
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
	user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-all>,
	<mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all>;
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-all>,
	<mailto:svn-src-all-request@freebsd.org?subject=subscribe>
Errors-To: owner-svn-src-all@freebsd.org

Author: marius
Date: Fri Mar 11 21:24:02 2011
New Revision: 219534
URL: http://svn.freebsd.org/changeset/base/219534

Log:
  Now that TLS is supported for sparc64 by both binutils 2.17.50 committed
  in r218822 and rtld(1) committed in r219533 turn on TLS support in GCC.

Modified:
  head/contrib/gcc/config/sparc/freebsd.h
  head/gnu/lib/libgomp/config.h
  head/gnu/lib/libstdc++/config.h
  head/gnu/usr.bin/cc/cc_tools/auto-host.h

Modified: head/contrib/gcc/config/sparc/freebsd.h
==============================================================================
--- head/contrib/gcc/config/sparc/freebsd.h	Fri Mar 11 21:08:02 2011	(r219533)
+++ head/contrib/gcc/config/sparc/freebsd.h	Fri Mar 11 21:24:02 2011	(r219534)
@@ -161,6 +161,13 @@ Boston, MA 02110-1301, USA.  */
 
 /* #define DWARF_OFFSET_SIZE PTR_SIZE */
 
+#ifdef HAVE_AS_TLS
+#undef TARGET_SUN_TLS
+#undef TARGET_GNU_TLS
+#define TARGET_SUN_TLS 0
+#define TARGET_GNU_TLS 1
+#endif
+
 #undef ENDFILE_SPEC
 #define ENDFILE_SPEC						\
   "%{ffast-math|funsafe-math-optimizations:crtfastmath.o%s} "	\

Modified: head/gnu/lib/libgomp/config.h
==============================================================================
--- head/gnu/lib/libgomp/config.h	Fri Mar 11 21:08:02 2011	(r219533)
+++ head/gnu/lib/libgomp/config.h	Fri Mar 11 21:24:02 2011	(r219534)
@@ -59,7 +59,7 @@
 #define HAVE_SYS_TYPES_H 1
 
 /* Define to 1 if the target supports thread-local storage. */
-#if !defined(__sparc64__) && !defined(__arm__) && !defined(__mips__)
+#if !defined(__arm__) && !defined(__mips__)
 #define HAVE_TLS 1
 #endif
 

Modified: head/gnu/lib/libstdc++/config.h
==============================================================================
--- head/gnu/lib/libstdc++/config.h	Fri Mar 11 21:08:02 2011	(r219533)
+++ head/gnu/lib/libstdc++/config.h	Fri Mar 11 21:24:02 2011	(r219534)
@@ -371,7 +371,7 @@
 /* #undef HAVE_TANL */
 
 /* Define to 1 if the target supports thread-local storage. */
-#if !defined(__sparc64__) && !defined(__arm__) && !defined(__mips__)
+#if !defined(__arm__) && !defined(__mips__)
 #define HAVE_TLS 1
 #endif
 

Modified: head/gnu/usr.bin/cc/cc_tools/auto-host.h
==============================================================================
--- head/gnu/usr.bin/cc/cc_tools/auto-host.h	Fri Mar 11 21:08:02 2011	(r219533)
+++ head/gnu/usr.bin/cc/cc_tools/auto-host.h	Fri Mar 11 21:24:02 2011	(r219534)
@@ -287,7 +287,7 @@
 
 /* Define if your assembler supports thread-local storage. */
 #ifndef USED_FOR_TARGET
-#if !defined(__sparc64__) && !defined(__arm__)
+#if !defined(__arm__)
 #define HAVE_AS_TLS 1
 #endif
 #endif
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org"

----- End forwarded message -----



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110312182556.GD1606>