This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Allow -msoft-float -mlong-double-128 without a warning


Hi!

The fact that libgcc doesn't provide library routines for -msoft-float
TFmode arithmetics doesn't mean that some other library can't provide it.
We haven't been warning about this before, so not warning about it now
is not a regression.  Either the user knows what he is doing
(e.g. ppc64 glibc for a couple of sources linked into the dynamic linker
uses -msoft-float to make sure nothing touches the floating point unit
when doing lazy binding or handling profiling hook - the user knows
there is no explicit floating point arithmetics, but wants to avoid
e.g. using fp regs for integer data moves etc., or if somebody feels
to revive soft-fp ppc32 glibc in ports CVS, those routines can be fairly
easily added there, glibc's soft-fp doesn't require TImode in any place),
or he'll get link time errors.  It is not as early as this warning would be,
but gives us the flexibility for the routines being provided from elsewhere.
E.g. sparc{,64}-linux or alpha-linux has TFmode helper routines also in
glibc, not in libgcc.

Ok for trunk?

2006-02-01  Jakub Jelinek  <jakub@redhat.com>

	* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Revert
	2006-01-27 change.

--- gcc/config/rs6000/sysv4.h.jj	2006-01-27 20:57:53.000000000 +0100
+++ gcc/config/rs6000/sysv4.h	2006-02-01 19:15:16.000000000 +0100
@@ -215,13 +215,6 @@ do {									\
       error ("-msecure-plt not supported by your assembler");		\
     }									\
 									\
-  if (TARGET_SOFT_FLOAT && TARGET_LONG_DOUBLE_128)			\
-    {									\
-      rs6000_long_double_type_size = 64;				\
-      if (rs6000_explicit_options.long_double)				\
-	warning (0, "soft-float and long-double-128 are incompatible");	\
-    }									\
-									\
   /* Treat -fPIC the same as -mrelocatable.  */				\
   if (flag_pic > 1 && DEFAULT_ABI != ABI_AIX)				\
     target_flags |= MASK_RELOCATABLE | MASK_MINIMAL_TOC | MASK_NO_FP_IN_TOC; \

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]