]> granicus.if.org Git - clang/commit
[analyzer] Do part of the work to find shortest bug paths up front.
authorJordan Rose <jordan_rose@apple.com>
Mon, 18 Mar 2013 23:34:37 +0000 (23:34 +0000)
committerJordan Rose <jordan_rose@apple.com>
Mon, 18 Mar 2013 23:34:37 +0000 (23:34 +0000)
commita5f80b2ea6d30c5055c067530d63bb0dcaf937d0
tree7bc28e327e0c9fd0522a43fa12739780e055f494
parent85a92cfa52ddf4c45fe2baca4d7fea0bdc5ed103
[analyzer] Do part of the work to find shortest bug paths up front.

Splitting the graph trimming and the path-finding (r177216) already
recovered quite a bit of performance lost to increased suppression.
We can still do better by also performing the reverse BFS up front
(needed for shortest-path-finding) and only walking the shortest path
for each report. This does mean we have to walk back up the path and
invalidate all the BFS numbers if the report turns out to be invalid,
but it's probably still faster than redoing the full BFS every time.

More performance work for <rdar://problem/13433687>

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177353 91177308-0d34-0410-b5e6-96231b3b80d8
lib/StaticAnalyzer/Core/BugReporter.cpp