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

Rebecca Ghidini, Julian Erhard, Michael Schwarz, Helmut Seidl

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

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.

Original languageEnglish
Title of host publicationNSAD 2024 - Proceedings of the 10th ACM SIGPLAN International Workshop on Numerical and Symbolic Abstract Domains, Co-located with SPLASH 2024
EditorsVincenzo Arceri, Michele Pasqua
PublisherAssociation for Computing Machinery, Inc
Pages2-9
Number of pages8
ISBN (Electronic)9798400712173
DOIs
StatePublished - 17 Oct 2024
Event10th ACM SIGPLAN International Workshop on Numerical and Symbolic Abstract Domains, NSAD 2024 - Pasadena, United States
Duration: 22 Oct 2024 → …

Publication series

NameNSAD 2024 - Proceedings of the 10th ACM SIGPLAN International Workshop on Numerical and Symbolic Abstract Domains, Co-located with SPLASH 2024

Conference

Conference10th ACM SIGPLAN International Workshop on Numerical and Symbolic Abstract Domains, NSAD 2024
Country/TerritoryUnited States
CityPasadena
Period22/10/24 → …

Keywords

  • abstract interpretation
  • pointers
  • static analysis
  • weakly relational domains

Fingerprint

Dive into the research topics of 'C-2PO: A Weakly Relational Pointer Domain “These Are Not the Memory Cells You Are Looking For”'. Together they form a unique fingerprint.

Cite this