about summary refs log tree commit diff homepage
path: root/lib/Core/Executor.cpp
diff options
context:
space:
mode:
authorNguyễn Gia Phong <mcsinyx@disroot.org>2023-04-11 19:24:59 +0900
committerNguyễn Gia Phong <cnx@loang.net>2023-11-10 16:47:52 +0900
commitca85fac2be3353e1e4b1b633d6fc3c62473f2e7a (patch)
tree0d9e471f96f874d36fda84ea43de4b53ed2337ae /lib/Core/Executor.cpp
parent570be9543a034d17591f91c9e46b593c9e4ad7f4 (diff)
downloadklee-ca85fac2be3353e1e4b1b633d6fc3c62473f2e7a.tar.gz
Clone state more completely
Diffstat (limited to 'lib/Core/Executor.cpp')
-rw-r--r--lib/Core/Executor.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/Core/Executor.cpp b/lib/Core/Executor.cpp
index 628e6719..f28a363c 100644
--- a/lib/Core/Executor.cpp
+++ b/lib/Core/Executor.cpp
@@ -3764,7 +3764,8 @@ void Executor::terminateStateOnExit(ExecutionState &state) {
 
   interpreterHandler->incPathsCompleted();
   getConstraintLog(state, state.formula, Interpreter::SMTLIB2);
-  searchDifferentiators(&state);
+  if (state.patchNo)
+    searchDifferentiators(&state);
   exitStates.insert(&state);
   terminateState(state);
 }
@@ -4529,7 +4530,7 @@ void Executor::executeMakeSymbolic(ExecutionState &state,
       assert(std::atoi(name.c_str() + 3) == this->symArgs.size());
       this->symArgs.push_back(mo->size - 1); // string's null termination
     } else if (isSymOut(uniqueName)) {
-      assert(this->symOuts.find(uniqueName) == this->symOuts.end());
+      // assert(this->symOuts.find(uniqueName) == this->symOuts.end());
       this->symOuts[uniqueName] = mo->size;
     }