-
Notifications
You must be signed in to change notification settings - Fork 5k
Generating Debug Info for interpreted bytecode #114139
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
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copilot wasn't able to review any files in this pull request.
Files not reviewed (7)
- src/coreclr/inc/cordebuginfo.h: Language not supported
- src/coreclr/interpreter/compiler.cpp: Language not supported
- src/coreclr/interpreter/compiler.h: Language not supported
- src/coreclr/interpreter/compileropt.cpp: Language not supported
- src/coreclr/vm/eetwain.cpp: Language not supported
- src/coreclr/vm/interpexec.cpp: Language not supported
- src/coreclr/vm/stackwalk.cpp: Language not supported
96e8854
to
37b61a8
Compare
37b61a8
to
48a953d
Compare
48a953d
to
98bb9c4
Compare
98bb9c4
to
d908781
Compare
@cshung I don't actually see the rename from |
Also, if we wanted to make a rename like this, it should be done in a separate PR to not to obscure the real change here. |
This change produces the debug info for interpreted byte code.
Changes:
On the compiler:
nativeOffset
, so we have the liveness of all variables and the nativeOffset for all instruction.On the stack walker:
SP
topFrame
, we also setFP
topFrame->pStack
, that is because the offset of the variables are relative topFrame->pStack
, and so the debugger needs to know about it, and we chose to report that value through theFP
.On the debugger:
REGNUM_FP
is not defined for AMD64 and is causing problem, just define it there.The change is tested under SOS so that if we set a breakpoint inside the interpreter routine and do a
!clrstack -i -a
, we will be able to see the argument and local variables values.@janvorli
@BrzVlad
@kg
@dotnet/dotnet-diag