From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18276 invoked by alias); 2 Jul 2010 06:29:25 -0000 Received: (qmail 18258 invoked by uid 22791); 2 Jul 2010 06:29:23 -0000 X-SWARE-Spam-Status: No, hits=-1.7 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,TW_VC X-Spam-Check-By: sourceware.org Received: from mail-px0-f169.google.com (HELO mail-px0-f169.google.com) (209.85.212.169) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 02 Jul 2010 06:29:16 +0000 Received: by pxi17 with SMTP id 17so2773203pxi.0 for ; Thu, 01 Jul 2010 23:29:14 -0700 (PDT) Received: by 10.142.212.4 with SMTP id k4mr329660wfg.332.1278052154165; Thu, 01 Jul 2010 23:29:14 -0700 (PDT) MIME-Version: 1.0 Received: by 10.143.32.8 with HTTP; Thu, 1 Jul 2010 23:28:54 -0700 (PDT) In-Reply-To: <83fx039kel.fsf@gnu.org> References: <83fx039kel.fsf@gnu.org> From: Hui Zhu Date: Fri, 02 Jul 2010 06:29:00 -0000 Message-ID: Subject: Re: [RFA/DOC] record pic To: Eli Zaretskii Cc: gdb-patches@sourceware.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2010-07/txt/msg00033.txt.bz2 Thanks Eli. On Fri, Jul 2, 2010 at 01:33, Eli Zaretskii wrote: >> From: Hui Zhu >> Date: Thu, 1 Jul 2010 15:12:25 +0800 >> >> +record pic [] >> + =A0Save 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 >> + =A0Set or show whether `record pic' hide the nodes that don't have > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0^^^^ > "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 >> + =A0Set or show whether `record pic' hide the nodes that don't have > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0^^^^ > "hides" > >> + =A0Set or show whether `record pic' hide the nodes that have the > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0^^^^ > "hides" > >> +Default filename is @file{gdb_record_@var{process_id}}.vcg, > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^= ^^^^^^^^^ > @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. =A0"Node"? "each node will be a > line"? =A0What 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. =A0Then this text will > make sense. > >> +Set whether @code{record pic} hide the nodes that don't have > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ^^^^ > "hides" > >> +Set whether @code{record pic} hide the nodes that don't have > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ^^^^ > "hides" > >> +Set whether @code{record pic} hide the nodes that have the same > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ^^^^ > "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 * 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 [] + 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.