一句话:研究 C 编译器优化引入缺陷的检测,计划通过大规模缺陷分析与优化导向 fuzzing 提升测试可靠性。
现代 C 编译器仍存在会导致错误二进制程序的缺陷,优化 pass 因激进代码变换尤其容易引入错误。现有测试方法主要关注核心正确性,对优化行为覆盖有限,许多优化引入的缺陷难以检测,影响也不清楚。该博士计划首先开展大规模实证研究,分析现有测试框架报告的缺陷与官方编译器仓库记录,识别优化失败的重复模式及测试实践弱点。基于此,设计面向优化的 fuzzing 框架,引导测试生成走向易触发错误变换的上下文,并构建配套优化测试套件。计划目标(尚无实验结果)是深化对优化与测试交互的理解,提升 C 编译器可靠性。
Modern C compilers play a critical role in software development, yet they still contain defects that can lead to incorrect binary programs. Optimization passes are especially risky because they apply aggressive code transformations. However, existing testing methods focus mainly on core correctness and give limited attention to optimization behavior. Thus, many optimization-introduced bugs remain hard to detect, and their broader impact is not well understood. My doctoral research will investigate how current compiler testing approaches perform in detecting optimization-related defects. I plan to conduct a large-scale study that examines bugs reported by existing testing frameworks together with those documented in official compiler repositories. This study will help identify recurring patterns in optimization failures and highlight weaknesses in current testing practice. Using the insights from this analysis, I will design an optimization-oriented fuzzing framework that guides test generation toward transformation contexts that frequently lead to incorrect binary program. I will also build an accompanying optimization-focused test suite to support compiler developers and researchers. The overall goal of my work is to provide a deeper understanding of how optimization interacts with testing and to improve the reliability of modern C compilers.