2007-05-31 Markus Deuling <deuling@de.ibm.com>
[deliverable/binutils-gdb.git] / gdb / tui / tui-regs.c
index 4be83dc69d11e79a45981d046bc104b72bbf7a88..96b52d4b3f06949048a18889dbda135f8873b520 100644 (file)
@@ -220,7 +220,10 @@ tui_show_register_group (struct gdbarch *gdbarch, struct reggroup *group,
 
   /* See how many registers must be displayed.  */
   nr_regs = 0;
-  for (regnum = 0; regnum < NUM_REGS + NUM_PSEUDO_REGS; regnum++)
+  for (regnum = 0;
+       regnum < gdbarch_num_regs (current_gdbarch)
+               + gdbarch_num_pseudo_regs (current_gdbarch);
+       regnum++)
     {
       /* Must be in the group and have a name.  */
       if (gdbarch_register_reggroup_p (gdbarch, regnum, group)
@@ -256,7 +259,10 @@ tui_show_register_group (struct gdbarch *gdbarch, struct reggroup *group,
 
       /* Now set the register names and values */
       pos = 0;
-      for (regnum = 0; regnum < NUM_REGS + NUM_PSEUDO_REGS; regnum++)
+      for (regnum = 0;
+          regnum < gdbarch_num_regs (current_gdbarch)
+                   + gdbarch_num_pseudo_regs (current_gdbarch);
+          regnum++)
         {
          struct tui_gen_win_info *data_item_win;
           struct tui_data_element *data;
@@ -710,32 +716,27 @@ tui_get_register (struct gdbarch *gdbarch, struct frame_info *frame,
   if (target_has_registers)
     {
       gdb_byte buf[MAX_REGISTER_SIZE];
-
       get_frame_register (frame, regnum, buf);
-      /* NOTE: cagney/2003-03-13: This is bogus.  It is refering to
-         the register cache and not the frame which could have pulled
-         the register value off the stack.  */
-      if (register_cached (regnum) >= 0)
-        {
-          if (changedp)
-            {
-              int size = register_size (gdbarch, regnum);
-              char *old = (char*) data->value;
-              int i;
-
-              for (i = 0; i < size; i++)
-                if (buf[i] != old[i])
-                  {
-                    *changedp = TRUE;
-                    old[i] = buf[i];
-                  }
-            }
 
-          /* Reformat the data content if the value changed.  */
-          if (changedp == 0 || *changedp == TRUE)
-            tui_register_format (gdbarch, frame, data, regnum);
-          ret = TUI_SUCCESS;
-        }
+      if (changedp)
+       {
+         int size = register_size (gdbarch, regnum);
+         char *old = (char*) data->value;
+         int i;
+
+         for (i = 0; i < size; i++)
+           if (buf[i] != old[i])
+             {
+               *changedp = TRUE;
+               old[i] = buf[i];
+             }
+       }
+
+      /* Reformat the data content if the value changed.  */
+      if (changedp == 0 || *changedp == TRUE)
+       tui_register_format (gdbarch, frame, data, regnum);
+
+      ret = TUI_SUCCESS;
     }
   return ret;
 }
This page took 0.02508 seconds and 4 git commands to generate.