OSDN Git Service

* config/i386/i386.c (standard_80387_constant_p): Also prefer
authorsayle <sayle@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 21 Feb 2004 18:48:19 +0000 (18:48 +0000)
committersayle <sayle@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 21 Feb 2004 18:48:19 +0000 (18:48 +0000)
the x87's load constant instructions when optimizing for size.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@78231 138bc75d-0d04-0410-961f-82ee72b054a4

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

index 7ebb416..00e79b0 100644 (file)
@@ -1,3 +1,8 @@
+2004-02-21  Roger Sayle  <roger@eyesopen.com>
+
+       * config/i386/i386.c (standard_80387_constant_p): Also prefer
+       the x87's load constant instructions when optimizing for size.
+
 2004-02-21  Kazu Hirata  <kazu@cs.umass.edu>
 
        * combine.c (SHIFT_COUNT_TRUNCATED): Remove.
index 3e5556d..92d56a0 100644 (file)
@@ -4333,10 +4333,10 @@ standard_80387_constant_p (rtx x)
   if (x == CONST1_RTX (GET_MODE (x)))
     return 2;
 
-  /* For XFmode constants, try to find a special 80387 instruction on
-     those CPUs that benefit from them.  */
+  /* For XFmode constants, try to find a special 80387 instruction when
+     optimizing for size or on those CPUs that benefit from them.  */
   if (GET_MODE (x) == XFmode
-      && x86_ext_80387_constants & TUNEMASK)
+      && (optimize_size || x86_ext_80387_constants & TUNEMASK))
     {
       REAL_VALUE_TYPE r;
       int i;