Efficient field-sensitive pointer analysis for C
Cached
Download Links
- [www.mcs.vuw.ac.nz]
- [www.doc.ic.ac.uk]
- [www-ala.doc.ic.ac.uk]
- [www.mcs.vuw.ac.nz]
- DBLP
Other Repositories/Bibliography
| Venue: | IN PROCEEDINGS OF THE ACM WORKSHOP ON PROGRAM ANALYSIS FOR SOFTWARE TOOLS AND ENGINEERING (PASTE |
| Citations: | 20 - 4 self |
BibTeX
@INPROCEEDINGS{Pearce_efficientfield-sensitive,
author = {David J. Pearce and Paul H. J. Kelly and Chris Hankin},
title = {Efficient field-sensitive pointer analysis for C},
booktitle = {IN PROCEEDINGS OF THE ACM WORKSHOP ON PROGRAM ANALYSIS FOR SOFTWARE TOOLS AND ENGINEERING (PASTE},
year = {},
pages = {37--42},
publisher = {ACM Press}
}
Years of Citing Articles
OpenURL
Abstract
The subject of this paper is flow- and context-insensitive pointer analysis. We present a novel approach for precisely modelling struct variables and indirect function calls. Our method emphasises efficiency and simplicity and is based on a simple language of set constraints. We obtain an O(v 4) bound on the time needed to solve a set of constraints from this language, where v is the number of constraint variables. This gives, for the first time, some insight into the hardness of performing field-sensitive pointer analysis of C. Furthermore, we experimentally evaluate the time versus precision trade-off for our method by comparing against the field-insensitive equivalent. Our benchmark suite consists of 11 common C programs ranging in size from 15,000 to 200,000 lines of code. Our results indicate the field-sensitive analysis is more expensive to compute, but yields significantly better precision. In addition, our technique has been integrated into the latest release (version 4.1) of the GNU Compiler GCC. Finally, we identify several previously unknown issues with an alternative and less precise approach to modelling struct variables, known as







