Steering Clear of Triples: Deriving the Control Flow Graph Directly from the Abstract Syntax Tree in C Programs (1998) [1 citations — 1 self]
Abstract:
This article explores the extension of Morgenthaler's Virtual Control Flow technique[Mor97], which derives control flow[ASU86] semantics directly from the Abstract Syntax Tree, from the relatively coarse granularity of syntactic C expressions to the finer granularity of basic block expressions, that is, expressions without embedded control flow. We explain why this is a better level of abstraction for program analysis, and discuss the elements of an efficient and elegant solution, motivating the presentation by appealing to a more explicit intermediate form. We present our algorithm, and conclude with remarks about the suitability of Morgenthaler's version of Virtual Control Flow for customary exhaustive dataflow analysis. 1
Citations
| 1015 | The C Programming Language – Kernighan, Ritchie |
| 129 | editors. Abstract Interpretation of Declarative Languages – Abramsky, Hankin - 1987 |
| 120 | Reducing Indirect Function Call Overhead in C++ Programs – Calder, Grunwald - 1994 |
| 12 | Static analysis for a software transformation tool – Morgenthaler - 1997 |
| 2 | Detecting value-based scalar dependence – Stoltz, Wolfe - 1994 |
| 1 | Efficiently computing static single assignment form and the control dependence graph – Aho, Sethi, et al. - 1986 |
| 1 | Metacomputing in Large Asynchromous Networks. See http://www.cs.nyu.edu/ milan/milan/index.html – Kedem |

