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 d49190d..fc6662c 100644 (file)
@@ -1,5 +1,18 @@
 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
        * fold-const.c (fold) <EQ_EXPR>: Properly compute newconst in
        "bitfld++ == const" to "++bitfld == const + incr" transformations.
index 9be962c..2bf15f5 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 187dff6..ecb4731 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 5cb84e5..9820156 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 fcfc759..483e89c 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 bdb9ed4..30b789b 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 768525b..58eb4c8 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 d21e149..3e3fa4c 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