Figure 1: Region-Based Interprocedural Analysis Framework
A region-based analysis, as shown in Figure 1, proceeds in one or two phases. In the first phase, we analyze each procedure independent of its calling environment to obtain a transfer function ; this transfer function is used (with appropriate parameter mapping) at call sites when analyzing callers.
The second phase propagates data-flow values, applying them to the transfer functions from the previous phase,
to yield the data-flow input to each region.
The two-phase region-based analysis is similar to what is traditionally called interval-based analysis, where the intervals of interest are loops and procedure bodies.