diff options
author | Zhongxing Xu <xuzhongxing@gmail.com> | 2010-03-04 09:04:52 +0000 |
---|---|---|
committer | Zhongxing Xu <xuzhongxing@gmail.com> | 2010-03-04 09:04:52 +0000 |
commit | 57d3b76761bdba265769deb497afa784935602be (patch) | |
tree | 2d6e2e3f667aaa22d167c011322684b667ac5ca8 /lib/Checker/GRCoreEngine.cpp | |
parent | 468ec6c0266e48fccb26ce50d5b915c645bb3c7b (diff) |
When profiling Environment, also profile with AnalysisContext*, bacause
we now may have identical states with different analysis context.
Set the right AnalysisContext in state when entering and leaving a callee.
With both of the above changes, we can pass the test case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97724 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Checker/GRCoreEngine.cpp')
-rw-r--r-- | lib/Checker/GRCoreEngine.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/Checker/GRCoreEngine.cpp b/lib/Checker/GRCoreEngine.cpp index a9347d0164..63ac31d606 100644 --- a/lib/Checker/GRCoreEngine.cpp +++ b/lib/Checker/GRCoreEngine.cpp @@ -682,6 +682,7 @@ void GRCallExitNodeBuilder::GenerateNode(const GRState *state) { // Get the callee's location context. const StackFrameContext *LocCtx = cast<StackFrameContext>(Pred->getLocationContext()); + state = state->setAnalysisContext(LocCtx->getParent()->getAnalysisContext()); PostStmt Loc(LocCtx->getCallSite(), LocCtx->getParent()); bool isNew; |