| Ron Cytron and Reid Gershbein. Efficient accommodation of may-alias information in SSA form. In ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), pages 36--45. ACM Press, 1993. |
....p can point to either a or b. As we attempt to put the program segment into SSA form we see that statement S8 has an implicit write to either a or b. We don t know which until run time. For the program to be in SSA form it is necessary to somehow expose this implicit write. Cytron and Gershbein [CG93] have done some work to correctly model this such that statement S9 uses the correct variables with the correct values; however, as it can be seen in Figure 2(f) such a construct is easily modeled in SSA Numbering. The SSA number of a and b after statement S10 are different to reflect that they ....
....over 50 [Ghi97] 5.7 Summary Overall, we have found that SSA numbers are useful for many of our subsequent analyses and transformations, and SSA numbers are now an integral part of our compiler. 6 Related Work Most previous work has concentrated on extending SSA form to accommodate pointers[CG93, CCL 96] Both of these cases assume the compiler uses SSA form as its intermediate representation, and SSA form must be extended to handle pointers. The first approach, by Cytron and Gershbein [CG93] concentrats on assignments via pointers. They devised a well behaved function, IsAlias(p,v) ....
[Article contains additional citation context not shown here]
Ron Cytron and Reid Gershbein. Efficient accommodation of may-alias information in SSA form. In Proc. of the ACM SIGPLAN '93 Conf. on Programming Language Design and Implementation, pages 36--45, Albuquerque, N. Mex., Jun. 1993.
....equivalence classes, are treated as weak updates. That is, we introduce a node that combines the original content of the variable with the new value. The expression selects and returns one of its operands based on the path taken to reach the expression. This is similar to Cytron s approach[31], except that nodes are used instead of Cytron s IsAlias function. f f f 28 Consider the example in Figure 3 2. In this example, the pointer alias analysis finds variables a and b to be aliased. Variable av1 represents the alias equivalence class consisting of a and b, and av2 represents p. ....
R. Cytron and R. Gershbein, "Efficient accommodation of may-alias information in SSA form." In SIGPLAN `93 conference on programming language design and implementation, pp. 36-45, 1993.
....These proposals differ from IIRM in that they try to reduce the representation size. In doing so, they lose some of the benefits of the IIRM approach. Cytron attempts to reduce the impact by introducing extra modification nodes lazily only aliases relevant to the optimization task get added[2]. While he shows that for one optimization, constant propagation, a relatively small number of added nodes are required, the demand driven node generation adds complexity to the client algorithm. Also, it is still possible that the demanded nodes will require the fully exploded representation ....
Cytron, Ron and Reid Gershbein, "Efficient Accommodation of May-Alias Information in SSA Form," in Proceedings of the ACM SIGPLAN '93 Conference on Programming Language Design and Implementation, pp. 36-45, June 1993.
....all data and control dependences after lowering the IR. This information is not available to the earlier high level passes. Diwan [19] used type based alias analysis to disambiguate locations, as we do. However, he does not incorporate the results of the analysis into an SSA representation. Cytron [16] represents alias information in an SSA graph by explicitly inserting calls that may modify values if an associated pointer operation may modify the value. Such an approach can greatly increase the size of the SSA graph. Instead, we enforce strict memory ordering via the global 23 WRL Research ....
R. Cytron and R. Gershbein. Efficient Accommodation of May-Alias Information in SSA Form. In SIGPLAN '93 Conference on Programming Language Design and Implementation, pages 36--45, June 1993.
....p can point to either a or b. As we attempt to put the program segment into SSA form we see that statement S8 has an implicit write to either a or b. We don t know which until run time. For the program to be in SSA form it is necessary to somehow expose this implicit write. Cytron and Gershbein [CG93] have done some work to correctly model this such that statement S9 uses the correct variables with the correct values; however, as it can be seen in Figure 2(f) such a construct is easily modeled in SSA Numbering. The SSA number of a and b after statement S10 are different to reflect that they ....
....SSA numbers are useful for many of our subsequent analyses and transformations, and SSA numbers are now an integral part of our compiler. Christopher Lapkowski and Laurie J. Hendren 15 6 Related Work Most previous work in this area has concentrated on extending SSA form to accommodate pointers[CG93, CCL 96] In both these cases it is assumed that the compiler uses SSA form for its intermediate representation, and SSA form must be extended to handle pointers. One of the first approaches, by Cytron and Gershbein [CG93] concentrated on assignments via pointers. They devised a well ....
[Article contains additional citation context not shown here]
Ron Cytron and Reid Gershbein. Efficient accommodation of may-alias information in SSA form. In Proc. of the ACM SIGPLAN '93 Conf. on Programming Language Design and Implementation, pages 36--45, Albuquerque, N. Mex., Jun. 1993.
....created by the assignment may reach a use of the variable. Although there exists a standard and well defined algorithm to place f functions at CFG joint nodes, there is no standard way to represent weak updates. Different SSA forms may have different weakupdate representations [CFR 91, BC92, CG93, CCF94, Ste95, CCL 96, Wol96, HH98] Our second extension to a nave SSA form is to extend the f function to represent the merged values caused by weak updates. First, an assignment statement using pointer dereferences, reference parameters or array subscripted expressions may generate ....
....alias information and how these SSA forms compare with our SSA form. We also discuss other SSA forms with predicates. 3.4. 1 Location Factored SSA Forms Versus Assignment Factored SSA Forms Some research has discussed how to incorporate pointer alias information into SSA forms [CFR 91, BC92, CG93, CCF94, Ste95, CCL 96, Wol96, HH98] One important issue is how to represent the modification effect of an indirect assignment using pointer dereferences. As to the example program in Figure 8, we need to decide (1) how to represent the fact that statement s9 must modify , or strongly updates ....
[Article contains additional citation context not shown here]
Ron Cytron and Reid Gershbein. Efficient Accommodation of May-Alias Information in SSA Form. In Proceedings of the SIGPLAN '93 Conference on Programming Language Design and Implementation, pages 36-- 45, June 1993.
....a or b. When attempting to put the program segment into SSA form, it is noticed that statement S38 has an implicit write to either a or b, but it is not known which until run time. For the program to be in SSA form, it is necessary to somehow expose this implicit write. Cytron and Gershbein [CG93] have done some work to correctly model this, such that statement S39 uses the correct variables with the correct values; however, as can be seen in Figure 3.7(f) such a construct is easily modeled in SSA numbering. The SSA number of a and b in statement S41 are different from those in statement ....
....form has been widely used in FORTRAN compilers, where pointers are not a problem. Recently there has been increased interest in extending the SSA form to handle the problems associated with pointers. One of the first steps of accommodating pointers into SSA form, was done by Cytron and Gershbein [CG93] Their work concentrated on the effects of assignment via pointers. For example, consider an assignment statement such as p = 6. 107 Depending on where the pointer p points to, the assignment may modify different locations. Suppose that p at the assignment statement may point to either the ....
Ron Cytron and Reid Gershbein. Efficient accommodation of may-alias information in SSA form. In Proceedings of the ACM SIGPLAN '93 Conference on Programming Language Design and Implementation, pages 36--45, 131 Albuquerque, New Mexico, June 23--25, 1993. SIGPLAN Notices, 28(6), June 1993.
....the equivalence class to which the reference belongs. Assignments to alias variables representing nonsingleton equivalence classes are treated as weak updates. That is, we introduce a node that combines the original content of the variable with the new value. This is similar to Cytron s approach[6], except that nodes are used instead of Cytron s IsAlias function. Consider the following example: In this example, the pointer alias analysis finds variables a and b to be aliased. Variable av1 represents the alias equivalence class consisting of a and b, and av2 represents p. Since av1 ....
R. Cytron and R. Gershbein, "Efficient accommodation of may-alias information in SSA form", SIGPLAN `93 conference on programming language design and implementation, pp. 36-45, 1993.
.... p, q = g if ( g = 3 Exit Call f Return point Enter main g = 4 Call f Return point (a) b) Figure 7: The CFGs and supergraph corresponding to the code in Figure 6 3 Related Work A program representation similar to the intermediate form described here was used by Cytron and Gershbein in [CG93] where they give an algorithm for incrementally incorporating points to information into SSA form. Our intermediate representation is essentially an in lined version of Cytron and Gershbein s IsAlias function. However, their algorithm requires pre computed may alias information and incorporates ....
R. Cytron and R. Gershbein. Efficient accommodation of may-alias information in SSA form. SIGPLAN Conference on Programming Language Design and Implementation, 28(6):36-- 45, June 1993.
....p can point to either a or b. As we attempt to put the program segment into SSA form we see that statement S8 has an implicit write to either a or b. We don t know which until run time. For the program to be in SSA form it is necessary to somehow expose this implicit write. Cytron and Gershbein [5] have done some work to correctly model this such that statement S9 uses the correct variables with the correct values; however, as it can be seen int a; a = 1; if(a 10) f a = 2; S4: p = a; g int a 1,a 2, a 1 = 1; if(a 1 10) f a 2 = 2; S5: p 2 = a ; g int a; a1 = 1; if(a1 ....
....the most benefit at run time even though there was only one place in the program were we could apply the transformation. 6 Related Work We are not aware of any work done on approximating SSA form in situations where it is difficult to put a program into SSA form; however, Cytron and Gershbein [5] have worked on accommodating pointers into SSA form. Their work concentrated on assignments via pointers. They devised a well behaved function (called IsAlias(p,v) taking a pointer p and a variable v and it would perform the following: p is tested if it actually points to v. Num Avg. Static ....
Ron Cytron and Reid Gershbein. Efficient accommodation of may-alias information in SSA form. In Proceedings of the ACM SIGPLAN '93 Conference on Programming Language Design and Implementation, pages 36--45, Albuquerque, New Mexico, June 23--25, 1993. SIGPLAN Notices, 28(6), June 1993.
....[Cooper et al. 1992] procedure clones are created during the analysis on demand whenever it is found that an additional clone will lead to more accurate information. An algorithm for the incremental incorporation of alias information into static single assignment (SSA) form was presented in [Cytron and Gershbein 1993]. The actual optimization problem to be performed on the SSA form triggers the expansion of the SSA form to include only the necessary alias information. Similar ideas have also been implemented in the demand based expansion algorithm of factored def def chains A Practical Framework for ....
Cytron, R. and Gershbein, R. 1993. Efficient accommodation of may-alias information in SSA form. In Proceedings of the SIGPLAN 1993 Conference on Programming Language Design and Implementation. ACM, New York, 36--45.
....help locate bugs. A demand driven analysis approach naturally provides the capabilities to service requests whose nature and extent may vary depending on the user and the program. The utility of demand driven analysis has previously been demonstrated for a number of specific analysis problems [CCF92, CHK92, CG93, SY93, SMHY93, Mas94]. Unlike these applications, the objective of our approach is to address demand based analysis in a general way. We present a lattice based framework for the derivation of demand driven algorithms for interprocedural data flow analysis. In this framework, a demand for a specific subset of the ....
....an expression is suspected to be redundant) and it also uses early termination to end the search. In procedure cloning [CHK92] procedure clones are created during the analysis on demand whenever it is found that an additional clone will lead to more accurate information. Cytron and Gershbein [CG93] described an algorithm for the incremental incorporation of alias information into SSA form. The actual optimization problem to be performed on the SSA form triggers the expansion of the SSA form to include only the necessary alias information. Similar ideas have also been implemented in the ....
R. Cytron and R. Gershbein. Efficient accommodation of may-alias information in SSA form. In SIGPLAN '93 Conf. on Programming Language Design and Implementation, pages 36--45, Albuquerque, NM, Jun. '93.
No context found.
Ron Cytron and Reid Gershbein. Efficient accommodation of may-alias information in SSA form. In ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), pages 36--45. ACM Press, 1993.
No context found.
Ron Cytron and Reid Gershbein. Efficient accommodation of may-alias information in SSA form. In ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), pages 36--45. ACM Press, 1993.
No context found.
Ron Cytron and Reid Gershbein. Efficient accommodation of may-alias information in SSA form. In ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), pages 36--45. ACM Press, 1993.
No context found.
Ron Cytron and Reid Gershbein. Efficient accommodation of may-alias information in SSA form. SIGPLAN Notices, 28(6):36--45, June 1993. Proceedings of the ACM SIGPLAN '93 Conference on Programming Language Design and Implementation.
No context found.
R. Cytron and R. Gershbein. Efficient accommodation of may-alias information in SSA form. In Proceedings of the ACM SIGPLAN '93 Conference on Programming Language Design and Implementation, pp. 3645, June 1993.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC