A Static Analysis Tool with Optimizations for Reachability Determination

Published In

ASE 2017: Proceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering

ISBN

978-1-5386-2684-9

Document Type

Citation

Publication Date

10-30-2017

Abstract

To reduce the false positives of static analysis, many tools collect path constraints and integrate SMT solvers to filter unreachable execution paths. However, the accumulated calling and computing of SMT solvers are time and resource consuming. This paper presents TsmartLW, an alternate static analysis tool in which we implement a path constraint solving engine to speed up reachability determination. Within the engine, typical types of constraint-patterns are firstly defined based on an empirical study of a large number of code repositories. For each pattern, a constraint solving algorithm is designed and implemented. For each program, the engine predicts the most suitable strategy and then applies the strategy to solve path constraints. The experimental results on some well-known benchmarks and real-world applications show that TsmartLW is faster than some state-of-the-art static analysis tools. For example, it is 1.32x faster than CPAchecker and our engine is 369x faster than SMT solvers in solving path constraints.

Description

©2017 IEEE

DOI

10.1109/ASE.2017.8115706

Persistent Identifier

https://archives.pdx.edu/ds/psu/30639

Share

COinS