aboutsummaryrefslogtreecommitdiff
path: root/gdb/vax-tdep.c
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2003-06-09 02:10:35 +0000
committerAndrew Cagney <cagney@redhat.com>2003-06-09 02:10:35 +0000
commit25e3a86bb10e57d021b5dd8d9ddc6fe78c3c5c42 (patch)
tree8a42fc8cdce14c6da80eae2602d95f3157ee9ee1 /gdb/vax-tdep.c
parenta9e5fdc21938b3d8733bdfc5931088319c921f78 (diff)
downloadfsf-binutils-gdb-25e3a86bb10e57d021b5dd8d9ddc6fe78c3c5c42.zip
fsf-binutils-gdb-25e3a86bb10e57d021b5dd8d9ddc6fe78c3c5c42.tar.gz
fsf-binutils-gdb-25e3a86bb10e57d021b5dd8d9ddc6fe78c3c5c42.tar.bz2
2003-06-08 Andrew Cagney <cagney@redhat.com>
* frame.c (get_prev_frame): Remove reference to frame_args_address_correct in comments. * frame-base.c (default_frame_args_address): Delete code conditional on FRAME_ARGS_ADDRESS_CORRECT. * vax-tdep.c (vax_frame_args_address_correct): Delete. (vax_frame_args_address): Merge in vax_frame_args_address_correct. * config/vax/tm-vax.h (FRAME_ARGS_ADDRESS_CORRECT): Delete (vax_frame_args_address_correct): Delete declaration. Index: doc/ChangeLog 2003-06-08 Andrew Cagney <cagney@redhat.com> * gdbint.texinfo (Target Architecture Definition): Delete documentation on FRAME_ARGS_ADDRESS_CORRECT.
Diffstat (limited to 'gdb/vax-tdep.c')
-rw-r--r--gdb/vax-tdep.c27
1 files changed, 13 insertions, 14 deletions
diff --git a/gdb/vax-tdep.c b/gdb/vax-tdep.c
index 71eb697..bccbd50 100644
--- a/gdb/vax-tdep.c
+++ b/gdb/vax-tdep.c
@@ -165,15 +165,6 @@ vax_frame_saved_pc (struct frame_info *frame)
CORE_ADDR
vax_frame_args_address_correct (struct frame_info *frame)
{
- /* Cannot find the AP register value directly from the FP value. Must
- find it saved in the frame called by this one, or in the AP register
- for the innermost frame. However, there is no way to tell the
- difference between the innermost frame and a frame for which we
- just don't know the frame that it called (e.g. "info frame 0x7ffec789").
- For the sake of argument, suppose that the stack is somewhat trashed
- (which is one reason that "info frame" exists). So, return 0 (indicating
- we don't know the address of the arglist) if we don't know what frame
- this frame calls. */
if (get_next_frame (frame))
return (read_memory_integer (get_frame_base (get_next_frame (frame)) + 8, 4));
@@ -183,13 +174,21 @@ vax_frame_args_address_correct (struct frame_info *frame)
static CORE_ADDR
vax_frame_args_address (struct frame_info *frame)
{
- /* In most of GDB, getting the args address is too important to
- just say "I don't know". This is sometimes wrong for functions
- that aren't on top of the stack, but c'est la vie. */
+ /* In most of GDB, getting the args address is too important to just
+ say "I don't know". This is sometimes wrong for functions that
+ aren't on top of the stack, but c'est la vie. */
if (get_next_frame (frame))
return (read_memory_integer (get_frame_base (get_next_frame (frame)) + 8, 4));
-
- return (read_register (VAX_AP_REGNUM));
+ /* Cannot find the AP register value directly from the FP value.
+ Must find it saved in the frame called by this one, or in the AP
+ register for the innermost frame. However, there is no way to
+ tell the difference between the innermost frame and a frame for
+ which we just don't know the frame that it called (e.g. "info
+ frame 0x7ffec789"). For the sake of argument, suppose that the
+ stack is somewhat trashed (which is one reason that "info frame"
+ exists). So, return 0 (indicating we don't know the address of
+ the arglist) if we don't know what frame this frame calls. */
+ return 0;
}
static CORE_ADDR