Fri 25 Oct 2024 11:20 - 11:40 at San Gabriel - Memory Management and Analysis 1 Chair(s): Amal Ahmed

End-to-End Translation Validation is the problem of verifying the executable code generated by a compiler against the corresponding input source code for a single compilation. This becomes particularly hard in the presence of dynamically allocated local memory: in the context of a C procedure, local memory may be allocated due to constant-length local arrays, address-taken local variables, address-taken formal parameters, variable-length local arrays, procedure-call arguments (including variadic arguments), and the alloca() operator. We provide an execution model and an associated algorithm to soundly convert this complex verification task into first-order logic queries that an off-the-shelf SMT solver can handle efficiently. In our experiments, we perform blackbox translation validation of C programs, involving these local memory allocation constructs, against their corresponding assembly implementations generated by an optimizing compiler. We demonstrate that our algorithm can automatically search for an equivalence proof for procedure pairs containing dynamic local memory (de)allocations with 100+ source lines of code and 200+ assembly instructions, in the presence of complex loop and vectorizing transformations, within a resource budget of eight CPU-hours.

Fri 25 Oct

Displayed time zone: Pacific Time (US & Canada) change

11:00 - 12:20
Memory Management and Analysis 1OOPSLA 2024 at San Gabriel
Chair(s): Amal Ahmed Northeastern University, USA
11:00
20m
Talk
A Dependent Nominal Physical Type System for Static Analysis of Memory in Low Level Code
OOPSLA 2024
Julien Simonnet CEA LIST, Matthieu Lemerre Université Paris-Saclay - CEA LIST, Mihaela Sighireanu University Paris-Saclay, ENS Paris-Saclay, CNRS, LMF
DOI
11:20
20m
Talk
Modeling Dynamic (De)Allocations of Local Memory for Translation Validation
OOPSLA 2024
Abhishek Rose IIT Delhi, Sorav Bansal IIT Delhi and CompilerAI Labs
DOI
11:40
20m
Talk
Mark--Scavenge: Waiting for Trash to Take Itself Out
OOPSLA 2024
Jonas Norlinder Uppsala University, Erik Österlund Oracle, David Black-Schaffer Uppsala University, Tobias Wrigstad Uppsala University
DOI
12:00
20m
Talk
Iris-MSWasm: elucidating and mechanising the security invariants of Memory-Safe WebAssembly
OOPSLA 2024
Maxime Legoupil Aarhus University, June Rousseau Aarhus University, Aina Linn Georges Max Planck Institute for Software Systems (MPI-SWS), Jean Pichon-Pharabod Aarhus University, Lars Birkedal Aarhus University
DOI