freebsd.h (CPP_CPU64_DEFAULT_SPEC): Replace with...
authorMarius Strobl <marius@FreeBSD.org>
Tue, 22 Mar 2011 19:47:37 +0000 (19:47 +0000)
committerGerald Pfeifer <gerald@gcc.gnu.org>
Tue, 22 Mar 2011 19:47:37 +0000 (19:47 +0000)
* config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Replace with...
(FBSD_TARGET_CPU_CPP_BUILTINS): ...this.
(TARGET_GNU_TLS, TARGET_SUN_TLS): Define.

From-SVN: r171301

gcc/ChangeLog
gcc/config/sparc/freebsd.h

index 283a80ed4cfa3d75ccdc6d41938a22623f994298..e41ebc6e80be367b0e82c9d24b8a865de2ec0778 100644 (file)
@@ -1,3 +1,9 @@
+2011-03-22  Marius Strobl  <marius@FreeBSD.org>
+
+       * config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Replace with...
+       (FBSD_TARGET_CPU_CPP_BUILTINS): ...this.
+       (TARGET_GNU_TLS, TARGET_SUN_TLS): Define.
+
 2011-03-21  Georg-Johann Lay  <avr@gjlay.de>
 
        * config/avr/avr-protos.h (expand_epilogue): Change prototype
index f2fb65e33fbaaf97e1db4039e758b19f920611f4..f7e53f2962c3eafe58223fd68944dd430d9d7420 100644 (file)
@@ -24,11 +24,19 @@ along with GCC; see the file COPYING3.  If not see
   { "fbsd_dynamic_linker", FBSD_DYNAMIC_LINKER }
 
 /* FreeBSD needs the platform name (sparc64) defined.
-   Emacs needs to know if the arch is 64 or 32-bits.  */
-
-#undef  CPP_CPU64_DEFAULT_SPEC
-#define CPP_CPU64_DEFAULT_SPEC \
-  "-D__sparc64__ -D__sparc_v9__ -D__sparcv9 -D__arch64__"
+   Emacs etc needs to know if the arch is 64 or 32-bits.
+   This also selects which targets are available via -mcpu.  */
+
+#undef  FBSD_TARGET_CPU_CPP_BUILTINS
+#define FBSD_TARGET_CPU_CPP_BUILTINS()         \
+  do                                           \
+    {                                          \
+      builtin_define ("__sparc64__");          \
+      builtin_define ("__sparc__");            \
+      builtin_define ("__sparc_v9__");         \
+      builtin_define ("__sparcv9");            \
+    }                                          \
+  while (0)
 
 #undef ASM_SPEC
 #define ASM_SPEC "%{fpic|fPIC|fpie|fPIE:-K PIC} %(asm_cpu)"
@@ -152,6 +160,13 @@ along with GCC; see the file COPYING3.  If not see
 
 /* #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} "  \