Debugging Information Success

Published June 07, 2017
Advertisement


Early this morning, Epoch achieved a minor success in the debugging department. I was able to generate a working PDB file with symbols for a small test program, run the program in Visual Studio and WinDbg, and step through the disassembly.




Along the way, the current Epoch function was correctly tracked, indicating two things: stack unwinding information is working correctly, and function-address-to-symbol mapping is working as well.




The next step is to get line number information piped through to the PDB from the parser. This will be a major haul, but well worth it since it will allow source-level debugging of Epoch programs.




Once that is complete, I plan to tackle type metadata and variable tracking, so that the values of variables can be visualized in the debugger. ThataEUR(TM)s an even bigger lift, so I donaEUR(TM)t expect it any time soon.




That said, I plan on waiting until debugging is in a good state before resuming work on self-hosting, because having debug information available makes that process vastly more convenient and approachable.




All in all itaEUR(TM)s a good day for Epoch!




Source

1 likes 1 comments

Comments

Aardvajk
I've finally grasped what you are doing with the run-time function overloading with the sum types. Looks like a really interesting idea - one of those features that could end up having emergent features that you didn't forsee I suspect, like C++'s templates.

I'm working on a (far simpler) compiler/VM project myself so find these posts really interesting. Keep them coming.
June 09, 2017 05:29 AM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement
Advertisement