]> gcc.gnu.org Git - gcc.git/commitdiff
combine.c (try_combine): Use hard_regno_nregs array instead of HARD_REGNO_NREGS macro.
authorJakub Jelinek <jakub@redhat.com>
Mon, 6 Jun 2005 19:22:19 +0000 (21:22 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Mon, 6 Jun 2005 19:22:19 +0000 (21:22 +0200)
* combine.c (try_combine): Use hard_regno_nregs array instead of
HARD_REGNO_NREGS macro.
* config/rs6000/rs6000.c (rs6000_split_multireg_move,
rs6000_register_move_cost, rs6000_memory_move_cost): Likewise.
* config/ia64/ia64.c (mark_reg_gr_used_mask): Likewise.

From-SVN: r100673

gcc/ChangeLog
gcc/combine.c
gcc/config/ia64/ia64.c
gcc/config/rs6000/rs6000.c

index fa63fbb261c60bc3e48a6f1da54c93a9789b4155..69bcc422168a9abf90ce4a3f34925048c939667c 100644 (file)
@@ -1,3 +1,11 @@
+2005-06-06  Jakub Jelinek  <jakub@redhat.com>
+
+       * combine.c (try_combine): Use hard_regno_nregs array instead of
+       HARD_REGNO_NREGS macro.
+       * config/rs6000/rs6000.c (rs6000_split_multireg_move,
+       rs6000_register_move_cost, rs6000_memory_move_cost): Likewise.
+       * config/ia64/ia64.c (mark_reg_gr_used_mask): Likewise.
+
 2005-06-06  Daniel Berlin  <dberlin@dberlin.org>
 
        * tree-ssa-reassoc.o: New.
index 251c1eeafb8823cccc0b348b93d3e5df40870d63..7cecc3d01028641b0da722aacc9637a8e2b9afff 100644 (file)
@@ -2385,8 +2385,8 @@ try_combine (rtx i3, rtx i2, rtx i1, int *new_direct_jump_p)
              || GET_MODE (*split) == VOIDmode
              || (REGNO (i2dest) < FIRST_PSEUDO_REGISTER
                  && HARD_REGNO_MODE_OK (REGNO (i2dest), GET_MODE (*split))
-                 && (HARD_REGNO_NREGS (REGNO (i2dest), GET_MODE (i2dest))
-                     == HARD_REGNO_NREGS (REGNO (i2dest), GET_MODE (*split))))
+                 && (hard_regno_nregs[REGNO (i2dest)][GET_MODE (i2dest)]
+                     == hard_regno_nregs[REGNO (i2dest)][GET_MODE (*split)]))
              || (REGNO (i2dest) >= FIRST_PSEUDO_REGISTER
                  && REG_N_SETS (REGNO (i2dest)) == 1 && ! added_sets_2
                  && ! REG_USERVAR_P (i2dest)))
index 7b20280b746816bb9425ff0609efe4f00f5e8644..e119ecb2b1a83c089732cc3684def021f311de6a 100644 (file)
@@ -2008,7 +2008,7 @@ mark_reg_gr_used_mask (rtx reg, void *data ATTRIBUTE_UNUSED)
   unsigned int regno = REGNO (reg);
   if (regno < 32)
     {
-      unsigned int i, n = HARD_REGNO_NREGS (regno, GET_MODE (reg));
+      unsigned int i, n = hard_regno_nregs[regno][GET_MODE (reg)];
       for (i = 0; i < n; ++i)
        current_frame_info.gr_used_mask |= 1 << (regno + i);
     }
index 9626885a6644abdf44481495146afe4cf21d3c31..6a55de112db456d1bdbea280cf6bc9023570fa2f 100644 (file)
@@ -11586,7 +11586,7 @@ rs6000_split_multireg_move (rtx dst, rtx src)
 
   reg = REG_P (dst) ? REGNO (dst) : REGNO (src);
   mode = GET_MODE (dst);
-  nregs = HARD_REGNO_NREGS (reg, mode);
+  nregs = hard_regno_nregs[reg][mode];
   if (FP_REGNO_P (reg))
     reg_mode = DFmode;
   else if (ALTIVEC_REGNO_P (reg))
@@ -17925,7 +17925,7 @@ rs6000_register_move_cost (enum machine_mode mode,
 
       else
        /* A move will cost one instruction per GPR moved.  */
-       return 2 * HARD_REGNO_NREGS (0, mode);
+       return 2 * hard_regno_nregs[0][mode];
     }
 
   /* Moving between two similar registers is just one instruction.  */
@@ -17946,11 +17946,11 @@ rs6000_memory_move_cost (enum machine_mode mode, enum reg_class class,
                         int in ATTRIBUTE_UNUSED)
 {
   if (reg_classes_intersect_p (class, GENERAL_REGS))
-    return 4 * HARD_REGNO_NREGS (0, mode);
+    return 4 * hard_regno_nregs[0][mode];
   else if (reg_classes_intersect_p (class, FLOAT_REGS))
-    return 4 * HARD_REGNO_NREGS (32, mode);
+    return 4 * hard_regno_nregs[32][mode];
   else if (reg_classes_intersect_p (class, ALTIVEC_REGS))
-    return 4 * HARD_REGNO_NREGS (FIRST_ALTIVEC_REGNO, mode);
+    return 4 * hard_regno_nregs[FIRST_ALTIVEC_REGNO][mode];
   else
     return 4 + rs6000_register_move_cost (mode, class, GENERAL_REGS);
 }
This page took 0.120614 seconds and 5 git commands to generate.