h8300.c (compute_saved_regs): Use a macro instead of a hard register number.
authorKazu Hirata <kazu@cs.umass.edu>
Fri, 27 Sep 2002 12:37:15 +0000 (12:37 +0000)
committerKazu Hirata <kazu@gcc.gnu.org>
Fri, 27 Sep 2002 12:37:15 +0000 (12:37 +0000)
* config/h8300/h8300.c (compute_saved_regs): Use a macro
instead of a hard register number.
(get_shift_alg): Use an enumerated type instead of numbers.
(h8300_shift_needs_scratch_p): Likewise.

From-SVN: r57586

gcc/ChangeLog
gcc/config/h8300/h8300.c

index 3fb28e5..997e37e 100644 (file)
@@ -1,3 +1,10 @@
+2002-09-27  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.c (compute_saved_regs): Use a macro
+       instead of a hard register number.
+       (get_shift_alg): Use an enumerated type instead of numbers.
+       (h8300_shift_needs_scratch_p): Likewise.
+
 2002-09-26  David S. Miller  <davem@redhat.com>
 
        PR optimization/7335
index 2d3c3f4..0f276de 100644 (file)
@@ -444,7 +444,7 @@ compute_saved_regs ()
   int regno;
 
   /* Construct a bit vector of registers to be pushed/popped.  */
-  for (regno = 0; regno <= 6; regno++)
+  for (regno = 0; regno <= FRAME_POINTER_REGNUM; regno++)
     {
       if (WORD_REG_USED (regno))
        saved_regs |= 1 << regno;
@@ -2401,37 +2401,32 @@ get_shift_alg (shift_type, shift_mode, count, info)
      unsigned int count;
      struct shift_info *info;
 {
-  int cpu;
+  enum h8_cpu cpu;
 
   /* Find the target CPU.  */
   if (TARGET_H8300)
-    cpu = 0;
+    cpu = H8_300;
   else if (TARGET_H8300H)
-    cpu = 1;
+    cpu = H8_300H;
   else
-    cpu = 2;
+    cpu = H8_S;
 
   /* Find the shift algorithm.  */
+  info->alg = SHIFT_LOOP;
   switch (shift_mode)
     {
     case QIshift:
-      if (GET_MODE_BITSIZE (QImode) <= count)
-       info->alg = SHIFT_LOOP;
-      else
+      if (count < GET_MODE_BITSIZE (QImode))
        info->alg = shift_alg_qi[cpu][shift_type][count];
       break;
 
     case HIshift:
-      if (GET_MODE_BITSIZE (HImode) <= count)
-       info->alg = SHIFT_LOOP;
-      else
+      if (count < GET_MODE_BITSIZE (HImode))
        info->alg = shift_alg_hi[cpu][shift_type][count];
       break;
 
     case SIshift:
-      if (GET_MODE_BITSIZE (SImode) <= count)
-       info->alg = SHIFT_LOOP;
-      else
+      if (count < GET_MODE_BITSIZE (SImode))
        info->alg = shift_alg_si[cpu][shift_type][count];
       break;
 
@@ -2773,7 +2768,7 @@ h8300_shift_needs_scratch_p (count, mode)
      int count;
      enum machine_mode mode;
 {
-  int cpu;
+  enum h8_cpu cpu;
   int a, lr, ar;
 
   if (GET_MODE_BITSIZE (mode) <= count)
@@ -2781,11 +2776,11 @@ h8300_shift_needs_scratch_p (count, mode)
 
   /* Find out the target CPU.  */
   if (TARGET_H8300)
-    cpu = 0;
+    cpu = H8_300;
   else if (TARGET_H8300H)
-    cpu = 1;
+    cpu = H8_300H;
   else
-    cpu = 2;
+    cpu = H8_S;
 
   /* Find the shift algorithm.  */
   switch (mode)