C-2PO: A Weakly Relational Pointer Domain: “These Are Not the Memory Cells You Are Looking For”

Pointer analysis is foundational for statically analyzing real-world programs. We present C-2PO — a weakly relational domain for C programs, which tracks must-equalities and -disequalities between pointer expressions. This domain captures address arithmetic and its confinement to single memory objects, both core concepts in C. We implement the domain in Goblint and provide a preliminary evaluation. For 95% of SV-COMP tasks, the slowdown incurred by adding C-2PO is below a factor of 3. To measure precision, we instrumented coreutil programs with assertions computed by C-2PO. For an existing non-relational pointer analysis, 80% of the assertions are out of reach.

Authors

Institutions

Publication Details

Published
2024-10-17
DOI
https://doi.org/10.1145/3689609.3689994
Citations
1
Primary Topic
Advanced Memory and Neural Computing
Type
article
Field-Weighted Citation Impact
0.21
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

C-2PO: A Weakly Relational Pointer Domain: “These Are Not the Memory Cells You Are Looking For”

Michael Schwarz, Julian Erhard, Helmut Seidl, Rebecca Ghidini
1 citations
Advanced Memory and Neural Computing
0.21
article

C-2PO: A Weakly Relational Pointer Domain: “These Are Not the Memory Cells You Are Looking For”

Michael Schwarz, Julian Erhard, Helmut Seidl, Rebecca Ghidini
article en
1 citations

Abstract

Pointer analysis is foundational for statically analyzing real-world programs. We present C-2PO — a weakly relational domain for C programs, which tracks must-equalities and -disequalities between pointer expressions. This domain captures address arithmetic and its confinement to single memory objects, both core concepts in C. We implement the domain in Goblint and provide a preliminary evaluation. For 95% of SV-COMP tasks, the slowdown incurred by adding C-2PO is below a factor of 3. To measure precision, we instrumented coreutil programs with assertions computed by C-2PO. For an existing non-relational pointer analysis, 80% of the assertions are out of reach.

Technical University of Munich (DE), Ludwig-Maximilians-Universität München (DE)
Reduced inequalities
Openalex Percentile: Top 47%
Advanced Memory and Neural Computing
0.21
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

C-2PO: A Weakly Relational Pointer Domain: “These Are Not the Memory Cells You Are Looking For” — Michael Schwarz, Julian Erhard, et al. · (2024) | TGRS Research Map | TGRS