Understanding Agent-Based Patching of Compiler Missed Optimizations
For compiler developers, this work identifies the challenge of generalization in automated patching and proposes a method to improve agent-generated patches.
This paper studies how well AI agents can patch compiler missed optimizations, finding that agents often optimize given examples but their patches frequently fail to fully match the developer-intended optimization scope. Historical-knowledge augmentation improves generalization and yields practical benefits.
Compiler missed optimizations refer to cases in which compilers failed to optimize certain code. It takes many compiler developers' efforts to implement or patch such missed optimizations. In this paper, we present a systematic study of how well agents patch compiler missed optimizations. We identify a significant challenge that patching a missed optimization requires more than just fixing the reported case, and instead requires generalizing to similar cases. We construct a benchmark of real-world LLVM missed optimization issues and compare agent-generated patches with patches from developers in terms of optimization scope. Our results show that coding agents often optimize the given examples, but many generated patches either cover only part of the developer-intended scope or partially overlap with it; in some cases, they further generalize beyond the reference patch. We further introduce historical-knowledge augmentation techniques that leverage prior LLVM optimization pull requests through retrieval and distillation, showing that they improve developer-aligned generalization and yield practical benefits when applied to real-world IR.