Publication Type
Conference Proceeding Article
Version
publishedVersion
Publication Date
7-2020
Abstract
In a large software system such as the Linux kernel, there is a continual need for large-scale changes across many source files, triggered by new needs or refined design decisions. In this paper, we propose to ease such changes by suggesting transformation rules to developers, inferred automatically from a collection of examples. Our approach can help automate large-scale changes as well as help understand existing large-scale changes, by highlighting the various cases that the developer who performed the changes has taken into account. We have implemented our approach as a tool, Spinfer. We evaluate Spinfer on a range of challenging large-scale changes from the Linux kernel and obtain rules that achieve 86% precision and 69% recall on average.
Discipline
Software Engineering
Research Areas
Software and Cyber-Physical Systems
Publication
Proceedings of the USENIX Annual Technical Conference (USENIX ATC 2020): July 15-17, 2020
First Page
1
Last Page
14
ISBN
9781939133144
Publisher
USENIX Association
City or Country
Boston
Citation
SERRANO, Lucas; NGUYEN, Van-Anh; THUNG, Ferdian; JIANG, Lingxiao; LO, David; LAWALL, Julia; and MULLER, Gilles.
SPINFER: Inferring semantic patches for the Linux kernel. (2020). Proceedings of the USENIX Annual Technical Conference (USENIX ATC 2020): July 15-17, 2020. 1-14.
Available at: https://ink.library.smu.edu.sg/sis_research/5538
Copyright Owner and License
Authors
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-No Derivative Works 4.0 International License.
Additional URL
https://www.usenix.org/conference/atc20/presentation/serrano