HAL will be down for maintenance from Friday, June 10 at 4pm through Monday, June 13 at 9am. More information
Skip to Main content Skip to Navigation

Control-Flow Analysis of Function Calls and Returns by Abstract Interpretation

Jan Midtgaard 1, * Thomas P. Jensen 2
* Corresponding author
2 CELTIQUE - Software certification with semantic analysis
IRISA-D4 - LANGAGE ET GÉNIE LOGICIEL, Inria Rennes – Bretagne Atlantique
Abstract : We derive a control-flow analysis that approximates the interprocedural control-flow of both function calls and returns in the presence of first-class functions and tail-call optimization. In addition to an abstract environment, our analysis computes for each expression an abstract control stack, effectively approximating where function calls return across optimized tail calls. The analysis is systematically calculated by abstract interpretation of the stack-based CaEK abstract machine of Flanagan et al. using a series of Galois connections. Abstract interpretation provides a unifying setting in which we 1) prove the analysis equivalent to the composition of a continuation-passing style (CPS) transformation followed by an abstract interpretation of a stack-less CPS machine, and 2) extract an equivalent constraint-based analysis formulation, thereby providing a rational reconstruction of a constraint-based control-flow analysis from abstract interpretation principles.
Document type :
Complete list of metadata

Cited literature [44 references]  Display  Hide  Download

Contributor : Jan Midtgaard Connect in order to contact the contributor
Submitted on : Wednesday, July 29, 2009 - 4:20:55 PM
Last modification on : Thursday, January 20, 2022 - 4:20:17 PM
Long-term archiving on: : Thursday, September 23, 2010 - 5:25:44 PM


Files produced by the author(s)


  • HAL Id : inria-00328154, version 3


Jan Midtgaard, Thomas P. Jensen. Control-Flow Analysis of Function Calls and Returns by Abstract Interpretation. [Research Report] RR-6681, INRIA. 2009. ⟨inria-00328154v3⟩



Record views


Files downloads