Data Flow Analysis in the Presence of Procedure Calls
by D. B. Lomet
The aliasing that results in a variable being known by more than one name has greatly complicated efforts to derive data flow information. The approach we take involves the use of a series of claims that, after we compute the data flow for some of the aliasing possibilities, allows us to produce good approximations for the remaining cases. The method can thus limit the potential combinatorial explosion of aliasing computations while providing results that are frequently exact and almost always very good. The method is illustrated in the context of data flow analysis involving multiple procedures and their calling interactions. It is applicable also in the treatment of recursive procedures.