aboutsummaryrefslogtreecommitdiff
path: root/lib/StaticAnalyzer/Core/GRState.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/StaticAnalyzer/Core/GRState.cpp')
-rw-r--r--lib/StaticAnalyzer/Core/GRState.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/StaticAnalyzer/Core/GRState.cpp b/lib/StaticAnalyzer/Core/GRState.cpp
index c904ed2882..efe88ba47e 100644
--- a/lib/StaticAnalyzer/Core/GRState.cpp
+++ b/lib/StaticAnalyzer/Core/GRState.cpp
@@ -81,8 +81,7 @@ GRStateManager::removeDeadBindings(const GRState* state,
NewState.setStore(newStore);
SymReaper.setReapedStore(newStore);
- state = getPersistentState(NewState);
- return ConstraintMgr->removeDeadBindings(state, SymReaper);
+ return getPersistentState(NewState);
}
const GRState *GRStateManager::MarshalState(const GRState *state,
@@ -338,6 +337,14 @@ void GRStateManager::recycleUnusedStates() {
recentlyAllocatedStates.clear();
}
+const GRState* GRStateManager::getPersistentStateWithGDM(
+ const GRState *FromState,
+ const GRState *GDMState) {
+ GRState NewState = *FromState;
+ NewState.GDM = GDMState->GDM;
+ return getPersistentState(NewState);
+}
+
const GRState* GRStateManager::getPersistentState(GRState& State) {
llvm::FoldingSetNodeID ID;