OSDN Git Service

* alpha-mdebug-tdep.c (alpha_mdebug_frame_prev_register): Use
authordrow <drow>
Tue, 9 Jan 2007 20:19:15 +0000 (20:19 +0000)
committerdrow <drow>
Tue, 9 Jan 2007 20:19:15 +0000 (20:19 +0000)
frame_unwind_register to recurse.
* alpha-tdep.c (alpha_sigtramp_frame_prev_register): Likewise.
(alpha_heuristic_frame_prev_register): Likewise.
* h8300-tdep.c (h8300_frame_prev_register): Likewise.
* m32c-tdep.c (m32c_prev_register): Likewise.
* frame.c (frame_register_unwind_location): Remove FIXME.

gdb/ChangeLog
gdb/alpha-mdebug-tdep.c
gdb/alpha-tdep.c
gdb/frame.c
gdb/h8300-tdep.c
gdb/m32c-tdep.c

index 296fc4c..f6260c4 100644 (file)
@@ -1,4 +1,14 @@
 2007-01-09  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * alpha-mdebug-tdep.c (alpha_mdebug_frame_prev_register): Use
+       frame_unwind_register to recurse.
+       * alpha-tdep.c (alpha_sigtramp_frame_prev_register): Likewise.
+       (alpha_heuristic_frame_prev_register): Likewise.
+       * h8300-tdep.c (h8300_frame_prev_register): Likewise.
+       * m32c-tdep.c (m32c_prev_register): Likewise.
+       * frame.c (frame_register_unwind_location): Remove FIXME.
+
+2007-01-09  Daniel Jacobowitz  <dan@codesourcery.com>
            Eli Zaretskii  <eliz@gnu.org>
 
        * copyright.sh: New file.
index 906c1c7..c2f1802 100644 (file)
@@ -294,8 +294,12 @@ alpha_mdebug_frame_prev_register (struct frame_info *next_frame,
     }
 
   /* Otherwise assume the next frame has the same register value.  */
-  frame_register (next_frame, regnum, optimizedp, lvalp, addrp,
-                 realnump, bufferp);
+  *optimizedp = 0;
+  *lvalp = lval_register;
+  *addrp = 0;
+  *realnump = regnum;
+  if (bufferp)
+    frame_unwind_register (next_frame, *realnump, bufferp);
 }
 
 static const struct frame_unwind alpha_mdebug_frame_unwind = {
index 0bf0f78..5b8f421 100644 (file)
@@ -864,8 +864,12 @@ alpha_sigtramp_frame_prev_register (struct frame_info *next_frame,
      current description of it in alpha_sigtramp_frame_unwind_cache
      doesn't include it.  Too bad.  Fall back on whatever's in the
      outer frame.  */
-  frame_register (next_frame, regnum, optimizedp, lvalp, addrp,
-                 realnump, bufferp);
+  *optimizedp = 0;
+  *lvalp = lval_register;
+  *addrp = 0;
+  *realnump = regnum;
+  if (bufferp)
+    frame_unwind_register (next_frame, *realnump, bufferp);
 }
 
 static const struct frame_unwind alpha_sigtramp_frame_unwind = {
@@ -1218,8 +1222,12 @@ alpha_heuristic_frame_prev_register (struct frame_info *next_frame,
     }
 
   /* Otherwise assume the next frame has the same register value.  */
-  frame_register_unwind (next_frame, regnum, optimizedp, lvalp, addrp,
-                         realnump, bufferp);
+  *optimizedp = 0;
+  *lvalp = lval_register;
+  *addrp = 0;
+  *realnump = regnum;
+  if (bufferp)
+    frame_unwind_register (next_frame, *realnump, bufferp);
 }
 
 static const struct frame_unwind alpha_heuristic_frame_unwind = {
index 32a97d7..8d39305 100644 (file)
@@ -1103,10 +1103,7 @@ reinit_frame_cache (void)
 
 /* Find where a register is saved (in memory or another register).
    The result of frame_register_unwind is just where it is saved
-   relative to this particular frame.
-
-   FIXME: alpha, m32c, and h8300 actually do the transitive operation
-   themselves.  */
+   relative to this particular frame.  */
 
 static void
 frame_register_unwind_location (struct frame_info *this_frame, int regnum,
index 4b06521..f5a8e4d 100644 (file)
@@ -529,8 +529,12 @@ h8300_frame_prev_register (struct frame_info *next_frame, void **this_cache,
       return;
     }
 
-  frame_register_unwind (next_frame, regnum,
-                        optimizedp, lvalp, addrp, realnump, valuep);
+  *optimizedp = 0;
+  *lvalp = lval_register;
+  *addrp = 0;
+  *realnump = regnum;
+  if (valuep)
+    frame_unwind_register (next_frame, *realnump, valuep);
 }
 
 static const struct frame_unwind h8300_frame_unwind = {
index 12e0ec2..3aeeedf 100644 (file)
@@ -1919,8 +1919,14 @@ m32c_prev_register (struct frame_info *next_frame,
   /* Otherwise, presume we haven't changed the value of this
      register, and get it from the next frame.  */
   else
-    frame_register_unwind (next_frame, regnum,
-                          optimizedp, lvalp, addrp, realnump, bufferp);
+    {
+      *optimizedp = 0;
+      *lvalp = lval_register;
+      *addrp = 0;
+      *realnump = regnum;
+      if (bufferp)
+       frame_unwind_register (next_frame, *realnump, bufferp);
+    }
 }