r176149 - [analyzer] Add stop-gap patch to prevent assertion failure when analyzing LLVM codebase.

Ted Kremenek kremenek at apple.com
Tue Feb 26 17:26:58 PST 2013


Author: kremenek
Date: Tue Feb 26 19:26:58 2013
New Revision: 176149

URL: http://llvm.org/viewvc/llvm-project?rev=176149&view=rev
Log:
[analyzer] Add stop-gap patch to prevent assertion failure when analyzing LLVM codebase.

This potentially reduces a performance optimization of throwing away
PreStmtPurgeDeadSymbols nodes.  I'll investigate the performance impact
soon and see if we need something better.

Modified:
    cfe/trunk/lib/StaticAnalyzer/Core/ExplodedGraph.cpp

Modified: cfe/trunk/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/ExplodedGraph.cpp?rev=176149&r1=176148&r2=176149&view=diff
==============================================================================
--- cfe/trunk/lib/StaticAnalyzer/Core/ExplodedGraph.cpp (original)
+++ cfe/trunk/lib/StaticAnalyzer/Core/ExplodedGraph.cpp Tue Feb 26 19:26:58 2013
@@ -110,7 +110,7 @@ bool ExplodedGraph::shouldCollect(const
   // analysis history and are not consulted by any client code.
   ProgramPoint progPoint = node->getLocation();
   if (progPoint.getAs<PreStmtPurgeDeadSymbols>())
-    return true;
+    return !progPoint.getTag();
 
   // Condition 3.
   if (!progPoint.getAs<PostStmt>() || progPoint.getAs<PostStore>())





More information about the cfe-commits mailing list