diff options
author | Ted Kremenek <kremenek@apple.com> | 2012-01-11 01:06:27 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2012-01-11 01:06:27 +0000 |
commit | 3f406ba4bf6090d26bf59e20c9536e81bc9e01b6 (patch) | |
tree | 3d4af77fccd0ac6e3e50175504448e09a529389a /clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp | |
parent | f4fb2c5ac8af14b72836a94c23fb930cdf1cf409 (diff) | |
download | bcm5719-llvm-3f406ba4bf6090d26bf59e20c9536e81bc9e01b6.tar.gz bcm5719-llvm-3f406ba4bf6090d26bf59e20c9536e81bc9e01b6.zip |
Remove '#if 0' from ExprEngine::InlineCall(), and start fresh by wiring up inlining for straight C calls.
My hope is to reimplement this from first principles based on the simplifications of removing unneeded node builders
and re-evaluating how C++ calls are handled in the CFG. The hope is to turn inlining "on-by-default" as soon as possible
with a core set of things working well, and then expand over time.
llvm-svn: 147904
Diffstat (limited to 'clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp')
-rw-r--r-- | clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp b/clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp index 691a82ed3c2..160925b08ff 100644 --- a/clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp +++ b/clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp @@ -91,7 +91,8 @@ void ExplodedGraph::reclaimRecentlyAllocatedNodes() { // Condition 3. ProgramPoint progPoint = node->getLocation(); - if (!isa<PostStmt>(progPoint)) + if (!isa<PostStmt>(progPoint) || + (isa<CallEnter>(progPoint) || isa<CallExit>(progPoint))) continue; // Condition 4. PostStmt ps = cast<PostStmt>(progPoint); |