diff options
author | Stan Shebs <shebs@codesourcery.com> | 2010-01-06 04:20:27 +0000 |
---|---|---|
committer | Stan Shebs <shebs@codesourcery.com> | 2010-01-06 04:20:27 +0000 |
commit | 7a697b8dd7ac3c14e35ae3026d955aeae3ecc054 (patch) | |
tree | 62009f9b707ae6f18c12be8956f7b1e5fc586a7a /gdb/NEWS | |
parent | 737a160ed9bb7bbe1ac8ebea1cdc27438213c247 (diff) | |
download | gdb-7a697b8dd7ac3c14e35ae3026d955aeae3ecc054.zip gdb-7a697b8dd7ac3c14e35ae3026d955aeae3ecc054.tar.gz gdb-7a697b8dd7ac3c14e35ae3026d955aeae3ecc054.tar.bz2 |
Add fast tracepoints.
* arch-utils.h (default_fast_tracepoint_valid_at): Declare.
* arch-utils.c (default_fast_tracepoint_valid_at): New function.
* breakpoint.h (enum bptype): Add bp_fast_tracepoint.
* breakpoint.c (tracepoint_type): New function.
(ALL_TRACEPOINTS): Use it.
(should_be_inserted): Ditto.
(bpstat_check_location): Ditto.
(print_one_breakpoint_location): Ditto.
(user_settable_breakpoint): Ditto.
(set_breakpoint_location_function): Ditto.
(disable_breakpoints_in_shlibs): Ditto.
(delete_trace_command): Ditto.
(print_it_typical): Add bp_fast_tracepoint case.
(bpstat_what): Ditto.
(print_one_breakpoint_location): Ditto.
(allocate_bp_location): Ditto.
(mention): Ditto.
(breakpoint_re_set_one): Ditto.
(disable_command): Ditto.
(enable_command): Ditto.
(check_fast_tracepoint_sals): New function.
(break_command_really): Call it.
(ftrace_command): New function.
(_initialize_breakpoint): Add ftrace command.
* gdbarch.sh (fast_tracepoint_valid_at): New.
* gdbarch.h, gdbarch.c: Regenerate.
* i386-tdep.c (i386_fast_tracepoint_valid_at): New function.
(i386_gdbarch_init): Use it.
* remote.c (struct remote_state): New field fast_tracepoints.
(PACKET_FastTracepoints): New packet config type.
(remote_fast_tracepoint_feature): New function.
(remote_protocol_features): Add FastTracepoints.
(remote_supports_fast_tracepoints): New function.
(_initialize_remote): Add FastTracepoints.
* tracepoint.c (download_tracepoint): Add fast tracepoint option.
* NEWS: Mention fast tracepoints.
* gdb.texinfo (Create and Delete Tracepoints): Describe fast
tracepoints.
(Tracepoint Packets): Describe remote protocol for fast
tracepoints.
* gdb.trace/tracecmd.exp: Test ftrace.
Diffstat (limited to 'gdb/NEWS')
-rw-r--r-- | gdb/NEWS | 17 |
1 files changed, 16 insertions, 1 deletions
@@ -36,7 +36,19 @@ Renesas RX rx tracepoint actions and condition expressions. Use the "tvariable" command to create, and "info tvariables" to view; see "Trace State Variables" in the manual for more detail. - + +* Fast tracepoints + + GDB now includes an option for defining fast tracepoints, which + targets may implement more efficiently, such as by installing a jump + into the target agent rather than a trap instruction. The resulting + speedup can be by two orders of magnitude or more, although the + tradeoff is that some program locations on some target architectures + might not allow fast tracepoint installation, for instance if the + instruction to be replaced is shorter than the jump. To request a + fast tracepoint, use the "ftrace" command, with syntax identical to + the regular trace command. + * Changed commands disassemble @@ -101,6 +113,9 @@ teval EXPR, ... Evaluate the given expressions without collecting anything into the trace buffer. (Valid in tracepoint actions only.) +ftrace FN / FILE:LINE / *ADDR + Define a fast tracepoint at the given function, line, or address. + * New options set follow-exec-mode new|same |