diff options
author | Stan Shebs <shebs@codesourcery.com> | 2010-03-29 23:45:06 +0000 |
---|---|---|
committer | Stan Shebs <shebs@codesourcery.com> | 2010-03-29 23:45:06 +0000 |
commit | 409873ef5c8a7aefdf9fe2fbb83e87ade071be27 (patch) | |
tree | e888cd070ef3be76fddeeba7fa0cdf3dba847d0a /gdb/doc | |
parent | 2aab228b95db7a8ae3864297c9596a359893f1ec (diff) | |
download | gdb-409873ef5c8a7aefdf9fe2fbb83e87ade071be27.zip gdb-409873ef5c8a7aefdf9fe2fbb83e87ade071be27.tar.gz gdb-409873ef5c8a7aefdf9fe2fbb83e87ade071be27.tar.bz2 |
2010-03-29 Stan Shebs <stan@codesourcery.com>
* tracepoint.h (struct uploaded_string): New struct.
(struct uploaded_tp): New fields for source strings.
* breakpoint.c (this_utp, next_cmd): New globals.
(read_uploaded_action): New function.
(create_tracepoint_from_upload): Fill in more parts
of a tracepoint.
* tracepoint.c (encode_source_string): New function.
(trace_save): Write out source strings, fix error checks.
(parse_tracepoint_definition): Add source string parsing.
* remote.c (PACKET_TracepointSource): New packet type.
(remote_download_command_source): New function.
(remote_download_tracepoint): Download source pieces also.
(_initialize_remote): Add packet config command.
* gdb.texinfo (Tracepoint Packets): Describe QTDPsrc.
(General Query Packets): Describe TracepointSource.
Diffstat (limited to 'gdb/doc')
-rw-r--r-- | gdb/doc/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/doc/gdb.texinfo | 44 |
2 files changed, 49 insertions, 0 deletions
diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index f57033c..76d2c88 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,8 @@ +2010-03-29 Stan Shebs <stan@codesourcery.com> + + * gdb.texinfo (Tracepoint Packets): Describe QTDPsrc. + (General Query Packets): Describe TracepointSource. + 2010-03-27 Matt Rice <ratmice@gmail.com> * gdb.texinfo (ARM): Document arguments to "target sim". diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 56dbe5d..57e4f03 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -30732,6 +30732,11 @@ These are the currently defined stub features and their properties: @tab @samp{-} @tab No +@item @samp{TracepointSource} +@tab No +@tab @samp{-} +@tab No + @end multitable These are the currently defined stub features, in more detail: @@ -30825,6 +30830,10 @@ The remote stub accepts and implements the reverse continue packet The remote stub accepts and implements the reverse step packet (@pxref{bs}). +@item TracepointSource +The remote stub understands the @samp{QTDPsrc} packet that supplies +the source form of tracepoint definitions. + @end table @item qSymbol:: @@ -30868,6 +30877,7 @@ encoded). @value{GDBN} will continue to supply the values of symbols @item QTBuffer @item QTDisconnected @itemx QTDP +@itemx QTDPsrc @itemx QTDV @itemx qTfP @itemx qTfV @@ -31269,6 +31279,40 @@ The packet was understood and carried out. The packet was not recognized. @end table +@item QTDPsrc:@var{n}:@var{addr}:@var{type}:@var{start}:@var{slen}:@var{bytes} +@cindex @samp{QTDPsrc} packet +Specify a source string of tracepoint @var{n} at address @var{addr}. +This is useful to get accurate reproduction of the tracepoints +originally downloaded at the beginning of the trace run. @var{type} +is the name of the tracepoint part, such as @samp{cond} for the +tracepoint's conditional expression (see below for a list of types), while +@var{bytes} is the string, encoded in hexadecimal. + +@var{start} is the offset of the @var{bytes} within the overall source +string, while @var{slen} is the total length of the source string. +This is intended for handling source strings that are longer than will +fit in a single packet. +@c Add detailed example when this info is moved into a dedicated +@c tracepoint descriptions section. + +The available string types are @samp{at} for the location, +@samp{cond} for the conditional, and @samp{cmd} for an action command. +@value{GDBN} sends a separate packet for each command in the action +list, in the same order in which the commands are stored in the list. + +The target does not need to do anything with source strings except +report them back as part of the replies to the @samp{qTfP}/@samp{qTsP} +query packets. + +Although this packet is optional, and @value{GDBN} will only send it +if the target replies with @samp{TracepointSource} @xref{General +Query Packets}, it makes both disconnected tracing and trace files +much easier to use. Otherwise the user must be careful that the +tracepoints in effect while looking at trace frames are identical to +the ones in effect during the trace run; even a small discrepancy +could cause @samp{tdump} not to work, or a particular trace frame not +be found. + @item QTDV:@var{n}:@var{value} @cindex define trace state variable, remote request @cindex @samp{QTDV} packet |