BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Talks.cam//talks.cam.ac.uk//
X-WR-CALNAME:Talks.cam
BEGIN:VEVENT
SUMMARY:How debuggable is your (compiler-optimised) program? - Stephen Kel
 l\, King's College London
DTSTART:20240222T150000Z
DTEND:20240222T160000Z
UID:TALK211807@talks.cam.ac.uk
CONTACT:Ryan Gibb
DESCRIPTION:Source-level debugging of compiled code only works when compil
 ers generate\nthe necessary metadata. Currently\, that means it rarely wor
 ks well\, at\nleast in optimising ahead-of-time compilers like LLVM and GC
 C. I'll give an\noverview of how compiler-generated metadata enables sourc
 e-level debugging\,\nthe challenges of making it work for optimised code\,
  and our recent work on\ndoing better. Whereas compilers have so far taken
  a "best-effort" approach\nwith no particular correctness criterion\, I'll
  outline a correctness\ncondition for local variable information that seem
 s to balance the relevant\ntrade-offs. I'll then describe a tool we've bui
 lt that can use this to\nmechanically find valid LLVM bugs capturing avoid
 able losses or corruptions\nof debug info. A theme will be how the textboo
 k framing of compiler\noptimisations as "eliminating" code or variables co
 uld be more\nconstructively thought of as "residualising" them into debug 
 info\; I'll\nfinish with some thoughts on what that could mean for how com
 pilers are\nbuilt. All this is joint work with J. Ryan Stinnett.\n
LOCATION:FW11
END:VEVENT
END:VCALENDAR
