Static Analysis of Endian Portability by Abstract InterpretationVirtual
We present a static analysis of endian portability for C programs. Our analysis can infer that a given program, or two syntactically close versions thereof, compute the same outputs when run with the same inputs on platforms with different byte-orders, a.k.a. endiannesses. We target low-level C programs that abuse C pointers and unions, hence rely on implementation-specific behaviors undefined in the C standard.
Our method is based on abstract interpretation, and parametric in the choice of a numerical abstract domain. We first present a novel concrete collecting semantics, relating the behaviors of two versions of a program, running on platforms with different endiannesses. We propose a joint memory abstraction, able to infer equivalence relations between little- and big-endian memories. We introduce a novel symbolic predicate domain to infer relations between individual bytes of the variables in the two programs, which has near-linear cost, and the right amount of relationality to express (bitwise) arithmetic properties relevant to endian portability. We implemented a prototype static analyzer, able to scale to large real-world industrial software, with zero false alarms.
Thu 8 DecDisplayed time zone: Auckland, Wellington change
10:30 - 12:00 | ICFP and SASCOVID Time Papers In Person at Seminar Room LG004 Chair(s): Peter Thiemann University of Freiburg, Germany | ||
10:30 30mTalk | Composing and decomposing op-based CRDTs with semidirect products COVID Time Papers In Person Matthew Weidner Carnegie Mellon University, Heather Miller Carnegie Mellon University, USA, Christopher Meiklejohn Carnegie Mellon University Link to publication DOI | ||
11:00 30mTalk | Improving Thread-Modular Abstract Interpretation COVID Time Papers In Person Michael Schwarz Technische Universität München, Simmo Saan University of Tartu, Estonia, Helmut Seidl Technische Universität München, Kalmer Apinis University of Tartu, Estonia, Julian Erhard Technical University of Munich, Vesal Vojdani University of Tartu Link to publication DOI | ||
11:30 30mTalk | Static Analysis of Endian Portability by Abstract InterpretationVirtual COVID Time Papers In Person David Delmas Airbus & Sorbonne Université, Abdelraouf Ouadjaout Sorbonne Université, Antoine Miné Sorbonne Université Link to publication DOI |