Existing solutions to program analysis problems often trade between scalability and precision. We propose new techniques to improve scalability of interprocedural high-precision program analyses without sacrificing precision. The key insight is that there is a high volume of unimportant computations in these analyses. Our way to improve analysis time is by identifying and reducing these computations. We identify unimportant work in three classes of program analyses: flowsensitive dataflow analysis, context-sensitive dataflow analysis, and reachabilitybased analysis. We propose new algorithms to reduce this inefficiency. We are interested in analysis problems and programs that involve pointers, because they are used in many modern l...
Analyzing standard safety properties of a given program has traditionally been the primary focus of...
This dissertation focuses on algorithmic aspects of program verification, and presents modeling and ...
Practical programs share large modules of code. However, many program analyses are ineffective at re...
Existing solutions to program analysis problems often trade between scalability and precision. We p...
Static program analysis is in general more precise if it is sensitive to execution contexts (executi...
AbstractWe present a framework for program analysis of languages with procedures which is general en...
textPointer analysis is a fundamental enabling technology for program analysis. By improving the sc...
Flow- and context-sensitive points-to analysis is difficult to scale; for top-down approaches, the p...
Context-sensitive points-to analysis is critical for several program optimizations. However, as the ...
Context sensitive inter-procedural dataflow analysis is a precise approach for static analysis of pr...
Many program analyses involve, or can be expressed in terms of, a graph reachability problem. We pre...
Data-flow analysis is widely used in extracting from source programs useful information for program ...
AbstractThe “profitability” of code optimizations is defined in terms of a Markov model of program f...
Interprocedural data-flow analyses form an expressive and useful paradigm of numerous static analysi...
The Context-Free Language Reachability (CFL-R) formalism relates to some of the most important compu...
Analyzing standard safety properties of a given program has traditionally been the primary focus of...
This dissertation focuses on algorithmic aspects of program verification, and presents modeling and ...
Practical programs share large modules of code. However, many program analyses are ineffective at re...
Existing solutions to program analysis problems often trade between scalability and precision. We p...
Static program analysis is in general more precise if it is sensitive to execution contexts (executi...
AbstractWe present a framework for program analysis of languages with procedures which is general en...
textPointer analysis is a fundamental enabling technology for program analysis. By improving the sc...
Flow- and context-sensitive points-to analysis is difficult to scale; for top-down approaches, the p...
Context-sensitive points-to analysis is critical for several program optimizations. However, as the ...
Context sensitive inter-procedural dataflow analysis is a precise approach for static analysis of pr...
Many program analyses involve, or can be expressed in terms of, a graph reachability problem. We pre...
Data-flow analysis is widely used in extracting from source programs useful information for program ...
AbstractThe “profitability” of code optimizations is defined in terms of a Markov model of program f...
Interprocedural data-flow analyses form an expressive and useful paradigm of numerous static analysi...
The Context-Free Language Reachability (CFL-R) formalism relates to some of the most important compu...
Analyzing standard safety properties of a given program has traditionally been the primary focus of...
This dissertation focuses on algorithmic aspects of program verification, and presents modeling and ...
Practical programs share large modules of code. However, many program analyses are ineffective at re...