epasveer / seer

Seer - a gui frontend to gdb
GNU General Public License v3.0
2.11k stars 67 forks source link

Add support for Reverse Debugging. #97

Closed epasveer closed 1 year ago

epasveer commented 1 year ago

GDB has a nice feature to support reverse debugging. That is, stepping backwards through the code. Add this to the gui.

https://www.sourceware.org/gdb/news/reversible.html

Need to turn on reverse mode.

target record-full

Then you can next/step as normal. Then next/step backwards.

reverse-next
reverse-step

See the sourceware page for for description. It has a couple links to other wikis that have more info.

Interestingly, there is a direction mode. This might be a good start for the gui.

set exec-direction [forward | reverse]

A modal command: when exec-direction is set to "reverse", all ordinary execution commands
such as "step" and "continue" will cause the program being debugged to run in reverse.
epasveer commented 1 year ago

https://sourceware.org/gdb/onlinedocs/gdb/Process-Record-and-Replay.html

epasveer commented 1 year ago

This is implemented.