-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Windows debug information prototype #2245
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…rovide API method to install it
…th for use when debugging native image with gdb
…text section for debug
…ens via primaries within each class entry
Since @adinn s PR is on master you will have to rebase your PR against latest master (i.e. rebase https://github.com/stooke/graal/tree/pr_debug_pecoff_prototype to https://github.com/oracle/graal/) |
…g_pecoff_prototype
…g_pecoff_prototype
…g_pecoff_prototype
…g_pecoff_prototype
A full rebase is not going well - too many conflicts (this could be my inexperience with rebase). It would be more expedient for me to open a new PR using a repo cloned directly from github/oracle instead of github/adinn. Is that okay? |
Whatever works best for you is fine with us. |
I have created PR #2396 to replace this, with a properly rebased and cleaned up commit history. |
This PR is for an initial implementation of debug support for Graal on Windows. At this stage I submit it more for discussion before I go much further down this road.
The patch allows Graal to emit CodeView 4 records into windows .obj files, which the windows linker then moves to PDB files at link time. Visual Studio can then open the executable, breakpoints can be set, and single-steping, etc. will work.
Variables, and type information are not currently supported, and there is limited support for stack frames.
I work closely with Andrew Dinn @adinn on debug support, so my code makes use of his previous work; I duplicate some of the shared classes from his PR here.
There are some differences in how I approach line information, but these are currently compile-time switches. For more details, please see DEBUGINFO_WINDOWS.md.