论文
Archer:面向编译器优化的代理审查
Archer: Towards Agentic Review for Compiler Optimizations
摘要
现代编译器经常更新,但专家审查能力非常有限,导致集成延迟,并且在某些情况下,微妙的语义错误进入编译器代码库。使用现代通用代码审查代理自动化代码审查过程可能是可行的,但由于编译器的复杂性,它面临着严峻的挑战。在本文中,我们使用 LLVM 作为目标编译器,并介绍了 Archer,第一个用于编译器优化的自动代理代码审查工具。阿切尔通过使用指导分析的义务和确定性验证守卫来限制两端的代理审查过程,以仅接受由可执行证据支持的发现。我们在过去两个月的 LLVM 中对 Archer 进行了 70 个开放 PR 和 328 个封闭 PR 的评估。审查结果令人震惊且令人担忧:Archer 发现 21% 的开放 PR 和 11% 的封闭 PR 存在错误,即引入了语义错误,例如 LLVM 中的错误编译。我们的研究结果揭示了大型编译器项目中严格审查能力的关键差距,并证明了 Archer 作为额外审查者的实际价值。