Publication | Closed Access
Efficient points-to analysis for whole-program analysis
97
Citations
15
References
1999
Year
Mathematical ProgrammingProgram CheckingEngineeringSafe Alias InformationCompiler TechnologySoftware SystemsSoftware EngineeringSoftware AnalysisFormal VerificationAlias InformationSoftware Engineering ToolsStatic CheckingCompilersProgramming LanguagesComputer EngineeringEfficient Points-to AnalysisComputer ScienceOptimizing CompilerStatic Program AnalysisOperating SystemsProgram AnalysisSoftware TestingFormal MethodsParallel ProgrammingSymbolic ExecutionSystem Software
To function on programs written in languages such as C that make extensive use of pointers, automated software engineering tools require safe alias information. Existing alias-analysis techniques that are sufficiently efficient for analysis on large software systems may provide alias information that is too imprecise for tools that use it: the imprecision of the alias information may (1) reduce the precision of the information provided by the tools and (2) increase the cost of the tools. This paper presents a flow-insensitive, context-sensitive points-to analysis algorithm that computes alias information that is almost as precise as that computed by Andersen's algorithm — the most precise flow- and context-insensitive algorithm — and almost as efficient as Steensgaard's algorithm — the most efficient flow- and context-insensitive algorithm. Our empirical studies show that our algorithm scales to large programs better than Andersen's algorithm and show that flow-insensitive alias analysis algorithms, such as our algorithm and Andersen's algorithm, can compute alias information that is close in precision to that computed by the more expensive flow- and context-sensitive alias analysis algorithms.
| Year | Citations | |
|---|---|---|
Page 1
Page 1