MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Linear-time subtransitive control flow analysis (1997) [41 citations — 1 self]

Download:
Download as a PDF | Download as a PS
by Nevin Heintze, David Mcallester
In Proceedings of ACM SIGPLAN 1997 Conference on Programming Language Design and Implementation
http://www.cs.cmu.edu/afs/cs/user/nch/ftp/linear-cfa.ps
Add To MetaCart

Abstract:

We present a linear-time algorithm for boundedtype programs that builds a directed graph whose transitive closure gives exactly the results of the standard (cubic-time) Control-Flow Analysis (CFA) algorithm. Our algorithm can be used to list all functions calls from all call sites in (optimal) quadratic time. More importantly, it can be used to give linear-time algorithms for CFAconsuming applications such as: ffl effects analysis: find the side-effecting expressions in a program. ffl k-limited CFA: for each call-site, list the functions if there are only a few of them ( k) and otherwise output "many". ffl called-once analysis: identify all functions called from only one call-site. 1

Citations

1483 The Definition of Standard ML – Milner, Tofte, et al. - 1990
158 Control flow analysis in Scheme – Shivers
132 Type inference with polymorphic recursion – Henglein - 1993
120 Set-Based Analysis of ML Programs – Heintze - 1994
90 A type system equivalent to flow analysis – Palsberg, O’Keefe - 1995
43 Safety analysis versus type inference – Palsberg, Schwartzbach - 1995
27 On the Cubic-Bottleneck of Subtyping and Flow Analysis" LICS – Heintze, McAllester - 1997
27 Flow Analysis of Lambda Expressions – Jones - 1981
25 Flow Analysis of Lazy Higher-Order Functional Programs, in Abstract Interpretation of Declarative Languages, edited by S. Abramsky and – Jones - 1987
20 Interconvertbility of set constraints and context-free language reachability – Melski, Reps - 1997
13 Efficient Analysis for Realistic Off-Line Partial Evaluation – Bondorf, Jorgensen - 1993
8 Time and tape complexity of pushdown automaton languages – Aho, Hopcroft, et al. - 1968
4 Inter-procedural Control Flow Analysis of First Order Programs with Tail Call Optimization – Debray, Proebsting - 1996
4 Control-Flow Analysis and Type Systems", Static Analysis Symposium – Heintze - 1995
3 The computational complexity of taxonomic inference", unpublished manuscript – Neal - 1989
2 Inferring Recursive Data Types", draft manuscript – McAllester - 1996
1 Control Flow Analysis for Higher-Order Typed Programs", draft – Mossin - 1996