[analyzer] Break cycles (optionally) when trimming an ExplodedGraph.
authorJordan Rose <jordan_rose@apple.com>
Wed, 20 Mar 2013 00:35:31 +0000 (00:35 +0000)
committerJordan Rose <jordan_rose@apple.com>
Wed, 20 Mar 2013 00:35:31 +0000 (00:35 +0000)
commit34e19a1d1d241c9b4d1030d5e4db530fee3e5a37
tree99212ce7d478d70363f77cef37240b380444d59f
parent200b6ed80fc8266cec4b262a6723ef1a96910f18
[analyzer] Break cycles (optionally) when trimming an ExplodedGraph.

Having a trimmed graph with no cycles (a DAG) is much more convenient for
trying to find shortest paths, which is exactly what BugReporter needs to do.

Part of the performance work for <rdar://problem/13433687>.

llvm-svn: 177468
clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
clang/lib/StaticAnalyzer/Core/BugReporter.cpp
clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp