|
ABSTRACT
We present a new linear-time algorithm to find the immediate dominators of all vertices in a flowgraph. Our algorithm is simpler than previous linear-time algorithms: rather than employ complicated data structures, we combine the use of microtrees and memoization with new observations on a restricted class of path compressions. We have implemented our algorithm, and we report experimental results that show that the constant factors are low. Compared to the standard, slightly superlinear algorithm of Lengauer and Tarjan, which has much less overhead, our algorithm runs 10-20% slower on real flowgraphs of reasonable size and only a few percent slower on very large flowgraphs.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
| |
2
|
Alfred V. Aho , Ravi Sethi , Jeffrey D. Ullman, Compilers: principles, techniques, and tools, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 1986
|
| |
3
|
ALSTRUP, S., HAREL, D., LAURIDSEN, P. W., AND THORUP, M. 1997. Dominators in linear time. Manuscript available at ftp ://ftp. diku. dk/pub/diku/users/stephen/dom, ps.
|
| |
4
|
AMARASINGHE, S. P., ANDERSON, J. M., LAM, M. S., AND TSENG, C. W. 1995. The SUIF compiler for scalable parallel machines. In Proceedings of the 7th SIAM Conference on Parallel Processing for Scientific Computing. SIAM, Philadelphia, Pa.
|
| |
5
|
|
 |
6
|
Adam L. Buchsbaum , Haim Kaplan , Anne Rogers , Jeffery R. Westbrook, Linear-time pointer-machine algorithms for least common ancestors, MST verification, and dominators, Proceedings of the thirtieth annual ACM symposium on Theory of computing, p.279-288, May 24-26, 1998, Dallas, Texas, United States
[doi> 10.1145/276698.276764]
|
| |
7
|
|
| |
8
|
|
 |
9
|
|
| |
10
|
DIXON, B. AND TARJAN, R. E. 1997. Optimal parallel verification of minimum spanning trees in logarithmic time. Algorithmiea 17, 11-8.
|
 |
11
|
|
| |
12
|
|
| |
13
|
GABOW, H. N. AND TARJAN, R. E. 1985. A linear-time algorithm for a special case of disjoint set union. J. Comput. Syst. Sei. 30, 2, 209-21.
|
 |
14
|
|
| |
15
|
HOLLOWAY, G. AND YOUNG, C. 1997. The flow analysis and transformation libraries of Machine SUIF. In Proceedings of the 2rid SUIF Compiler Workshop. Stanford University, Stanford, Calif.
|
 |
16
|
|
| |
17
|
|
 |
18
|
|
| |
19
|
|
| |
20
|
PEREIRA, F. AND RILEY, M. 1997. Speech recognition by composition of weighted finite automata. In Finite-State Language Processing. MIT Press, Cambridge, Mass.
|
| |
21
|
|
 |
22
|
|
 |
23
|
|
| |
24
|
SPEC. 1995. The SPEC95 Benchmark Suite. The Standard Performance Evaluation Corp., Manassas, Va. http ://www. specbench, org.
|
| |
25
|
TARJAN, R. E. 1972. Depth-first search and linear graph algorithms. SIAM J. Comput. 1, 2, 146-59.
|
| |
26
|
TARJAN, R. E. 1974. Finding dominators in directed graphs. SIAM J. Comput. 3, 1, 62-89.
|
 |
27
|
|
| |
28
|
TARJAN, R. E. 1979b. A class of algorithms which require nonlinear time to maintain disjoint sets. J. Comput. Syst. Sci. 18, 2, 110-27.
|
 |
29
|
|
CITED BY 12
|
|
|
|
|
Adam Buchsbaum , Yih-Farn Chen , Huale Huang , Eleftherios Koutsofios , John Mocenigo , Anne Rogers , Michael Jankowsky , Spiros Mancoridis, Visualizing and Analyzing Software Infrastructures, IEEE Software, v.18 n.5, p.62-70, September 2001
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|