Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-dev] DSF-GDB: How to support targets which natively support reverse execution ?

I’m trying to use reverse debugging with my target. Contrary to some other targets it has “native” support of reverse debugging -- this means it does not require to use “process record and replay” to do reverse debugging.


The following bit is taken from the gdb documentation:


“The process record and replay target supports reverse execution (see Reverse Execution), even if the platform on which the inferior runs does not. However, the reverse execution is limited in this case by the range of the instructions recorded in the execution log. In other words, reverse execution on platforms that don't support it directly can only be done in the replay mode.”


This implies that targets exist which do directly support reverse execution, without supporting process record and replay.


In my case reverse execution is directly supported, however the problem is that DSF-GDB as part of its initialization is trying to switch on record and replay by issuing the “record” gdb command (file line 435 and following, “enableReverseMode” method). Since record and replay is not supported for my target the “record” command fails, which makes DSF-GDB believe that reverse execution is not supported for the target.


I’m not sure what the proper solution to support both types of targets would be ?

How about issuing the “record” command, but still enable reverse execution if the command fails ?


Thanks !



Back to the top