i386.h (CONST_COSTS): set cost of constants representable in immediate fields to 0.
authorJan Hubicka <jh@suse.cz>
Fri, 8 Jun 2001 19:53:59 +0000 (21:53 +0200)
committerJan Hubicka <hubicka@gcc.gnu.org>
Fri, 8 Jun 2001 19:53:59 +0000 (19:53 +0000)
* i386.h (CONST_COSTS): set cost of constants representable in
immediate fields to 0.

From-SVN: r43045

gcc/ChangeLog
gcc/config/i386/i386.h

index 653ecc3156da61835924ab8d6ef4b35eade719f9..9c9c387781a2587c30b914fb1a7b799093ad871a 100644 (file)
@@ -1,3 +1,8 @@
+Fri Jun  8 21:52:51 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * i386.h (CONST_COSTS): set cost of constants representable in
+       immediate fields to 0.
+
 Fri Jun  8 21:34:54 CEST 2001  Jan Hubicka  <jh@suse.cz>
 
        * function.c (diddle_return_value): Kill code to determine
index f1f8bef8d22d8d579d449df6af848c143337835b..6803a0a57132d23257a4b1b8d228348da1bcd279 100644 (file)
@@ -2370,22 +2370,21 @@ while (0)
 
 #define CONST_COSTS(RTX,CODE,OUTER_CODE) \
   case CONST_INT:                                              \
-    return (unsigned) INTVAL (RTX) < 256 ? 0 : 1;              \
   case CONST:                                                  \
   case LABEL_REF:                                              \
   case SYMBOL_REF:                                             \
-    return flag_pic && SYMBOLIC_CONST (RTX) ? 2 : 1;           \
+    return flag_pic && SYMBOLIC_CONST (RTX) ? 1 : 0;           \
                                                                \
   case CONST_DOUBLE:                                           \
     {                                                          \
       int code;                                                        \
       if (GET_MODE (RTX) == VOIDmode)                          \
-       return 2;                                               \
+       return 0;                                               \
                                                                \
       code = standard_80387_constant_p (RTX);                  \
-      return code == 1 ? 0 :                                   \
-            code == 2 ? 1 :                                    \
-                        2;                                     \
+      return code == 1 ? 1 :                                   \
+            code == 2 ? 2 :                                    \
+                        3;                                     \
     }
 
 /* Delete the definition here when TOPLEVEL_COSTS_N_INSNS gets added to cse.c */