re PR target/19379 (ICE during build of newlib's e_atan2.c when soft-float)
authorJoel Sherrill <joel.sherrill@oarcorp.com>
Tue, 18 Jan 2005 14:13:09 +0000 (14:13 +0000)
committerJoel Sherrill <joel@gcc.gnu.org>
Tue, 18 Jan 2005 14:13:09 +0000 (14:13 +0000)
2005-01-18  Joel Sherrill <joel.sherrill@oarcorp.com>

PR target/19379
* config/i386/i386.c (override_options): If the 80387 is disabled,
then do not return FP values using FP registers.

From-SVN: r93833

gcc/ChangeLog
gcc/config/i386/i386.c

index a9d4312..2986541 100644 (file)
@@ -1,3 +1,9 @@
+2005-01-18  Joel Sherrill <joel.sherrill@oarcorp.com>
+
+       PR target/19379
+       * config/i386/i386.c (override_options): If the 80387 is disabled,
+       then do not return FP values using FP registers.
+
 2005-01-18  Kazu Hirata  <kazu@cs.umass.edu>
 
        * basic-block.h, c-common.c, c-cppbuiltin.c, c-lang.c,
index b6cfde3..cc3cf4b 100644 (file)
@@ -1557,6 +1557,10 @@ override_options (void)
        error ("bad value (%s) for -mfpmath= switch", ix86_fpmath_string);
     }
 
+  /* If the i387 is disabled, then do not return values in it. */
+  if (!TARGET_80387)
+    target_flags &= ~MASK_FLOAT_RETURNS;
+
   if ((x86_accumulate_outgoing_args & TUNEMASK)
       && !(target_flags_explicit & MASK_ACCUMULATE_OUTGOING_ARGS)
       && !optimize_size)