diff options
author | Michael Snyder <msnyder@vmware.com> | 1998-12-02 23:22:58 +0000 |
---|---|---|
committer | Michael Snyder <msnyder@vmware.com> | 1998-12-02 23:22:58 +0000 |
commit | 55be5ef5064e87136980febf6241be046ceabda8 (patch) | |
tree | e365d4ae3aed2b2a0026a85ed5edbbe5b94a326d /gdb/tracepoint.c | |
parent | 077e3444ce573ce778928794df25f4c5394eb934 (diff) | |
download | gdb-55be5ef5064e87136980febf6241be046ceabda8.zip gdb-55be5ef5064e87136980febf6241be046ceabda8.tar.gz gdb-55be5ef5064e87136980febf6241be046ceabda8.tar.bz2 |
Wed Dec 2 15:11:38 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* tracepoint.c: Move default definition of
TARGET_VIRTUAL_FRAME_POINTER from here to target.h.
* target.h: Add default definition of TARGET_VIRTUAL_FRAME_POINTER.
* ax-gdb.c (gen_frame_args_address, gen_frame_locals_address):
use TARGET_VIRTUAL_FRAME_POINTER to determine frame pointer.
(gen_trace_for_expr): new argument, address of tracepoint,
gets passed to new_agent_expr and added to struct agent_expr.
(is_nontrivial_conversion): call to new_agent_expr now requires
a dummy argument. (agent_command): use get_current_frame() to
get current PC scope; pass it to gen_trace_for_expr.
* ax-general.c (new_agent_expr): new argument, address of
tracepoint; store it in new field of struct agent_expr.
* ax.h (struct agent_expr): add new field for tracepoint address.
* ax-gdb.h: change prototypes to match above changes.
Diffstat (limited to 'gdb/tracepoint.c')
-rw-r--r-- | gdb/tracepoint.c | 22 |
1 files changed, 5 insertions, 17 deletions
diff --git a/gdb/tracepoint.c b/gdb/tracepoint.c index 3b911a8..ff475a1 100644 --- a/gdb/tracepoint.c +++ b/gdb/tracepoint.c @@ -970,7 +970,7 @@ validate_actionline (line, t) /* we have something to collect, make sure that the expr to bytecode translator can handle it and that it's not too long */ - aexpr = gen_trace_for_expr(exp); + aexpr = gen_trace_for_expr (t->address, exp); (void) make_cleanup ((make_cleanup_func) free_agent_expr, aexpr); if (aexpr->len > MAX_AGENT_EXPR_LEN) @@ -1438,18 +1438,6 @@ free_actions_list(actions_list) free(actions_list); } -#ifndef TARGET_VIRTUAL_FRAME_POINTER -/* If anybody else ever uses this macro, then move this - default definition into some global header file such as defs.h. - - FIXME: GDB's whole scheme for dealing with "frames" and - "frame pointers" needs a serious shakedown. - */ - -#define TARGET_VIRTUAL_FRAME_POINTER(ADDR, REGP, OFFP) \ - do { *(REGP) = FP_REGNUM; *(OFFP) = 0; } while (0) -#endif - /* render all actions into gdb protocol */ static void encode_actions (t, tdp_actions, stepping_actions) @@ -1559,7 +1547,7 @@ encode_actions (t, tdp_actions, stepping_actions) break; default: /* full-fledged expression */ - aexpr = gen_trace_for_expr (exp); + aexpr = gen_trace_for_expr (t->address, exp); old_chain1 = make_cleanup ((make_cleanup_func) free_agent_expr, aexpr); @@ -2322,7 +2310,7 @@ scope_info (args, from_tty) struct minimal_symbol *msym; struct block *block; char **canonical, *symname, *save_args = args; - int i, nsyms, count = 0; + int i, j, nsyms, count = 0; if (args == 0 || *args == 0) error ("requires an argument (function, line or *addr) to define a scope"); @@ -2365,9 +2353,9 @@ scope_info (args, from_tty) case LOC_CONST_BYTES: printf_filtered ("constant bytes: "); if (SYMBOL_TYPE (sym)) - for (i = 0; i < TYPE_LENGTH (SYMBOL_TYPE (sym)); i++) + for (j = 0; j < TYPE_LENGTH (SYMBOL_TYPE (sym)); j++) fprintf_filtered (gdb_stdout, " %02x", - (unsigned) SYMBOL_VALUE_BYTES (sym) [i]); + (unsigned) SYMBOL_VALUE_BYTES (sym) [j]); break; case LOC_STATIC: printf_filtered ("in static storage at address "); |