TECH : Using automated tests to tune the -Og pipeline

Stephen Tozer

TAGS: LLVM Developers Meeting, Toolchain

Event: 2023 EuroLLVM Developers Meeting

In clang, the -Og flag is intended to run optimizations that will not significantly reduce the quality of the program's debug information. Rather than making informed decisions about which optimizations will preserve debug info, this flag currently uses the -O1 pipeline, to run a few optimizations and hope that debug info will not be significantly affected. This is due to the lack of useful data about how well the various optimization passes in LLVM preserve debug info. In this talk I explain how we at Sony Interactive Entertainment have attempted to solve this problem using Dexter, a tool for testing debug info quality, in an automated test pipeline to empirically explore different pipeline designs to find a fast and debuggable -Og pipeline.

Duration: 5 minutes

Back to top