| B.-C. Cheng and W. W. Hwu. Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation. In ACM SIGPLAN Conference on Programming Language Design and Implementation, pages 57--69, 2000. |
....analysis technique targets general purpose containers, comparisons will be performed with respect to classical pointer chasing implementations of container operations. Studying the code examples in Section 6, we show that our technique outperforms existing (non container oriented) pointer analyses [10, 9, 7, 11, 3]. 3 Points to Graphs Our analysis operates on points to graphs with an expressive node naming scheme and new container specific features. Vertices are split into variable nodes and heap nodes. Among heap nodes, one distinguishes object nodes which abstract at most one heap object, from summary ....
....information is available. The main exception concerns arrays and non uniform numerical codes and or complex induction variable updates; well known dependence analyses are probably more suited to such programs. Notice extension to C C languages should be possible using well known techniques [3] (i.e. stack and function pointers, unions, but not pointer arithmetics) Moreover, since we used no allocation point in the node naming scheme, prior conversion to Static Single Assignment (SSA) 6] is preferred for the best precision. After a few manual steps, including method inlining and ....
[Article contains additional citation context not shown here]
B.-C. Cheng and W.-M. Hwu. Modular interprocedural pointer analysis using access paths: Design, implementation, and evaluation. In ACM Symp. on Programming Language Design and Implementation (PLDI'00), June 2000.
....alias information is key to identifying such instructions. Instruction scheduling and common subexpression elimination are other optimizations of limited usefulness in the absence of pointer alias information. While there is an extensive body of work on pointer alias analysis of various kinds [33, 30, 15, 10, 18], these are mostly high level analyses carried out in terms of source language constructs. Unfortunately, such analyses turn out to be of limited utility at the machine code level. In fact, the problem of memory disambiguation is one of the weak points of object code modi cation, because high ....
....number of systems have been described for optimization of executable code [31, 19, 11, 25] to the best of our knowledge, alias analysis carried out by these systems is limited to fairly simple local analysis. On the other hand, there is an extensive work on pointer alias analysis of various kinds [33, 30, 15, 10, 18]. However, in almost all cases, these are high level analyses carried out in terms of source language constructs that ignore features typically encountered in executable programs, such as type casts, pointer arithmetic, out of bounds array accesses, etc. As a result, such analyses are of limited ....
B.-C. Cheng and W. mei W. Hwu. Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation. In Proceedings of the ACM SIGPLAN '00 Conference on Programming Language Design and Implementation, pages 57-69, June 2000.
....to e.g. the analysis can determine which are the locations that p may point to at line 1. In addition, pointer analysis determines which function addresses may be stored in a given function pointer. Because of the importance of such information, a variety of pointer analyses have been developed [11, 12, 9, 5, 1, 22, 20, 25, 18, 13, 7, 4, 6, 3]. These analyses provide different tradeoffs between cost and precision. For example, flow and context insensitive pointer analyses [1, 20, 25, 18, 4] ignore the flow of control between program points and do not distinguish between different calling contexts of procedures. As a result, such ....
....a conceptual fully precise pointer analysis . This analysis is a fully flow sensitive, contextsensitive, field sensitive pointer analysis that represents a point at the very high end of the design space for pointer analysis. A large number of pointer analyses (or their minor variations) [11, 9, 5, 1, 22, 20, 25, 18, 13, 7, 4, 6, 3] can be considered approximate versions of P that is, the solution computed by is a subset of the solutions computed by these analyses. was specifically designed to achieve this high precision. For example, the analysis maintains full information about calling context; for existing ....
[Article contains additional citation context not shown here]
B. Cheng and W. Hwu. Modular interprocedural pointer analysis using access paths. In Conference on pages 57--69, 2000.
....source level programs. For instance, whole program optimizations may open up opportunities for moving invariant memory instructions out of loops. However, alias information is key to identifying such opportunities. While there is an extensive body of work on pointer alias analysis of various kinds [30, 27, 12, 8, 16], these are mostly high level analyses carried out in terms of source language constructs. Unfortunately, such analyses turn out to be of limited utility at the machine code level. In fact, the problem of memory disambiguation is one of the weak points of object code modification, because high ....
....number of systems have been described for optimization of executable code [28, 17, 9, 23] to the best of our knowledge, alias analysis carried out by these systems is limited to fairly simple local analysis. On the other hand, there is an extensive work on pointer alias analysis of various kinds [30, 27, 12, 8, 16]. However, in almost all cases, these are high level analyses carried out in terms of source language constructs that ignore features typically encountered in executable programs. As a result, such analyses are of limited utility at the machine code level. Amme et al. 2] present a general method ....
B.-C. Cheng and W. mei W. Hwu. Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation. In Proceedings of the ACM SIGPLAN '00 Conference on Programming Language Design and Implementation, pages 57--69, June 2000.
....of granularity and tries to determine the (named) objects held in a pointer. The type inference literature, although certainly worth exploring, is beyond the scope of this paper. The third approach dynamically measures how pointer information a ects a runtime property, such as program performance [14, 105, 20, 30, 12, 31], dynamic points to relations [20, 62] or a dynamic characterization of the client analysis [20, 30, 12, 31] Such metrics are limited to a single execution of the program, and thus, represent a lower bound on their static counterparts. Because all metrics have their strengths and weaknesses a ....
....certainly worth exploring, is beyond the scope of this paper. The third approach dynamically measures how pointer information a ects a runtime property, such as program performance [14, 105, 20, 30, 12, 31] dynamic points to relations [20, 62] or a dynamic characterization of the client analysis [20, 30, 12, 31]. Such metrics are limited to a single execution of the program, and thus, represent a lower bound on their static counterparts. Because all metrics have their strengths and weaknesses a combination should be used [20] 3.3 Reproducible Results In most sciences a result is not accepted until it ....
[Article contains additional citation context not shown here]
B.-C. Cheng and W. mei Hwu. Modular interprocedural pointer analysis using access paths: Design, implementation, and evaluation. In Proceedings of the ACM SIGPLAN'00 Conference on Programming Language Design and 35(5), June 2000.
....information about all the relevant memory objects visible in each procedure, and is required to extract the internal connectivity of relevant data structure instances. In contrast, many algorithms only record alias pairs that determine the aliasing behavior of pointers within each procedure [7, 3, 12] because building an explicit heap model can be more expensive. In this paper, we develop a practical, scalable algorithm called Data Structure Analysis which provides the properties above and applies to arbitrary C programs. The key technical contributions of the Data Structure Analysis ....
.... Results We have implemented the complete Data Structure Analysis algorithm in the LLVM Compiler Infrastructure, using a C front end based on GCC [14] The analysis is performed entirely at link time, using stubs for standard C library functions to reflect their aliasing behavior as in other work [3, 11]. We evaluated Data Structure Analysis on four sets of benchmark programs: the Olden benchmark suite, the ptrdist 1.1 benchmark suite, the SPEC 2000 integer benchmarks and a set of other, unbundled, programs. The Olden benchmarks are widely used pointer and recursion intensive codes [18, 2] ....
[Article contains additional citation context not shown here]
B.-C. Cheng and W. mei Hwu. Modular interprocedural pointer analysis using access paths: Design, implementation, and evalutation. In SIGPLAN Conference on Programming Language Design and Implementation, pages 57--69, Vancouver, British Columbia, Canada, June 2000.
No context found.
Ben-Chung Cheng and Wen mei W. Hwu. Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, 2000.
No context found.
Ben-Chung Cheng and Wen-mei W. Hwu. Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, 2000.
No context found.
Ben-Chung Cheng and Wen-mei W. Hwu. Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation. In PLDI, 2000.
No context found.
B.-C. Cheng and W. W. Hwu. Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation. In ACM SIGPLAN Conference on Programming Language Design and Implementation, pages 57--69, 2000.
No context found.
B.-C. Cheng and W.W. Hwu. Modular interprocedural pointer analysis using access paths: Design, implementation, and evaluation. In PLDI, pages 57--69, 2000.
No context found.
B.-C. Cheng and W.W. Hwu. Modular interprocedural pointer analysis using access paths: Design, implementation, and evaluation. In PLDI, pages 57-69, 2000.
No context found.
B.-C. Cheng and W.W. Hwu. Modular interprocedural pointer analysis using access paths: Design, implementation, and evaluation. In Prog. Lang. Design and Impl., pages 57--69, 2000.
No context found.
Cheng, B., and Hwu, W.: 2000, `Modular Interprocedural Pointer Analysis Using Access Paths'. In: Conference on Programming Language Design and Implementation. pp. 57--69.
No context found.
B.-C. Cheng and W. W. Hwu. Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation. In ACM SIGPLAN Conference on Programming Language Design and Implementation, pages 57--69, 2000.
No context found.
B.-C. Cheng and W. W. Hwu, "Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation," in ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 57--69, 2000.
No context found.
B.-C. Cheng and W. W. Hwu. Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation. In ACM SIGPLAN Conference on Programming Language Design and Implementation, pages 57--69, 2000.
No context found.
Ben-Chung Cheng and Wen-mei W. Hwu. Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation. In Programming Languages Design and Implementation (PLDI), 2000.
No context found.
B.-C. Cheng and W. mei W. Hwu. Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation. In ACM SIGPLAN'00 Conference on Programming Language Design and Implementation, pages 57--69, 2000.
No context found.
B.-C. Cheng and W. mei W. Hwu. Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation. In Proceedings of the ACM SIGPLAN '00 Conference on Programming Language Design and Implementation, pages 57--69, June 2000.
No context found.
B.-C. Cheng and W. mei Hwu. Modular interprocedural pointer analysis using access paths: Design, implementation, and evalutation. In SIGPLAN Conference pages 57--69, Vancouver, British Columbia, Canada, June 2000.
No context found.
Ben-Chung Cheng and Wen-Mei W. Hwu. Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation. In Proceedings of the ACM SIGPLAN '00 conference on Programming language design and implementation, pages 57--69. ACM Press, 2000. 16
No context found.
Cheng, B.C., Hwu, W.: Modular interprocedural pointer analysis using access paths: Design, implementation, and evaluation. In: Prog. Lang. Design and Impl. (2000) 57--69
No context found.
B.-C. Cheng and W. mei Hwu. Modular interprocedural pointer analysis using access paths: Design, implementation, and evalutation. In ACM Conf. on Prog. Lang. Design and Implementation, Vancouver, 2000.
No context found.
Ben-Chung Cheng and Wen mei W. Hwu. Modular interprocedural pointer analysis using access paths: design, implementation, and evaluation. In Proc. of the ACM SIGPLAN'94 Conference on Programming Language Design and Implementation, pages 57--69, June 2000.
First 50 documents
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