OSDN Git Service

* config/mips/mips.c (mips_rtx_cost_data): Add cost for 4kc, 4kp,
authordavidu <davidu@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 15 Jun 2005 13:21:54 +0000 (13:21 +0000)
committerdavidu <davidu@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 15 Jun 2005 13:21:54 +0000 (13:21 +0000)
24k and 24kx.

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

gcc/ChangeLog
gcc/config/mips/mips.c

index e8aba50..03e034f 100644 (file)
@@ -1,3 +1,8 @@
+2005-06-15  David Ung  <davidu@mips.com>
+
+       * config/mips/mips.c (mips_rtx_cost_data): Add cost for 4kc, 4kp,
+       24k and 24kx.
+       
 2005-06-15  Richard Sandiford  <richard@codesourcery.com>
 
         * doc/invoke.texi (-mips16): Fix typo.
index 8680fa7..45490fd 100644 (file)
@@ -755,10 +755,22 @@ static struct mips_rtx_cost_data const mips_rtx_cost_data[PROCESSOR_MAX] =
 
     },
     { /* 4KC */
-      DEFAULT_COSTS
+      SOFT_FP_COSTS,
+      COSTS_N_INSNS (6),            /* int_mult_si */
+      COSTS_N_INSNS (6),            /* int_mult_di */
+      COSTS_N_INSNS (36),           /* int_div_si */
+      COSTS_N_INSNS (36),           /* int_div_di */
+                       1,           /* branch_cost */
+                       4            /* memory_latency */
     },
     { /* 4KP */
-      DEFAULT_COSTS
+      SOFT_FP_COSTS,
+      COSTS_N_INSNS (36),           /* int_mult_si */
+      COSTS_N_INSNS (36),           /* int_mult_di */
+      COSTS_N_INSNS (37),           /* int_div_si */
+      COSTS_N_INSNS (37),           /* int_div_di */
+                       1,           /* branch_cost */
+                       4            /* memory_latency */
     },
     { /* 5KC */
       DEFAULT_COSTS
@@ -767,10 +779,30 @@ static struct mips_rtx_cost_data const mips_rtx_cost_data[PROCESSOR_MAX] =
       DEFAULT_COSTS
     },
     { /* 24k */
-      DEFAULT_COSTS
+      COSTS_N_INSNS (8),            /* fp_add */
+      COSTS_N_INSNS (8),            /* fp_mult_sf */
+      COSTS_N_INSNS (10),           /* fp_mult_df */
+      COSTS_N_INSNS (34),           /* fp_div_sf */
+      COSTS_N_INSNS (64),           /* fp_div_df */
+      COSTS_N_INSNS (5),            /* int_mult_si */
+      COSTS_N_INSNS (5),            /* int_mult_di */
+      COSTS_N_INSNS (41),           /* int_div_si */
+      COSTS_N_INSNS (41),           /* int_div_di */
+                       1,           /* branch_cost */
+                       4            /* memory_latency */
     },
     { /* 24kx */
-      DEFAULT_COSTS
+      COSTS_N_INSNS (4),            /* fp_add */
+      COSTS_N_INSNS (4),            /* fp_mult_sf */
+      COSTS_N_INSNS (5),            /* fp_mult_df */
+      COSTS_N_INSNS (17),           /* fp_div_sf */
+      COSTS_N_INSNS (32),           /* fp_div_df */
+      COSTS_N_INSNS (5),            /* int_mult_si */
+      COSTS_N_INSNS (5),            /* int_mult_di */
+      COSTS_N_INSNS (41),           /* int_div_si */
+      COSTS_N_INSNS (41),           /* int_div_di */
+                       1,           /* branch_cost */
+                       4            /* memory_latency */
     },
     { /* M4k */
       DEFAULT_COSTS