diff options
Diffstat (limited to 'lib/Basic')
-rw-r--r-- | lib/Basic/CmdLineOptions.cpp | 17 | ||||
-rw-r--r-- | lib/Basic/ConstructSolverChain.cpp | 14 |
2 files changed, 21 insertions, 10 deletions
diff --git a/lib/Basic/CmdLineOptions.cpp b/lib/Basic/CmdLineOptions.cpp index 6fe20b7e..ac0474fb 100644 --- a/lib/Basic/CmdLineOptions.cpp +++ b/lib/Basic/CmdLineOptions.cpp @@ -40,9 +40,20 @@ MinQueryTimeToLog("min-query-time-to-log", "Set this param to a negative value to log timeouts only.")); llvm::cl::opt<double> -MaxSTPTime("max-stp-time", - llvm::cl::desc("Maximum amount of time for a single query (default=0s (off)). Enables --use-forked-stp"), - llvm::cl::init(0.0)); +MaxCoreSolverTime("max-solver-time", + llvm::cl::desc("Maximum amount of time for a single SMT query (default=0s (off)). Enables --use-forked-solver"), + llvm::cl::init(0.0), + llvm::cl::value_desc("seconds")); + +llvm::cl::opt<bool> +UseForkedCoreSolver("use-forked-solver", + llvm::cl::desc("Run the core SMT solver in a forked process (default=on)"), + llvm::cl::init(true)); + +llvm::cl::opt<bool> +CoreSolverOptimizeDivides("solver-optimize-divides", + llvm::cl::desc("Optimize constant divides into add/shift/multiplies before passing to core SMT solver (default=on)"), + llvm::cl::init(true)); /* Using cl::list<> instead of cl::bits<> results in quite a bit of ugliness when it comes to checking diff --git a/lib/Basic/ConstructSolverChain.cpp b/lib/Basic/ConstructSolverChain.cpp index 70c728df..c0d0ef61 100644 --- a/lib/Basic/ConstructSolverChain.cpp +++ b/lib/Basic/ConstructSolverChain.cpp @@ -16,13 +16,13 @@ namespace klee { - Solver *constructSolverChain(STPSolver *stpSolver, - std::string querySMT2LogPath, - std::string baseSolverQuerySMT2LogPath, - std::string queryPCLogPath, - std::string baseSolverQueryPCLogPath) + Solver *constructSolverChain(Solver *coreSolver, + std::string querySMT2LogPath, + std::string baseSolverQuerySMT2LogPath, + std::string queryPCLogPath, + std::string baseSolverQueryPCLogPath) { - Solver *solver = stpSolver; + Solver *solver = coreSolver; if (optionIsSet(queryLoggingOptions, SOLVER_PC)) { @@ -55,7 +55,7 @@ namespace klee solver = createIndependentSolver(solver); if (DebugValidateSolver) - solver = createValidatingSolver(solver, stpSolver); + solver = createValidatingSolver(solver, coreSolver); if (optionIsSet(queryLoggingOptions, ALL_PC)) { |