Calling Context Abstraction with Shapes - Archive ouverte HAL Accéder directement au contenu
Communication Dans Un Congrès Année : 2011

Calling Context Abstraction with Shapes

Résumé

Interprocedural program analysis is often performed by computing procedure summaries. While possible, computing adequate summaries is difficult, particularly in the presence of recursive procedures. In this paper, we propose a complementary framework for interprocedural analysis based on a direct abstraction of the calling context. Specifically, our approach exploits the inductive structure of a calling context by treating it directly as a stack of activation records. We then build an abstraction based on separation logic with inductive definitions. A key element of this abstract domain is the use of parameters to refine the meaning of such call stack summaries and thus express relations across activation records and with the heap. In essence, we define an abstract interpretation-based analysis framework for recursive programs that permits a fluid per call site abstraction of the call stack--much like how shape analyzers enable a fluid per program point abstraction of the heap.
Fichier principal
Vignette du fichier
popl11-stack.pdf (391.28 Ko) Télécharger le fichier
Origine : Fichiers éditeurs autorisés sur une archive ouverte
Loading...

Dates et versions

hal-00760421 , version 1 (03-12-2012)

Identifiants

Citer

Xavier Rival, Bor-Yuh Evan Chang. Calling Context Abstraction with Shapes. POPL'11 - 38th annual ACM SIGPLAN-SIGACT symposium on Principles Of Programming Languages 2011, Jan 2011, Austin, United States. pp.173-186, ⟨10.1145/1925844.1926406⟩. ⟨hal-00760421⟩
112 Consultations
432 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More