paperbot · PL 论文追踪

全部论文 待读 收藏

P2 SIRO: Empowering Version Compatibility in Intermediate Representations via Program Synthesis

SIRO:借助程序合成实现中间表示的版本兼容
ASPLOS Proceedings of the 29th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 32024匹配度 3/10 · 论文聚焦 LLVM IR 版本兼容的程序合成与静态分析工具支持,属于 PL/编译与程序合成,但未涉及 LLM/Agent 与静态分析的交叉,也未覆盖浮点程序分析或贝叶斯程序分析等核心方向。引用 8 inbox
Bowen Zhang, Wei Chen, Peisen Yao, Chengpeng Wang, Wensheng Tang, Charles Zhang
crossref: 2026-09-12dblp: 2026-09-12

AI 速览

一句话:提出 Siro,用分治骨架与程序合成自动生成 LLVM IR 版本翻译器,并成功辅助静态分析与 fuzzing。

IR 版本不兼容使基于中间表示的软件(如静态分析器)难以复用既有工具。本文提出 Siro,一个在不同版本 IR 之间进行转换的程序变换框架。其方法采用分治算法骨架,并利用程序合成在巨大搜索空间中自动生成 IR 指令翻译器,以减少人工实现。作者在 LLVM IR 上实例化 Siro,为十个不同版本对生成了可用的翻译器,每个耗时少于三小时。评估中,这些翻译器协助静态分析器和 fuzzer 报告漏洞,准确率分别达到 91% 和 95%;Siro 已在真实场景部署,帮助现有静态分析器保护 Linux 内核并发现 80 个新漏洞。

问题
基于 IR 的软件(如静态分析器)常面临不同 IR 版本不兼容,导致无法直接复用,人工编写版本翻译器代价高。
方法
Siro 采用分治算法骨架,并通过程序合成在巨大搜索空间中自动生成 IR 指令翻译器;在 LLVM IR 上实例化。
评估
为十个版本对在 3 小时内生成翻译器;辅助静态分析器和 fuzzer 的准确率分别达 91% 和 95%,部署后发现 Linux 内核 80 个新漏洞。
原文摘要(Abstract)

This paper presents Siro, a new program transformation framework that translates between different versions of Intermediate Representations (IR), aiming to better address the issue of IR version incompatibility on IR-based software, such as static analyzers. We introduce a generic algorithm skeleton for Siro based on the divide-and-conquer principle. To minimize labor-intensive tasks of the implementation process, we further employ program synthesis to automatically generate translators for IR instructions within vast search spaces. Siro is instantiated on LLVM IR and has effectively helped to produce ten well-functioning IR translators for different version pairs, each taking less than three hours. From a practical perspective, we utilize these translators to assist static analyzers and fuzzers in reporting bugs and achieving accuracy of 91% and 95%, respectively. Remarkably, Siro has already been deployed in real-world scenarios and makes existing static analyzers available to safeguard the Linux kernel by uncovering 80 new vulnerabilities.

链接与引用

DOI 原文 · DBLP

BibTeX
@inproceedings{ZhangCYWTZ24,
  title = {SIRO: Empowering Version Compatibility in Intermediate Representations via Program Synthesis},
  author = {Bowen Zhang and Wei Chen and Peisen Yao and Chengpeng Wang and Wensheng Tang and Charles Zhang},
  booktitle = {ASPLOS},
  year = {2024},
  doi = {10.1145/3620666.3651366}
}