diff options
author | Andrew Cagney <cagney@redhat.com> | 2003-06-09 17:35:59 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 2003-06-09 17:35:59 +0000 |
commit | 983a287a6f078fd4b5eeff0083fd557db71883b7 (patch) | |
tree | c84dc068ec87521645cf53d59299fab764dd19db /gdb/stack.c | |
parent | 8d3b0994cd3d164c1fa5bce161ba26cb8e079ac2 (diff) | |
download | gdb-983a287a6f078fd4b5eeff0083fd557db71883b7.zip gdb-983a287a6f078fd4b5eeff0083fd557db71883b7.tar.gz gdb-983a287a6f078fd4b5eeff0083fd557db71883b7.tar.bz2 |
2003-06-09 Andrew Cagney <cagney@redhat.com>
* gdbarch.sh (FRAME_NUM_ARGS): Change to function with predicate.
* gdbarch.h, gdbarch.c: Re-generate.
* arch-utils.h (frame_num_args_unknown): Delete both declarations.
* arch-utils.c (frame_num_args_unknown): Delete function.
* stack.c (print_args_stub): Use FRAME_NUM_ARGS_P.
(frame_info): Use FRAME_NUM_ARGS_P.
* arm-tdep.c (arm_frame_num_args): Delete function.
(arm_gdbarch_init): Do not set frame_num_args.
* config/pa/tm-hppa64.h (FRAME_NUM_ARGS): Delete.
* hppa-tdep.c (hppa_frame_num_args): Delete function.
(hppa_gdbarch_init): Do not set frame_num_args.
* config/sparc/tm-sparc.h (FRAME_NUM_ARGS): Delete.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Do not set
frame_num_args to default frame_num_args_unknown.
* v850-tdep.c (v850_gdbarch_init): Ditto.
* sparc-tdep.c (sparc_gdbarch_init): Ditto.
* sh-tdep.c (sh_gdbarch_init): Ditto.
* s390-tdep.c (s390_gdbarch_init): Ditto.
* rs6000-tdep.c (rs6000_gdbarch_init): Ditto.
* mn10300-tdep.c (mn10300_gdbarch_init): Ditto.
* mips-tdep.c (mips_gdbarch_init): Ditto.
* mcore-tdep.c (mcore_gdbarch_init): Ditto.
* m68k-tdep.c (m68k_gdbarch_init): Ditto.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Ditto.
* ia64-tdep.c (ia64_gdbarch_init): Ditto.
* i386-tdep.c (i386_gdbarch_init): Ditto.
* h8300-tdep.c (h8300_gdbarch_init): Ditto.
* frv-tdep.c (frv_gdbarch_init): Ditto.
* d10v-tdep.c (d10v_gdbarch_init): Ditto.
* cris-tdep.c (cris_gdbarch_init): Ditto.
* avr-tdep.c (avr_gdbarch_init): Ditto.
* alpha-tdep.c (alpha_gdbarch_init): Ditto.
Diffstat (limited to 'gdb/stack.c')
-rw-r--r-- | gdb/stack.c | 31 |
1 files changed, 22 insertions, 9 deletions
diff --git a/gdb/stack.c b/gdb/stack.c index 1f874e6..a1a786b 100644 --- a/gdb/stack.c +++ b/gdb/stack.c @@ -398,7 +398,13 @@ print_args_stub (void *args) int numargs; struct print_args_args *p = (struct print_args_args *) args; - numargs = FRAME_NUM_ARGS (p->fi); + if (FRAME_NUM_ARGS_P ()) + { + numargs = FRAME_NUM_ARGS (p->fi); + gdb_assert (numargs >= 0); + } + else + numargs = -1; print_frame_args (p->func, p->fi, numargs, p->stream); return 0; } @@ -982,15 +988,22 @@ frame_info (char *addr_exp, int from_tty) print_address_numeric (arg_list, 1, gdb_stdout); printf_filtered (","); - numargs = FRAME_NUM_ARGS (fi); - if (numargs < 0) - puts_filtered (" args: "); - else if (numargs == 0) - puts_filtered (" no args."); - else if (numargs == 1) - puts_filtered (" 1 arg: "); + if (!FRAME_NUM_ARGS_P ()) + { + numargs = -1; + puts_filtered (" args: "); + } else - printf_filtered (" %d args: ", numargs); + { + numargs = FRAME_NUM_ARGS (fi); + gdb_assert (numargs >= 0); + if (numargs == 0) + puts_filtered (" no args."); + else if (numargs == 1) + puts_filtered (" 1 arg: "); + else + printf_filtered (" %d args: ", numargs); + } print_frame_args (func, fi, numargs, gdb_stdout); puts_filtered ("\n"); } |