Compiler Construction

Volume 2304 of the series Lecture Notes in Computer Science pp 46-61


A Graph—Free Approach to Data—Flow Analysis

  • Markus MohnenAffiliated withLehrstuhl für Informatik II, RWTH Aachen


For decades, data—flow analysis (DFA) has been done using an iterative algorithm based on graph representations of programs. For a given data—flow problem, this algorithm computes the maximum fixed point (MFP) solution. The edge structure of the graph represents possible control flows in the program. In this paper, we present a new, graph-free algorithm for computing the MFP solution. The experimental implementation of the algorithm was applied to a large set of samples. The experiments clearly show that the memory usage of our algorithm is much better: Our algorithm always reduces the amount of memory and reached improvements upto less than a tenth. In the average case, the reduction is about a third of the memory usage of the classical algorithm. In addition, the experiments showed that the runtimes are almost the same: The average speedup of the classical algorithm is only marginally greater than one.