On 30 Oct 2010, at 13:07, Graeme Geldenhuys wrote:

> On 30 October 2010 11:26, Jonas Maebe <jonas.ma...@elis.ugent.be> wrote:
>> 
>> Reverse execution is a new feature that was added to gdb 7.0, although you 
>> probably want to use 7.2 for the extra bug fixes. The supported targets are 
>> listed at http://www.gnu.org/software/gdb/news/reversible.html (nobody has 
>> added support for Windows yet) and the instructions on how to use it are on 
>> the wiki page linked from that page.
> 
> That's not exactly what I meant. I remember back in Delphi 7 (maybe
> even as far back as D5), that I changed the execution point, so it can
> re-execute a procedure but with different values - no need to
> recompile or restart the application.

Reverse execution does not involve recompiling nor restarting the application 
either.

> Delphi 2010 has improved on that by simply dragging and dropping the
> execution point while in debug mode. I did some googleing and remember
> I fiddled with the CPU registers to accomplish what I did, but
> couldn't remember what registers.
> 
> Google found my exact answer. I see I can modify the CPU registers in
> MSEide, but I don't think this is possible with Lazarus IDE. Just
> tried, and it seems to work in MSEide - I'll do more testing to
> confirm. The register in question was EIP.

Simply changing EIP is less safe that reverse execution, because it does not 
roll back changes to memory or other registers that may be important.


Jonas_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to