sparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0.
authorJakub Jelinek <jakub@redhat.com>
Thu, 1 Apr 2004 16:05:22 +0000 (18:05 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 1 Apr 2004 16:05:22 +0000 (18:05 +0200)
* config/sparc/sparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0.
* config/sparc/linux.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
* config/sparc/linux64.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
* config/sparc/sol2.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
(SOLARIS_CONVERSION_LIBFUNCS): Rename to SUN_CONVERSION_LIBFUNCS.
* config/sparc/sparc.c (sparc_init_libfuncs): Initialize optabs
with _Q_qtoll, _Q_qtoull and _Q_lltoq if DITF_CONVERSION_LIBFUNCS.
* config.gcc (sparc-*-linux*): Revert 2004-03-23 change.
* config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Likewise.
* config/sparc/t-linux: Removed.

From-SVN: r80295

gcc/ChangeLog
gcc/config.gcc
gcc/config/sparc/linux.h
gcc/config/sparc/linux64.h
gcc/config/sparc/sol2.h
gcc/config/sparc/sparc.c
gcc/config/sparc/sparc.h
gcc/config/sparc/t-linux [deleted file]
gcc/config/sparc/t-linux64

index d49190d45372d675be935ae6c3a794efc8db64ee..fc6662c1af512f81a8feb4f0bd6f2c352bcbd4f8 100644 (file)
@@ -1,3 +1,16 @@
+2004-04-01  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/sparc/sparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0.
+       * config/sparc/linux.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
+       * config/sparc/linux64.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
+       * config/sparc/sol2.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
+       (SOLARIS_CONVERSION_LIBFUNCS): Rename to SUN_CONVERSION_LIBFUNCS.
+       * config/sparc/sparc.c (sparc_init_libfuncs): Initialize optabs
+       with _Q_qtoll, _Q_qtoull and _Q_lltoq if DITF_CONVERSION_LIBFUNCS.
+       * config.gcc (sparc-*-linux*): Revert 2004-03-23 change.
+       * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Likewise.
+       * config/sparc/t-linux: Removed.
+
 2004-04-01  Jakub Jelinek  <jakub@redhat.com>
 
        PR c++/14755
index 9be962c21112000eb67ca1c279a594c8639a08ee..2bf15f50d953bb60b59392fe1460601efebdf1f1 100644 (file)
@@ -1808,7 +1808,7 @@ sparc-*-elf*)
        ;;
 sparc-*-linux*)                # SPARC's running GNU/Linux, libc6
        tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux.h"
-       tmake_file="${tmake_file} sparc/t-linux sparc/t-crtfm"
+       tmake_file="${tmake_file} sparc/t-crtfm"
        ;;
 sparc-*-rtems*)
        tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h sparc/rtemself.h rtems.h"
index 187dff6eee8644d7a2d419a394a553ed36696647..ecb473152ae7f4553fc41abfa59a8f4679d1d285 100644 (file)
@@ -227,6 +227,9 @@ do {                                                                        \
 #define LIBGCC2_LONG_DOUBLE_TYPE_SIZE 64
 #endif
 
+#undef DITF_CONVERSION_LIBFUNCS
+#define DITF_CONVERSION_LIBFUNCS 1
+
 #if !defined(USE_GNULIBC_1) && defined(HAVE_LD_EH_FRAME_HDR)
 #define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
 #endif
index 5cb84e5f916989eee8446efd664e99dc248ed6dc..9820156fd07de64ea62806ec605bd2e346bce932 100644 (file)
@@ -305,6 +305,9 @@ do {                                                                        \
 
 /* #define DWARF_OFFSET_SIZE PTR_SIZE */
 
+#undef DITF_CONVERSION_LIBFUNCS
+#define DITF_CONVERSION_LIBFUNCS 1
+
 #if defined(HAVE_LD_EH_FRAME_HDR)
 #define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
 #endif
index fcfc75976859aa52dac07c8d7c9370df30839ec2..483e89c3fb287c46b256706aaa418decd20d0de6 100644 (file)
@@ -143,8 +143,11 @@ Boston, MA 02111-1307, USA.  */
 #undef TARGET_BUGGY_QP_LIB
 #define TARGET_BUGGY_QP_LIB    1
 
-#undef SOLARIS_CONVERSION_LIBFUNCS
-#define SOLARIS_CONVERSION_LIBFUNCS 1
+#undef SUN_CONVERSION_LIBFUNCS
+#define SUN_CONVERSION_LIBFUNCS 1
+
+#undef DITF_CONVERSION_LIBFUNCS
+#define DITF_CONVERSION_LIBFUNCS 1
 
 #undef SUN_INTEGER_MULTIPLY_64
 #define SUN_INTEGER_MULTIPLY_64 1
index bdb9ed40eefd80e0f26b9399ddc2a4bdf6e08cbe..30b789b92172c6dfd0646d78b22ae8ea422ebd6b 100644 (file)
@@ -8082,6 +8082,13 @@ sparc_init_libfuncs (void)
       set_conv_libfunc (ufix_optab,   SImode, TFmode, "_Q_qtou");
       set_conv_libfunc (sfloat_optab, TFmode, SImode, "_Q_itoq");
 
+      if (DITF_CONVERSION_LIBFUNCS)
+       {
+         set_conv_libfunc (sfix_optab,   DImode, TFmode, "_Q_qtoll");
+         set_conv_libfunc (ufix_optab,   DImode, TFmode, "_Q_qtoull");
+         set_conv_libfunc (sfloat_optab, TFmode, DImode, "_Q_lltoq");
+       }
+
       if (SUN_CONVERSION_LIBFUNCS)
        {
          set_conv_libfunc (sfix_optab, DImode, SFmode, "__ftoll");
index 768525be312b5ebf85468ac338925e53a6282cab..58eb4c8e3c301bae8df6166d72f2fc5c7efb365c 100644 (file)
@@ -2255,8 +2255,9 @@ do {                                                                    \
 /* Assume by default that we do not have the Solaris-specific conversion
    routines nor 64-bit integer multiply and divide routines.  */
 
-#define SUN_CONVERSION_LIBFUNCS 0
-#define SUN_INTEGER_MULTIPLY_64 0
+#define SUN_CONVERSION_LIBFUNCS        0
+#define DITF_CONVERSION_LIBFUNCS       0
+#define SUN_INTEGER_MULTIPLY_64        0
 
 /* Compute extra cost of moving data between one register class
    and another.  */
diff --git a/gcc/config/sparc/t-linux b/gcc/config/sparc/t-linux
deleted file mode 100644 (file)
index 30a3cca..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-# Compile libgcc2.a with pic and IEEE quad long double.
-TARGET_LIBGCC2_CFLAGS = -fPIC -mlong-double-128
index d21e149e428676f9c2529768e64b3b7fd9dc15f3..3e3fa4cae7e694b0c33bdfb3b33ea0cd0b96c894 100644 (file)
@@ -17,7 +17,3 @@ SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver \
 CRTSTUFF_T_CFLAGS = `if test x$$($(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) \
                                 -print-multi-os-directory) \
                        = x../lib64; then echo -mcmodel=medany; fi`
-
-# Compile libgcc2.a with pic and for -m32 also IEEE quad long double.
-# -m64 implies -mlong-double-128, so this is no change for 64-bit.
-TARGET_LIBGCC2_CFLAGS = -fPIC -mlong-double-128