about summary refs log tree commit diff homepage
path: root/lib/Core/Executor.cpp
diff options
context:
space:
mode:
authorCristian Cadar <c.cadar@imperial.ac.uk>2014-06-06 09:20:43 +0100
committerCristian Cadar <c.cadar@imperial.ac.uk>2014-06-06 09:20:43 +0100
commit6ae1a8a7d100019a97b96ad9bd0dcba273c6f7e8 (patch)
tree4a632527d483d2d377cddc318a641fd1ca6c59f8 /lib/Core/Executor.cpp
parent15470d2661900bae90ac457dd60694a4f4f7ec3c (diff)
parent0a7ec5db72a0baa624a0103ae8618d6379e35a76 (diff)
downloadklee-6ae1a8a7d100019a97b96ad9bd0dcba273c6f7e8.tar.gz
Merge pull request #129 from ahorn/master
Add SimplifyExpressions command line option
Diffstat (limited to 'lib/Core/Executor.cpp')
-rw-r--r--lib/Core/Executor.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/Core/Executor.cpp b/lib/Core/Executor.cpp
index 3a07138d..fcdf8a6d 100644
--- a/lib/Core/Executor.cpp
+++ b/lib/Core/Executor.cpp
@@ -164,6 +164,11 @@ namespace {
   SimplifySymIndices("simplify-sym-indices",
                      cl::init(false));
 
+  cl::opt<bool>
+  EqualitySubstitution("equality-substitution",
+                     cl::init(true),
+                     cl::desc("Simplify equality expressions before querying the solver (default=on)."));
+
   cl::opt<unsigned>
   MaxSymArraySize("max-sym-array-size",
                   cl::init(0));
@@ -333,7 +338,7 @@ Executor::Executor(const InterpreterOptions &opts,
                          interpreterHandler->getOutputFilename(ALL_QUERIES_PC_FILE_NAME),
                          interpreterHandler->getOutputFilename(SOLVER_QUERIES_PC_FILE_NAME));
   
-  this->solver = new TimingSolver(solver);
+  this->solver = new TimingSolver(solver, EqualitySubstitution);
 
   memory = new MemoryManager();
 }