Three partition refinement algorithms
SIAM Journal on Computing
The concurrency workbench: a semantics-based tool for the verification of concurrent systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
On finding the strongly connected components in a directed graph
Information Processing Letters
IEEE Transactions on Software Engineering
Partial online cycle elimination in inclusion constraint graphs
PLDI '98 Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
Model checking
Off-line variable substitution for scaling points-to analysis
PLDI '00 Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation
Ultra-fast aliasing analysis using CLA: a million lines of C code in a second
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
CIL: Intermediate Language and Tools for Analysis and Transformation of C Programs
CC '02 Proceedings of the 11th International Conference on Compiler Construction
PLDI '03 Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation
An efficient algorithm for computing bisimulation equivalence
Theoretical Computer Science
Efficient field-sensitive pointer analysis for C
Proceedings of the 5th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Compilers: Principles, Techniques, and Tools (2nd Edition)
Compilers: Principles, Techniques, and Tools (2nd Edition)
The ant and the grasshopper: fast and accurate pointer analysis for millions of lines of code
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
Efficient field-sensitive pointer analysis of C
ACM Transactions on Programming Languages and Systems (TOPLAS)
Exploiting pointer and location equivalence to optimize pointer analysis
SAS'07 Proceedings of the 14th international conference on Static Analysis
Hi-index | 0.00 |
We introduce a new technique for dramatically improving the performance of inclusion-based points-to analysis, by using bisimilarity in order to detect pointer equivalences before constraint resolution. We present the design and correctness proof of this technique, along with an implementation prototype, and a series of benchmarks. The benchmarks indicate that our technique dramatically improves the scalability of inclusion-based points-to analysis, beating the current leading offline optimizations for inclusion-based points-to analysis.