Control-Flow Analysis of Function Calls and Returns by Abstract Interpretation - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Rapport (Rapport De Recherche) Année : 2009

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

Jan Midtgaard
  • Fonction : Auteur correspondant
  • PersonId : 854346

Connectez-vous pour contacter l'auteur

Résumé

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.
Fichier principal
Vignette du fichier
RR-6681.pdf (449.96 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

inria-00328154 , version 1 (09-10-2008)
inria-00328154 , version 2 (10-10-2008)
inria-00328154 , version 3 (29-07-2009)

Identifiants

  • HAL Id : inria-00328154 , version 3

Citer

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

Partager

Gmail Facebook X LinkedIn More