From: Hui Zhu <teawater@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: gdb-patches@sourceware.org
Subject: Re: [RFA/DOC] record pic
Date: Fri, 02 Jul 2010 06:29:00 -0000 [thread overview]
Message-ID: <AANLkTil8GPvq39y8PYjYeWrKZiT1OocoGOD5Zwfx1U6E@mail.gmail.com> (raw)
In-Reply-To: <83fx039kel.fsf@gnu.org>
Thanks Eli.
On Fri, Jul 2, 2010 at 01:33, Eli Zaretskii <eliz@gnu.org> wrote:
>> From: Hui Zhu <teawater@gmail.com>
>> Date: Thu, 1 Jul 2010 15:12:25 +0800
>>
>> +record pic [<FILENAME>]
>> + Save the execution log to a vcg file.
>
> What's a vcg file?
VCG file is "Visualization of Compiler Graphs". I didn't find other
good define about it. :(
There are some introduce about it.
http://gcc.gnu.org/news/egcs-vcg.html
http://rw4.cs.uni-sb.de/~sander/html/gsvcg1.html
To see the file. I suggest use http://code.google.com/p/vcgviewer/
>
>> +set record pic hide-nofunction on|off
>> + Set or show whether `record pic' hide the nodes that don't have
> ^^^^
> "hides"
>
> But what does it mean to "hide the nodes"?
The each line or each function will be show in vcg file as a node.
Sometime, we don't want show it. So hide the nodes.
>
>> +set record pic hide-nosource on|off
>> + Set or show whether `record pic' hide the nodes that don't have
> ^^^^
> "hides"
>
>> + Set or show whether `record pic' hide the nodes that have the
> ^^^^
> "hides"
>
>> +Default filename is @file{gdb_record_@var{process_id}}.vcg,
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> @file{gdb_record_@var{process_id}.vcg}
>
>> +When @var{type} is set to @code{line} (the default), each node of vcg
>> +file that @code{record pic} saved will be a line of the inferior.
>> +
>> +When @var{type} is set to @code{function}, each node of vcg file that
>> +@code{record pic} saved will be a function of the inferior.
>
> This is a charade that I cannot unlock. "Node"? "each node will be a
> line"? What does all that mean?
>
> I think it would help if you explain up front what is the VCG file,
> how it can be used once created, and what is the significance of
> having each "node" in it be line or function. Then this text will
> make sense.
>
>> +Set whether @code{record pic} hide the nodes that don't have
> ^^^^
> "hides"
>
>> +Set whether @code{record pic} hide the nodes that don't have
> ^^^^
> "hides"
>
>> +Set whether @code{record pic} hide the nodes that have the same
> ^^^^
> "hides"
>
> I will get back and review the rest when you add those explanations
> and I understand better what is this all about.
>
> Thanks.
>
2010-07-02 Hui Zhu <teawater@gmail.com>
* gdb.texinfo: (Process Record and Replay): Add documentation
for command "record pic".
---
NEWS | 18 ++++++++++++++++
doc/gdb.texinfo | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 80 insertions(+)
--- a/NEWS
+++ b/NEWS
@@ -158,6 +158,24 @@ qXfer:statictrace:read
* New commands
+record pic [<FILENAME>]
+ Save the execution log to a VCG file.
+
+set record pic type line|function
+ Set or show the type of the nodes that `record pic' saved.
+
+set record pic hide-nofunction on|off
+ Set or show whether `record pic' hides the nodes that don't have
+ the function name.
+
+set record pic hide-nosource on|off
+ Set or show whether `record pic' hides the nodes that don't have
+ the source message.
+
+set record pic hide-sameaddr on|off
+ Set or show whether `record pic' hides the nodes that have the
+ same address node in vcg file.
+
eval template, expressions...
Convert the values of one or more expressions under the control
of the string template to a command line, and call it.
--- a/doc/gdb.texinfo
+++ b/doc/gdb.texinfo
@@ -5657,6 +5657,68 @@ Default filename is @file{gdb_record.@va
Restore the execution log from a file @file{@var{filename}}.
File must have been created with @code{record save}.
+@kindex record pic
+@item record pic @var{filename}
+Save the execution log to a VCG file @file{@var{filename}}.
+Default filename is @file{gdb_record_@var{process_id}.vcg},
+where @var{process_id} is the process ID of the inferior.
+
+@kindex set record pic type
+@item set record pic type @var{type}
+Set the type of the nodes that @code{record pic} saved.
+
+When @var{type} is set to @code{line} (the default), each node of vcg
+file that @code{record pic} saved will be a line of the inferior.
+
+When @var{type} is set to @code{function}, each node of vcg file that
+@code{record pic} saved will be a function of the inferior.
+
+@kindex show record pic type
+@item show record pic type
+Show the current setting of @code{pic type}.
+
+@kindex set record pic hide-nofunction
+@item set record pic hide-nofunction
+Set whether @code{record pic} hides the nodes that don't have
+the function name.
+
+If ON (the default), @code{record pic} will hides the nodes that don't
+have the function name.
+
+@kindex show record pic hide-nofunction
+@item show record pic hide-nofunction
+Show the current setting of @code{pic hide-nofunction}.
+
+@kindex set record pic hide-nosource
+@item set record pic hide-nosource
+Set whether @code{record pic} hides the nodes that don't have
+the source message.
+
+If ON (the default), @code{record pic} will hides the nodes that
+don't have the source message.
+
+@kindex show record pic hide-nosource
+@item show record pic hide-nosource
+Show the current setting of @code{pic hide-nosource}.
+
+@kindex set record pic hide-sameaddr
+@item set record pic hide-sameaddr
+Set whether @code{record pic} hides the nodes that have the same
+address node in vcg file.
+
+If ON (the default), @code{record pic} will hides the nodes that have
+the same address node in vcg file. And @code{record pic} will show
+the execute count number of this node in format @code{c:number}
+
+If OFF, @code{record pic} will show the nodes that have the same
+address node in vcg file. And @code{record pic} will show the
+instruction number in format @code{i:number} that
+@value{record goto} support.
+
+@kindex show record pic hide-same
+@item show record pic hide-same
+Show the current setting of @code{pic hide-same}.
+
@kindex set record insn-number-max
@item set record insn-number-max @var{limit}
Set the limit of instructions to be recorded. Default value is 200000.
next prev parent reply other threads:[~2010-07-02 6:29 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-01 7:12 Hui Zhu
2010-07-01 17:31 ` Eli Zaretskii
2010-07-02 6:29 ` Hui Zhu [this message]
2010-08-20 9:22 ` Eli Zaretskii
2010-08-23 8:26 ` Hui Zhu
2010-08-23 16:35 ` Eli Zaretskii
2010-08-24 3:19 ` Hui Zhu
2010-08-24 17:22 ` Eli Zaretskii
2010-08-25 2:28 ` Hui Zhu
2010-08-27 14:40 ` Joel Brobecker
2010-08-27 15:50 ` Eli Zaretskii
2010-08-27 15:58 ` Joel Brobecker
2010-08-28 1:15 ` Hui Zhu
2010-08-28 1:24 ` Joel Brobecker
2010-09-01 18:21 ` Michael Snyder
2010-09-01 18:28 ` Joel Brobecker
2010-09-01 23:04 ` Joel Brobecker
2010-09-02 1:21 ` Joel Brobecker
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=AANLkTil8GPvq39y8PYjYeWrKZiT1OocoGOD5Zwfx1U6E@mail.gmail.com \
--to=teawater@gmail.com \
--cc=eliz@gnu.org \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).