OSDN Git Service

2011-08-20 Vladimir Makarov <vmakarov@redhat.com>
authorvmakarov <vmakarov@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 21 Aug 2011 02:14:37 +0000 (02:14 +0000)
committervmakarov <vmakarov@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 21 Aug 2011 02:14:37 +0000 (02:14 +0000)
* ira-lives.c (mark_pseudo_regno_subword_live): Use allocno class
for ira_reg_class_max_nregs.  Increase pressure by 1.
(mark_pseudo_regno_subword_dead): Use allocno class
for ira_reg_class_max_nregs.

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

gcc/ChangeLog
gcc/ira-lives.c

index 3fa27e3..e9f71ac 100644 (file)
@@ -1,3 +1,10 @@
+2011-08-20  Vladimir Makarov  <vmakarov@redhat.com>
+
+       * ira-lives.c (mark_pseudo_regno_subword_live): Use allocno class
+       for ira_reg_class_max_nregs.  Increase pressure by 1.
+       (mark_pseudo_regno_subword_dead): Use allocno class
+       for ira_reg_class_max_nregs.
+
 2011-08-20  Richard Henderson  <rth@redhat.com>
 
        * config/c6x/eqd.c, config/c6x/eqf.c, config/c6x/ged.c,
index d308bb3..9af2f93 100644 (file)
@@ -285,7 +285,7 @@ static void
 mark_pseudo_regno_subword_live (int regno, int subword)
 {
   ira_allocno_t a = ira_curr_regno_allocno_map[regno];
-  int n, nregs;
+  int n;
   enum reg_class pclass;
   ira_object_t obj;
 
@@ -303,14 +303,14 @@ mark_pseudo_regno_subword_live (int regno, int subword)
     }
 
   pclass = ira_pressure_class_translate[ALLOCNO_CLASS (a)];
-  nregs = ira_reg_class_max_nregs[pclass][ALLOCNO_MODE (a)];
-  gcc_assert (nregs == n);
+  gcc_assert
+    (n == ira_reg_class_max_nregs[ALLOCNO_CLASS (a)][ALLOCNO_MODE (a)]);
   obj = ALLOCNO_OBJECT (a, subword);
 
   if (sparseset_bit_p (objects_live, OBJECT_CONFLICT_ID (obj)))
     return;
 
-  inc_register_pressure (pclass, nregs);
+  inc_register_pressure (pclass, 1);
   make_object_born (obj);
 }
 
@@ -414,7 +414,7 @@ static void
 mark_pseudo_regno_subword_dead (int regno, int subword)
 {
   ira_allocno_t a = ira_curr_regno_allocno_map[regno];
-  int n, nregs;
+  int n;
   enum reg_class cl;
   ira_object_t obj;
 
@@ -430,8 +430,8 @@ mark_pseudo_regno_subword_dead (int regno, int subword)
     return;
 
   cl = ira_pressure_class_translate[ALLOCNO_CLASS (a)];
-  nregs = ira_reg_class_max_nregs[cl][ALLOCNO_MODE (a)];
-  gcc_assert (nregs == n);
+  gcc_assert
+    (n == ira_reg_class_max_nregs[ALLOCNO_CLASS (a)][ALLOCNO_MODE (a)]);
 
   obj = ALLOCNO_OBJECT (a, subword);
   if (!sparseset_bit_p (objects_live, OBJECT_CONFLICT_ID (obj)))