* Add initial reverse debugging support
* Add reverse debug icons
* Added an option to stop the debug session and enabled continue and step back
* Added a new icon for stop trace and recolored start trace
* Toggle reverse debug actions when not tracing
* Stop existing trace sessions in stopDebug
* Ported to Rizin
* Set reverse icons to invisible when not in a trace session instead of disabled
* Updated rizin submodule
* Cleaned up step and continue events
* Apply clang format
* Calling updateCursorPosition before moving cursor.
Previously the call to readCurrentDisassemblyOffset in
updateCursorPosition was causing essentially an off-by-one bug since the
cursor was moved prior to checking the current offset.
* Separated highlightCurrentLine and highlightPCLine logic so they can be
called independently when needed.
Previously logic for highlighting the PC was included in highlighting
the current line. This caused the PC to not be highlighed when the
current line was not on-screen and being highlighted.
* Sync/Unsync decompiler widgets.
* Add multiple decompiler widgets with its own decompiler and functions.
* updateWindowTitle() in widgets for decompiler, disassembly, and hexdump.
* save scroll position and reset to that if the newly decompiled function is the same as the previous one
* instructionChanged signal replaced completely by breakpointsChanged in toggle/add breakpoint functions.
* removed addbreakpoint(QString) and toggleBreakpoint(QString)
* Show in action for global variables and functions
* Copy address of global variable or function referenced by the cursor selection
* Rename global variable
* Add symbol exports required for external native plugins to work on Windows
* Make Linux build behave more like Windows so that missing export
annotations can be more easily detected.
* Add generic r2 graph.
* Add Callgraph widgets
* Add more graphviz layouts.
* Fix some edge cases in graphGridLayout that were more likely to appear in callgraphs
* Refactor the code moving some of the logic out of disassemblyGraphWidget making it more reusable