dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
15.03k stars 4.67k forks source link

JIT: consider intermingled debug info dumping #11045

Open AndyAyersMS opened 6 years ago

AndyAyersMS commented 6 years ago

If the jit dumps the debug info (IL offset and variable scope) so it intermingles with the generated assembly it should be somewhat more robust to cascaded diffs than our current table of offsets format. So we could then enable it by default for jit-diffs.

For instance adding one instruction should lead to one diff, not an entire series....

category:implementation theme:debug-dumps skill-level:beginner cost:medium impact:small

AndyAyersMS commented 2 years ago

@jakobbotsch didn't we already do something like this?

jakobbotsch commented 2 years ago

Yes, COMPlus_JitDisasmWithDebugInfo=1. It is disabled by default, perhaps we should consider enabling it by default.