paperbot · PL 论文追踪

全部论文 待读 收藏

P2 ReFuzzer: Feedback-Driven Approach to Enhance Validity of LLM-Generated Test Programs

ReFuzzer:反馈驱动方法提升LLM生成测试程序的有效性
ASE 2025 40th IEEE/ACM International Conference on Automated Software Engineering (ASE)2025匹配度 4/10 · 该工作属于“LLM 生成测试程序 + 反馈修复”的编译器模糊测试方向,与“AI→PL”有一定亲缘关系,但落点是测试程序生成与覆盖率提升,而非用户核心关注的静态分析/形式化验证,也不涉及浮点程序分析或贝叶斯程序分析。此外其反馈循环依赖本地 LLM(通常为较弱模型),与用户偏好建立在当前强模型之上的研究不符。引用 0 inbox
Iti Shree, Karine Even-Mendoza, Tomasz Radzik
crossref: 2026-09-12

AI 速览

一句话:提出ReFuzzer,用本地LLM反馈循环修正生成程序,将编译器模糊测试程序有效率提升至约97%并提高覆盖率。

现有基于LLM的编译器模糊测试器常生成语法或语义无效的测试程序,限制了其测试编译器优化和后端组件的能力。ReFuzzer通过本地LLM构建反馈循环,在程序执行前系统检测并修正编译期与运行期违规(如除零、数组越界访问),过滤错误程序,从而生成多样且有效的测试程序。作者在LLVM/Clang上针对黑盒、灰盒和白盒模糊测试进行评估。结果显示,测试程序有效率从47.0–49.4%提升至96.6–97.3%,每个测试程序平均处理时间为2.9–3.5秒(双GPU机器)。此外,重模糊显著提高了关键优化和IR生成组件的代码覆盖率,例如向量化覆盖率在黑盒、灰盒和白盒模糊测试中分别获得9.2%、2.3%和7.1%的绝对提升。

问题
基于LLM的编译器模糊测试器常生成语法或语义无效的测试程序,导致难以有效触发编译器优化与后端组件中的缺陷。
方法
ReFuzzer使用本地LLM构建反馈循环,在运行前检测并修正编译期和运行期违规(如除零、越界访问),过滤错误程序并生成多样且有效的测试程序。
评估
在LLVM/Clang上评估黑盒、灰盒和白盒模糊测试,测试程序有效率从47.0–49.4%提升至96.6–97.3%,平均每个程序处理2.9–3.5秒;向量化等优化与IR生成组件的覆盖率显著提升,例如向量化覆盖率分别绝对提升9.2%、2.3%和7.1%。
原文摘要(Abstract)

Existing LLM-based compiler fuzzers often produce syntactically or semantically invalid test programs, limiting their effectiveness in exercising compiler optimisations and backend components. We introduce ReFuzzer, a framework for refining LLM-generated test programs by systematically detecting and correcting compilation and runtime violations (e.g. division by zero or array out-of-bounds accesses). ReFuzzeremploys a feedback loop with a local LLM to validate and filter erroneous programs before execution, improving fuzzing effectiveness beyond crash detection and enabling the generation of diverse yet valid test programs.We evaluated ReFuzzer’s effectiveness across black-, grey-and white-box fuzzing approaches targeting LLVM/Clang. ReFuzzerimproved test programs’ validity from 47.0–49.4% to 96.6–97.3%, with an average processing time of 2.9–3.5 s per test program on a dual-GPU machine. Further, refuzzing significantly increased code coverage in critical optimisation and IR generation components. For example, vectorization coverage had an absolute of 9.2%, 2.3%, and 7.1% improvement in black-, grey-, and white-box fuzzing, enhancing testing effectiveness.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot9380,
  title = {ReFuzzer: Feedback-Driven Approach to Enhance Validity of LLM-Generated Test Programs},
  author = {Iti Shree and Karine Even-Mendoza and Tomasz Radzik},
  booktitle = {ASE},
  year = {2025},
  doi = {10.1109/ase63991.2025.00364}
}