Skip to content
This repository has been archived by the owner on Nov 1, 2020. It is now read-only.

Debugging info #1180

Closed
manu-st opened this issue Apr 21, 2016 · 2 comments
Closed

Debugging info #1180

manu-st opened this issue Apr 21, 2016 · 2 comments

Comments

@manu-st
Copy link

manu-st commented Apr 21, 2016

I'm looking at how to debug a native program using gdb/lldb. On AMD64, you can actually step into the source code of managed code. However it does not seem possible to list all locals and arguments. From what I can gather, the debugging info seems to be generated by RyuJit, does it means that for the non-C++ backends, it will rely on RyuJit for debug info and that therefore any improvements on this topic should be done in CoreCLR?

@jkotas
Copy link
Member

jkotas commented Apr 21, 2016

RyuJIT has everything required for this. It generates IL->native map for both code and local variables.

The missing parts are in CoreRT and ObjectWriter (that lives in llilc repo). Merge the source code -> IL map and IL->native map and write the result as PDB or DWARF.

The implementation of the local var debug info was started in #794. It works for some limited cases, but it is not finished. Tracked by set of issues: https://github.com/dotnet/corert/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen+label%3ACodeGen+DebugInfo

@MichalStrehovsky
Copy link
Member

Tracked in e.g. #783, #785.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants