ACM Home Page
Please provide us with feedback. Feedback
Efficient context-sensitive pointer analysis for C programs
Full text PdfPdf (1.38 MB)
Source Conference on Programming Language Design and Implementation archive
Proceedings of the ACM SIGPLAN 1995 conference on Programming language design and implementation table of contents
La Jolla, California, United States
Pages: 1 - 12  
Year of Publication: 1995
ISBN:0-89791-697-2
Also published in ...
Authors
Robert P. Wilson  Computer Systems Laboratory, Stanford University, CA
Monica S. Lam  Computer Systems Laboratory, Stanford University, CA
Sponsor
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 18,   Downloads (12 Months): 127,   Citation Count: 168
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/207110.207111
What is a DOI?

ABSTRACT

This paper proposes an efficient technique for context-sensitive pointer analysis that is applicable to real C programs. For efficiency, we summarize the effects of procedures using partial transfer functions. A partial transfer function (PTF) describes the behavior of a procedure assuming that certain alias relationships hold when it is called. We can reuse a PTF in many calling contexts as long as the aliases among the inputs to the procedure are the same. Our empirical results demonstrate that this technique is successful—a single PTF per procedure is usually sufficient to obtain completely context-sensitive results. Because many C programs use features such as type casts and pointer arithmetic to circumvent the high-level type system, our algorithm is based on a low-level representation of memory locations that safely handles all the features of C. We have implemented our algorithm in the SUIF compiler system and we show that it runs efficiently for a set of C benchmarks.


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
3
4
 
5
M. Emami. A Practical interprocedural Alias Analysis for an Optimizing/Parallelizing C Compiler. Master's thesis, School of Computer Science, McGill University, Aug. 1993.
6
 
7
 
8
W. L. Harrison III. The Interprocedural Analysis and Automatic Parallelization of Scheme Programs. Lisp and Symbolic Computation, 2(3): 176-396, Oct. 1989.
 
9
10
 
11
N. Jones and S. Muchnick. Flow Analysis and Optimization of Lisp-like Structures. In S. Muchnick and N. Jones, editors, Program Flow Analysis: Theory and Applications, pages 102-131. Prentice Hall, 1979.
12
13
14
 
15
E. Ruf. Personal communication, Oct. 1994.
16

CITED BY  168

Collaborative Colleagues:
Robert P. Wilson: colleagues
Monica S. Lam: colleagues