Expression Motion in the Presence of Critical Edges
- 96 Downloads
First, the lack of suitable placement points usually leads to suboptimal results, i. e. results that are strictly worse in terms of the number of computations than competitive results that could be obtained in a flow graph after splitting critical edges. Figure 2.2 of Chapter 2 gives an illustration of this phenomenon.
Second, the equation system of Morel and Renvoise uses bidirectional data flow analyses. In fact, the bidirectionality of their algorithm became model in the field of bit-vector based expression motion (cf. [Cho83, Dha88, Dha89b, Dha91, DK93, DRZ92, DS88, JD82a, JD82b, Mor84, MR81, Sor89]). Bidirectional algorithms, however, are in general conceptually and computationally more complex than unidirectional ones. In particular, critical edges prevent the application of fast unidirectional bit-vector methods, which in the case of reducible control are almost linear in the program size (cf. Section 4.6.4). In contrast, the best known estimations for bidirectional bit-vector analyses are of order O(|G|2) (cf. [Dha91, DK93, DP93]).
Unable to display preview. Download preview PDF.