Effective static race detection for Java
We present a novel technique for static race detection in Java programs, comprised of a
series of stages that employ a combination of static analyses to successively reduce the …
series of stages that employ a combination of static analyses to successively reduce the …
A survey of parametric static analysis
Understanding program behaviors is important to verify program properties or to optimize
programs. Static analysis is a widely used technique to approximate program behaviors via …
programs. Static analysis is a widely used technique to approximate program behaviors via …
Pinpoint: Fast and precise sparse value flow analysis for million lines of code
When dealing with millions of lines of code, we still cannot have the cake and eat it: sparse
value-flow analysis is powerful in checking source-sink problems, but existing work cannot …
value-flow analysis is powerful in checking source-sink problems, but existing work cannot …
Flow-sensitive pointer analysis for millions of lines of code
B Hardekopf, C Lin - International Symposium on Code …, 2011 - ieeexplore.ieee.org
Many program analyses benefit, both in precision and performance, from precise pointer
analysis. An important dimension of pointer analysis precision is flow-sensitivity, which has …
analysis. An important dimension of pointer analysis precision is flow-sensitivity, which has …
The ant and the grasshopper: fast and accurate pointer analysis for millions of lines of code
B Hardekopf, C Lin - Proceedings of the 28th ACM SIGPLAN …, 2007 - dl.acm.org
Pointer information is a prerequisite for most program analyses, and the quality of this
information can greatly affect their precision and performance. Inclusion-based (ie Andersen …
information can greatly affect their precision and performance. Inclusion-based (ie Andersen …
Semi-sparse flow-sensitive pointer analysis
B Hardekopf, C Lin - ACM SIGPLAN Notices, 2009 - dl.acm.org
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 …
analyses depends on the precision of the pointer information they receive. Two major axes …
When threads meet events: efficient and precise static race detection with origins
Data races are among the worst bugs in software in that they exhibit non-deterministic
symptoms and are notoriously difficult to detect. The problem is exacerbated by interactions …
symptoms and are notoriously difficult to detect. The problem is exacerbated by interactions …
Thresher: Precise refutations for heap reachability
We present a precise, path-sensitive static analysis for reasoning about heap reachability,
that is, whether an object can be reached from another variable or object via pointer …
that is, whether an object can be reached from another variable or object via pointer …
Typestate-like analysis of multiple interacting objects
NA Naeem, O Lhoták - ACM Sigplan Notices, 2008 - dl.acm.org
This paper presents a static analysis of typestate-like temporal specifications of groups of
interacting objects, which are expressed using tracematches. Whereas typestate expresses …
interacting objects, which are expressed using tracematches. Whereas typestate expresses …
Static analysis with demand-driven value refinement
Static analysis tools for JavaScript must strike a delicate balance, achieving the level of
precision required by the most complex features of target programs without incurring …
precision required by the most complex features of target programs without incurring …