Emil Pedersen

Conference Talks

LLVM Wyvern Logo

A data-driven approach to debug info quality

2024 LLVM Developers' Meeting talk

Debugging optimized code is frustrating: often, variables are missing. But some of these variables could be salvaged. In this talk, we will present a new analysis that detects when variables are lost in the compiler. This has two advantages: It allows to focus work on fixing optimizer passes that lose the most debug variables, and, by running it on real-world code, it also makes it easy to find concrete test cases where variable debug info is lost. We will use the work done on passes in the Swift frontend as an example, where we were able to increase the number of variables available in LLDB using this approach.

YouTube video | Slides | Conference Website