diff options
author | Lukas Wölfer <lukas.woelfer@rwth-aachen.de> | 2019-08-23 14:46:46 +0200 |
---|---|---|
committer | Cristian Cadar <c.cadar@imperial.ac.uk> | 2019-11-28 17:27:13 +0000 |
commit | 0de67b9f0c3f7f331f873f19561aef311d2bed4a (patch) | |
tree | 238e2d5d4b1faaa447fb883caf2f5a6e8fdb42c2 /lib/Core/SpecialFunctionHandler.cpp | |
parent | 31d4d0830add0987f64fd0b6ff2dadd6de387697 (diff) | |
download | klee-0de67b9f0c3f7f331f873f19561aef311d2bed4a.tar.gz |
Move merging related code from Executor into MergingSearcher
Co-authored-by: Felix Rath <felix.rath@comsys.rwth-aachen.de>
Diffstat (limited to 'lib/Core/SpecialFunctionHandler.cpp')
-rw-r--r-- | lib/Core/SpecialFunctionHandler.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/Core/SpecialFunctionHandler.cpp b/lib/Core/SpecialFunctionHandler.cpp index 4acf2e36..bae8085d 100644 --- a/lib/Core/SpecialFunctionHandler.cpp +++ b/lib/Core/SpecialFunctionHandler.cpp @@ -12,6 +12,7 @@ #include "Executor.h" #include "Memory.h" #include "MemoryManager.h" +#include "Searcher.h" #include "TimingSolver.h" #include "klee/ExecutionState.h" @@ -353,16 +354,17 @@ void SpecialFunctionHandler::handleCloseMerge(ExecutionState &state, Instruction *i = target->inst; if (DebugLogMerge) - llvm::errs() << "close merge: " << &state << " at " << i << '\n'; + llvm::errs() << "close merge: " << &state << " at [" << *i << "]\n"; if (state.openMergeStack.empty()) { std::ostringstream warning; warning << &state << " ran into a close at " << i << " without a preceding open"; klee_warning("%s", warning.str().c_str()); } else { - assert(executor.inCloseMerge.find(&state) == executor.inCloseMerge.end() && + assert(executor.mergingSearcher->inCloseMerge.find(&state) == + executor.mergingSearcher->inCloseMerge.end() && "State cannot run into close_merge while being closed"); - executor.inCloseMerge.insert(&state); + executor.mergingSearcher->inCloseMerge.insert(&state); state.openMergeStack.back()->addClosedState(&state, i); state.openMergeStack.pop_back(); } |