TY - CHAP
T1 - Interprocedural shape analysis for effectively cutpoint-free programs
AU - Kreiker, J.
AU - Reps, T.
AU - Rinetzky, N.
AU - Sagiv, M.
AU - Wilhelm, Reinhard
AU - Yahav, E.
PY - 2013
Y1 - 2013
N2 - We present a framework for local interprocedural shape analysis that computes procedure summaries as transformers of procedure-local heaps (the parts of the heap that the procedure may reach). A main challenge in procedurelocal shape analysis is the handling of cutpoints, objects that separate the input heap of an invoked procedure from the rest of the heap, which - from the viewpoint of that invocation - is non-accessible and immutable. In this paper, we limit our attention to effectively cutpoint-free programs - programs in which the only objects that separate the callee's heap from the rest of the heap, when considering live reference fields, are the ones pointed to by the actual parameters of the invocation. This limitation (and certain variations of it, which we also describe) simplifies the local-reasoning about procedure calls because the analysis needs not track cutpoints. Furthermore, our analysis (conservatively) verifies that a program is effectively cutpoint-free,
AB - We present a framework for local interprocedural shape analysis that computes procedure summaries as transformers of procedure-local heaps (the parts of the heap that the procedure may reach). A main challenge in procedurelocal shape analysis is the handling of cutpoints, objects that separate the input heap of an invoked procedure from the rest of the heap, which - from the viewpoint of that invocation - is non-accessible and immutable. In this paper, we limit our attention to effectively cutpoint-free programs - programs in which the only objects that separate the callee's heap from the rest of the heap, when considering live reference fields, are the ones pointed to by the actual parameters of the invocation. This limitation (and certain variations of it, which we also describe) simplifies the local-reasoning about procedure calls because the analysis needs not track cutpoints. Furthermore, our analysis (conservatively) verifies that a program is effectively cutpoint-free,
UR - http://www.scopus.com/inward/record.url?scp=84893282465&partnerID=8YFLogxK
U2 - 10.1007/978-3-642-37651-1_17
DO - 10.1007/978-3-642-37651-1_17
M3 - ???researchoutput.researchoutputtypes.contributiontobookanthology.chapter???
AN - SCOPUS:84893282465
SN - 9783642376504
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 414
EP - 445
BT - Programming Logics
A2 - Voronkov, Andrei
A2 - Weidenbach, Christoph
PB - Springer Berlin Heidelberg
ER -