[analyzer] Skip printing trivial nodes in exploded graph
authorGeorge Karpenkov <ekarpenkov@apple.com>
Fri, 7 Sep 2018 00:42:32 +0000 (00:42 +0000)
committerGeorge Karpenkov <ekarpenkov@apple.com>
Fri, 7 Sep 2018 00:42:32 +0000 (00:42 +0000)
commit98bee0229749b9164c70579c34f6258f4fcb639b
treedc53277eb148728b5802619575b18af985f4c8ff
parent93ce8b24d5392db60a4cf91c269639cc591ad006
[analyzer] Skip printing trivial nodes in exploded graph

A node is considered to be trivial if it only has one successor, one
predecessor, and a state equal to the predecessor.
Can drastically (> 2x) reduce the size of the generated exploded
graph.

Differential Revision: https://reviews.llvm.org/D51665

llvm-svn: 341616
clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
clang/lib/StaticAnalyzer/Core/ExprEngine.cpp