paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Who’s debugging the debuggers? exposing debug information bugs in optimized binaries

谁来调试调试器?揭示优化二进制中的调试信息缺陷
ASPLOS Proceedings of the 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems2021匹配度 2/10 · 论文关注优化二进制中调试信息的正确性以及编译器/链接器/调试器工具链缺陷,属于编译、测试与调试方向;与用户画像核心的静态分析、LLM/Agent 用于程序分析、浮点程序分析、贝叶斯程序分析均无直接交集,也未涉及 LLM 作为工具。引用 31 inbox
Giuseppe Antonio Di Luna, Davide Italiano, Luca Massarelli, Sebastian Österlund, Cristiano Giuffrida, Leonardo Querzoni
crossref: 2026-09-12

AI 速览

一句话:揭示现代工具链优化阶段未能正确保留调试信息的问题,及其对部署后调试的阻碍。

尽管软件测试不断进步,已部署软件仍会因缺陷而崩溃。调试时,尤其面对“heisenbugs”,需要解释 core dump 并在同一部署二进制上离线复现问题。这要求编译器、链接器和调试器组成的整个工具链正确生成并使用调试信息。然而,现代工具链优化阶段是否正确保留调试信息长期缺乏检查。本文关注这一空白,旨在暴露优化二进制中的调试信息缺陷:在生产二进制中管理调试信息并非易事,常导致工具链缺陷,从而妨碍部署后的调试工作。摘要未披露具体方法与实验数据。

问题
优化后的生产二进制中,调试信息是否正确生成、保留和使用缺乏充分检查,工具链缺陷会阻碍部署后的离线调试。
方法
摘要未给出具体技术方案;论文主旨是暴露现代工具链优化阶段造成的调试信息缺陷。
评估
摘要未提供评估细节与实验结果,仅说明该问题对生产环境调试具有重要意义。
原文摘要(Abstract)

Despite the advancements in software testing, bugs still plague deployed software and result in crashes in production. When debugging issues —sometimes caused by “heisenbugs”— there is the need to interpret core dumps and reproduce the issue offline on the same binary deployed. This requires the entire toolchain (compiler, linker, debugger) to correctly generate and use debug information. Little attention has been devoted to checking that such information is correctly preserved by modern toolchains’ optimization stages. This is particularly important as managing debug information in optimized production binaries is non-trivial, often leading to toolchain bugs that may hinder post-deployment debugging efforts.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@inproceedings{paperbot6099,
  title = {Who’s debugging the debuggers? exposing debug information bugs in optimized binaries},
  author = {Giuseppe Antonio Di Luna and Davide Italiano and Luca Massarelli and Sebastian Österlund and Cristiano Giuffrida and Leonardo Querzoni},
  booktitle = {ASPLOS},
  year = {2021},
  doi = {10.1145/3445814.3446695}
}