stormy16.h (REGISTER_MOVE_COST, [...]): Remove.
authorAnatoly Sokolov <aesok@post.ru>
Wed, 2 Mar 2011 21:36:02 +0000 (00:36 +0300)
committerAnatoly Sokolov <aesok@gcc.gnu.org>
Wed, 2 Mar 2011 21:36:02 +0000 (00:36 +0300)
* config/stormy16/stormy16.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST):
Remove.
* config/stormy16/stormy16.c: Include reload.h.
(xstormy16_memory_move_cost): New function.
(TARGET_MEMORY_MOVE_COST): Define.

From-SVN: r170623

gcc/ChangeLog
gcc/config/stormy16/stormy16.c
gcc/config/stormy16/stormy16.h

index 3f58172a070534620c3f105b3b703baf6b0b0301..e4b040c20663ac95e90622386ea3d1dd3df16511 100644 (file)
@@ -1,3 +1,11 @@
+2011-03-02  Anatoly Sokolov  <aesok@post.ru>
+
+       * config/stormy16/stormy16.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST):
+       Remove.
+       * config/stormy16/stormy16.c: Include reload.h.
+       (xstormy16_memory_move_cost): New function.
+       (TARGET_MEMORY_MOVE_COST): Define.
+
 2011-03-02  Richard Sandiford  <richard.sandiford@linaro.org>
 
        PR rtl-optimization/47925
index 66cd1455692eef39c02a7bc8ba0e73f88bc09f41..eb456e272135f7497cb5a7b71f89195a13b3cf24 100644 (file)
@@ -46,6 +46,7 @@
 #include "langhooks.h"
 #include "gimple.h"
 #include "df.h"
+#include "reload.h"
 #include "ggc.h"
 
 static rtx emit_addhi3_postreload (rtx, rtx, rtx);
@@ -108,6 +109,15 @@ xstormy16_address_cost (rtx x, bool speed ATTRIBUTE_UNUSED)
          : 5);
 }
 
+/* Worker function for TARGET_MEMORY_MOVE_COST.  */
+
+static int
+xstormy16_memory_move_cost (enum machine_mode mode, reg_class_t rclass,
+                           bool in)
+{
+  return (5 + memory_move_secondary_cost (mode, rclass, in));
+}
+
 /* Branches are handled as follows:
 
    1. HImode compare-and-branches.  The machine supports these
@@ -2598,6 +2608,8 @@ static const struct default_options xstorym16_option_optimization_table[] =
 #undef  TARGET_ASM_CAN_OUTPUT_MI_THUNK
 #define TARGET_ASM_CAN_OUTPUT_MI_THUNK default_can_output_mi_thunk_no_vcall
 
+#undef  TARGET_MEMORY_MOVE_COST
+#define TARGET_MEMORY_MOVE_COST xstormy16_memory_move_cost
 #undef  TARGET_RTX_COSTS
 #define TARGET_RTX_COSTS xstormy16_rtx_costs
 #undef  TARGET_ADDRESS_COST
index daec8a2b3c6a9deab0db4b6f0a771f9ec942ccad..ac42ebd40a0edb3bfc32c5334db936acc0dad11c 100644 (file)
@@ -354,10 +354,6 @@ enum reg_class
 \f
 /* Describing Relative Costs of Operations.  */
 
-#define REGISTER_MOVE_COST(MODE, FROM, TO) 2
-
-#define MEMORY_MOVE_COST(M,C,I) (5 + memory_move_secondary_cost (M, C, I))
-
 #define BRANCH_COST(speed_p, predictable_p) 5
 
 #define SLOW_BYTE_ACCESS 0