High-Level Data Flow Analysis In contrast to the predominant use of low-level in termediate text, high-level data flow analysis deals with programs essentially at source level and exploits the control flow information implicit in the parse tree. The need for high-level flow analysis arises from several aspects of recent work on advanced methods of program certification and optimization. This paper proposes a simple general method of high-level data flow analysis that allows free use of escape and jump statements, avoids large graphs when compiling large programs, facilitates updating of data flow information to reflect program changes, and derives new global information helpful in solving many familiar global flow analysis problems. An illustrative application to live variable analysis is presented. Many of the graphs involved are constructed and analyzed before any programs are compiled, thus avoiding certain costs that low-level methods incur repeatedly at compile time. CACM October, 1977 Rosen, B. K. data flow analysis, high-level language, control flow graph, structured programming, escapes, exits, jumps, goto statements 5.24 4.12 4.22 CA771003 JB December 27, 1977 11:41 AM 1807 4 2923 2034 4 2923 2290 4 2923 2579 4 2923 2579 4 2923 2923 4 2923 2923 4 2923 2945 4 2923 1807 5 2923 1947 5 2923 2923 5 2923 2923 5 2923 2923 5 2923