9.9 Summary

This chapter discussed data flow problems, at first on the low-level control flow graph and then on an abstract syntax tree representation. Data flow problems can be divided into two types: backwards flow problems and forward flow problems. They can also be partitioned into problems whose confluence rules use union and those which use intersection. The following figure shows the five problems discussed in this chapter in these categories:

We will use data flow analysis in the next chapter when we discuss specific examples and specific optimization categories.

In Chapter 12, we will look at data flow analysis again when we discuss incremental compling.

Send questions and comments to: Karen Lemone