FEX/docs/Debugger.md

31 lines
1.1 KiB
Markdown
Raw Normal View History

2019-07-13 09:41:34 +00:00
# FEX - Debugger GUI
---
FEX has a debugger GUI for debugging the translation of x86 code.
This UI is written in [Dear ImGui](https://github.com/ocornut/imgui) since it is purely for debugging and not user facing.
## Features
* Stopping code execution at any point
* Single stepping code
* ELF code loading
* Test Harness code loading
* CPU State inspection
* IR inspection
* CF inspection of IR
* Application stderr, stdout viewing
* Disassembler for viewing both guest and host code
## Nice to have
* IR writing and direct compiling
* Requires writing an IR lexer
* Profiling of compiled blocks directly in debugger
* Save CPU state prior to running, time compiled block for microprofiling
* Save all state to file to allow offline inspection and profiling
* Save original code
* Save CPU state on entry
* Save IR
* Save compiled host code
* Profiling data
* Allow comparison of all state before(What was saved to file) and after (New version compiled in this version of FEX for iterative debugging)
* Single stepping of IR state and inspection of SSA values
* Complete disconnection of debugger from FEXCore to ensure robustness if core crashes.