~/talk

Source-level debugging of compiler-optimised code: ill-posed, but not impossible

Talkat Onward! 2024 · 2024-10-23..10-25· [compilers-and-language-design]
links:none on file
slides:none on file

Argues it is possible to get both full source-level debuggability and full optimisation by residualize state into the debugging metadata rather than assuming all state lives in the object program, and gives a working example that reconstructs an eliminated loop index from pointer arithmetic. Shows DWARF limitations and recent extensions, proposes a partial correctness criterion for debug metadata, and cites the limit case of run unoptimized and optimized in parallel as a conceptual proof; discusses practical collection costs and debug info as Turing-powerful stack machine.

AI-written summary · about

  1. 0:00Source-level debugging challenges
  2. 1:04Debugging without environments
  3. 4:13Recompiling without optimization isn't solution
  4. 7:01Debugging lags behind optimizations
  5. 9:26Residualizing state in debug info
  6. 12:36Hardware’s residual state management
  7. 14:02State loss and need for residualization
  8. 15:49Open challenges in residualization
  9. 16:52Side-by-side execution limit case
  10. 17:55Debugging program variants
  11. 18:39Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.