Browse > Article
http://dx.doi.org/10.3745/KIPSTA.2002.9A.2.171

Delayed Reduction Algorithms of DJ Graph using Path Compression  

Sim, Son-Kwon (Graduate School of Kwan Dong University)
Ahn, Heui-Hak (Kwan Dong University)
Abstract
The effective and accurate data flow problem analysis uses the dominator tree and DJ graphs. The data flow problem solving is to safely reduce the flow graph to the dominator tree. The flow graph replaces a parse tree and used to accurately reduce either reducible or irreducible flow graph to the dominator tree. In this paper, in order to utilize Tarian's path compress algorithm, the Top node finding algorithm is suggested and the existing delay reduction algorithm is improved using Path compression. The delayed reduction a1gorithm using path compression actually compresses the pathway of the dominator tree by hoisting the node while reducing to delay the DJ graph. Realty, the suggested algorithm had hoisted nodes in 22% and had compressed path in 20%. The compressed dominator tree makes it possible to analyze the effective data flow analysis and brings the improved effect for the complexity of code optimization process with the node hoisting effect of code optimization process.
Keywords
data flew analysis; DJ graph; Path compression; delayed reduction;
Citations & Related Records
연도 인용수 순위
  • Reference
1 Aho, A. V., Sethi, R.. and Ullman, J. D., 'Compilers Principles, Techniques, and Tools,' Addison-Wesley Publishing Co., 1986
2 Carroll, M. and Ryder, B. G., 'Incremental data flow update via attribute and dominator updates,' In ACM SIGPLAN-SIGACT Symposium on the Principles of Programming Languages, pp.274-284, Jan.,1988   DOI
3 Ramalingam, G. and Reps, T., 'An incremental algorithm for maintaining the dominator tree of a reducible flowgraph,' In ACM SIGPLAN-SIGACT Symposium on the Principles of Programming Languages, pp.314-325, Jan., 1994   DOI
4 Ramalingam, G., 'Identifying loops in almost linear time,' ACM Transactions on Programming Languages and Systems, Vol.21, No.2, pp.175-188, 1999   DOI
5 Sreedhar, V. C., and Gao, G. R., and Lee,Y. F., 'Identifying Loops Using DJ Graphs,' ACM Transactions on Programming Languages and Systems, Vol.18, No.6, pp.649-658, 1996   DOI   ScienceOn
6 Sreedhar, V. C., and Gao, G. R., and Lee,Y. F., 'A New Framework for Exhaustive and Incremental Data Flow Analysis Using DJ Graphs,' ACM in Proceedings of the SIGPLAN'96 Conference on Programming Language Design and Implementation, Vol.18, No.6, pp.278-290, 1996   DOI
7 Sreedhar, V. C., Gao, G. R., and Lee, Y. F., 'Incremental Computation of Dominator Trees,' ACM Transactions on Programming Languages and Systems, Vol.19, No.2, pp.239-252, 1997   DOI   ScienceOn
8 Tarjan, R. E., 'Fast algorithms for solving path problems,' Journal of ACM, Vol.28, No.3, pp.594-614, 1981   DOI   ScienceOn
9 Sreedhar, V. C. and Gao, G. R., 'A linear time algorithm for placing ${\phi}$-nodes,' In ACM SIGPLAN-SIGACT Symposium on the Principles of programming Languages, pp.62-73, 1995   DOI
10 Ryder, B. G. and Paull, M. C., 'Elimination algorithms for data flow analysis,' ACM Comput. Surv., Vol.18, No.3, pp.277-316, Sep., 1986   DOI   ScienceOn