SPLASH 2020
Sun 15 - Sat 21 November 2020 Online Conference
Wed 18 Nov 2020 17:20 - 17:40 at SPLASH-I - W-6 Chair(s): Anitha Gollamudi, Hans-J. Boehm
Thu 19 Nov 2020 05:20 - 05:40 at SPLASH-I - W-6 Chair(s): Jan Vitek, John Wickerson

Garbage collection (GC) support for unmanaged languages can reduce programming burden in reasoning about liveness of dynamic objects. It also avoids temporal memory safety violations and memory leaks. Sound GC for weakly-typed languages such as C/C++, however, remains an unsolved problem. Current value-based GC solutions examine values of memory locations to discover the pointers, and the objects they point to. The approach is inherently unsound in the presence of arbitrary type casts and pointer manipulations, which are legal in C/C++. Such language features are regularly used, especially in low-level systems code.

In this paper, we propose Dynamic Pointer Provenance Tracking to realize sound GC. We observe that pointers cannot be created out-of-thin-air, and they must have provenance to at least one valid allocation. Therefore, by tracking pointer provenance from the source (e.g., malloc) through both explicit data-flow and implicit control-flow, our GC has sound and precise information to compute the set of all reachable objects at any program state. We discuss several static analysis optimizations, that can be employed during compilation aided with profiling, to significantly reduce the overhead of dynamic provenance tracking from nearly 8x to 16% for well-behaved programs that adhere to the C standards. Pointer provenance based sound GC invocation is also 13% faster and reclaims 6% more memory on average, compared to an unsound value-based GC.

Wed 18 Nov

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

17:00 - 18:20
W-6OOPSLA at SPLASH-I +12h
Chair(s): Anitha Gollamudi Harvard University, Hans-J. Boehm Google
17:00
20m
Talk
Programming with a Read-Eval-Synth Loop
OOPSLA
Hila Peleg University of California at San Diego, Roi Gabay Technion, Shachar Itzhaky Technion, Eran Yahav Technion
Link to publication DOI Media Attached
17:20
20m
Talk
Sound Garbage Collection for C using Pointer Provenance
OOPSLA
Subarno Banerjee University of Michigan, David Devecsery Georgia Institute of Technology, Peter M. Chen University of Michigan, Satish Narayanasamy University of Michigan
Link to publication DOI Media Attached
17:40
20m
Talk
Semiring Optimizations: Dynamic Elision of Expressions with Identity and Absorbing Elements
OOPSLA
Guilherme Vieira Leobas Federal University of Minas Gerais, Fernando Magno Quintão Pereira Federal University of Minas Gerais
Link to publication DOI Pre-print Media Attached
18:00
20m
Talk
CompCertELF: Verified Separate Compilation of C Programs into ELF Object Files
OOPSLA
Yuting Wang Shanghai Jiao Tong University, Xiangzhe Xu Nanjing University, Pierre Wilke CentraleSupélec, Zhong Shao Yale University
Link to publication DOI Media Attached

Thu 19 Nov

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

05:00 - 06:20
W-6OOPSLA at SPLASH-I
Chair(s): Jan Vitek Northeastern University / Czech Technical University, John Wickerson Imperial College London
05:00
20m
Talk
Programming with a Read-Eval-Synth Loop
OOPSLA
Hila Peleg University of California at San Diego, Roi Gabay Technion, Shachar Itzhaky Technion, Eran Yahav Technion
Link to publication DOI Media Attached
05:20
20m
Talk
Sound Garbage Collection for C using Pointer Provenance
OOPSLA
Subarno Banerjee University of Michigan, David Devecsery Georgia Institute of Technology, Peter M. Chen University of Michigan, Satish Narayanasamy University of Michigan
Link to publication DOI Media Attached
05:40
20m
Talk
Semiring Optimizations: Dynamic Elision of Expressions with Identity and Absorbing Elements
OOPSLA
Guilherme Vieira Leobas Federal University of Minas Gerais, Fernando Magno Quintão Pereira Federal University of Minas Gerais
Link to publication DOI Pre-print Media Attached
06:00
20m
Talk
CompCertELF: Verified Separate Compilation of C Programs into ELF Object Files
OOPSLA
Yuting Wang Shanghai Jiao Tong University, Xiangzhe Xu Nanjing University, Pierre Wilke CentraleSupélec, Zhong Shao Yale University
Link to publication DOI Media Attached