From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19560 invoked by alias); 28 Aug 2009 17:00:12 -0000 Received: (qmail 19546 invoked by uid 22791); 28 Aug 2009 17:00:10 -0000 X-SWARE-Spam-Status: No, hits=-2.6 required=5.0 tests=BAYES_00 X-Spam-Check-By: sourceware.org Received: from smarthost01.mail.zen.net.uk (HELO smarthost01.mail.zen.net.uk) (212.23.3.140) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 28 Aug 2009 17:00:00 +0000 Received: from [82.69.137.158] (helo=[10.17.20.102]) by smarthost01.mail.zen.net.uk with esmtp (Exim 4.63) (envelope-from ) id 1Mh4nq-0006Je-82; Fri, 28 Aug 2009 16:59:54 +0000 Message-ID: <4A980D06.40002@undo-software.com> Date: Fri, 28 Aug 2009 17:12:00 -0000 From: Greg Law User-Agent: Thunderbird 2.0.0.21 (X11/20090320) MIME-Version: 1.0 To: Eli Zaretskii CC: jakob@virtutech.com, gdb-patches@sourceware.org Subject: Re: GDB MI Reverse Commands added [2 of 3] References: <00cf01ca265a$d4110dc0$7c332940$@com> <83tyzucw8p.fsf@gnu.org> <002b01ca27c7$1316d8c0$39448a40$@com> <833a7ccj52.fsf@gnu.org> <4A97BA98.4010105@undo-software.com> <83y6p4aweu.fsf@gnu.org> In-Reply-To: <83y6p4aweu.fsf@gnu.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Originating-Smarthost01-IP: [82.69.137.158] 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: 2009-08/txt/msg00519.txt.bz2 Eli Zaretskii wrote: >> Date: Fri, 28 Aug 2009 12:08:08 +0100 >> From: Greg Law >> CC: Jakob Engblom , gdb-patches@sourceware.org >> >> Eli Zaretskii wrote: >>>> From: "Jakob Engblom" >>>> Cc: >>>> Date: Fri, 28 Aug 2009 12:05:29 +0200 >>>> >>>> "Resumes the execution of the inferior program until a breakpoint is >>>> encountered, or until the inferior exits. If the @samp{--reverse} >>>> option is specified, resumes the reverse execution of the inferior >>>> program until a breakpoint is encountered, or until the execution >>>> reaches that start of the inferior. " >>> ^^^^ >>> You meant "the", I presume. >>> >>> Otherwise, this is fine, thanks. >> Would it be more accurate to say "start of the record log"? > > I don't think so, because reverse debugging is not limited to record > and replay. > > But I see what you mean. Maybe this: > > or until the execution reaches the point that is as close to the > inferior's start as @value{GDBN} can. (This could be the start of > the inferior executable code or the start of the record log, for > example.) Yes, that's ok. But I'm struggling to think of a plausible way in which a target could provide reverse debugging without some kind of log. Any stateful program will clobber its state as it runs, and so to go backwards you need to have a log somewhere that tells you what the state was before you clobbered it. And it will not be possible to go backwards to a time before you started recording. Or have I misunderstood you? (Note: I'm more interested in the semantics of reverse debugging here rather than the exact wording in the manual :) Greg -- Greg Law, Undo Software http://undo-software.com/