Semi-sparse flow-sensitive pointer analysis

10 years 11 months ago
Semi-sparse flow-sensitive pointer analysis
Pointer analysis is a prerequisite for many program analyses, and the effectiveness of these analyses depends on the precision of the pointer information they receive. Two major axes of pointer analysis precision are flow-sensitivity and context-sensitivity, and while there has been significant recent progress regarding scalable context-sensitive pointer analysis, relatively little progress has been made in improving the scalability of flow-sensitive pointer analysis. This paper presents a new interprocedural, flow-sensitive pointer analysis algorithm that combines two ideas--semi-sparse analysis and a novel use of BDDs--that arise from a careful understanding of the unique challenges that face flow-sensitive pointer analysis. We evaluate our algorithm on 12 C benchmarks ranging from 11K to 474K lines of code. Our fastest algorithm is on average 197? faster and uses 4.6? less memory than the state of the art, and it can analyze programs that are an order of magnitude larger than the p...
Ben Hardekopf, Calvin Lin
Added 22 Nov 2009
Updated 22 Nov 2009
Type Conference
Year 2009
Where POPL
Authors Ben Hardekopf, Calvin Lin
Comments (0)