diff options
author | Cristian Cadar <cristic@cs.stanford.edu> | 2013-01-02 15:49:34 +0000 |
---|---|---|
committer | Cristian Cadar <cristic@cs.stanford.edu> | 2013-01-02 15:49:34 +0000 |
commit | 79237753a1e9cbe653e5763ffd61f3cb5b8759c1 (patch) | |
tree | 574e2bf199f64ea7ecf8c5a38963bfe2e6192d4c /include | |
parent | d369654e361782b3f4a52303114db11959a346f7 (diff) | |
download | klee-79237753a1e9cbe653e5763ffd61f3cb5b8759c1.tar.gz |
Patch by Tomasz Kuchta adding more detailed information on query failures.
git-svn-id: https://llvm.org/svn/llvm-project/klee/trunk@171391 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/klee/IncompleteSolver.h | 2 | ||||
-rw-r--r-- | include/klee/Solver.h | 6 | ||||
-rw-r--r-- | include/klee/SolverImpl.h | 17 |
3 files changed, 16 insertions, 9 deletions
diff --git a/include/klee/IncompleteSolver.h b/include/klee/IncompleteSolver.h index 38ee4e28..9a122c74 100644 --- a/include/klee/IncompleteSolver.h +++ b/include/klee/IncompleteSolver.h @@ -101,7 +101,7 @@ public: const std::vector<const Array*> &objects, std::vector< std::vector<unsigned char> > &values, bool &hasSolution); - bool hasTimeoutOccurred(); + SolverRunStatus getOperationStatusCode(); }; } diff --git a/include/klee/Solver.h b/include/klee/Solver.h index 94e7d477..9e05967d 100644 --- a/include/klee/Solver.h +++ b/include/klee/Solver.h @@ -226,12 +226,6 @@ namespace klee { /// fails. Solver *createDummySolver(); - enum SolverRunStatus { SOLVER_RUN_STATUS_SUCCESS, - SOLVER_RUN_STATUS_TIMEOUT, - SOLVER_RUN_STATUS_FORK_FAILED, - SOLVER_RUN_STATUS_INTERRUPTED, - SOLVER_RUN_STATUS_UNEXPECTED_EXIT_CODE, - SOLVER_RUN_STATUS_WAITPID_FAILED }; } #endif diff --git a/include/klee/SolverImpl.h b/include/klee/SolverImpl.h index 080dfc54..09be849b 100644 --- a/include/klee/SolverImpl.h +++ b/include/klee/SolverImpl.h @@ -28,6 +28,15 @@ namespace klee { SolverImpl() {} virtual ~SolverImpl(); + enum SolverRunStatus { SOLVER_RUN_STATUS_SUCCESS_SOLVABLE, + SOLVER_RUN_STATUS_SUCCESS_UNSOLVABLE, + SOLVER_RUN_STATUS_FAILURE, + SOLVER_RUN_STATUS_TIMEOUT, + SOLVER_RUN_STATUS_FORK_FAILED, + SOLVER_RUN_STATUS_INTERRUPTED, + SOLVER_RUN_STATUS_UNEXPECTED_EXIT_CODE, + SOLVER_RUN_STATUS_WAITPID_FAILED }; + /// computeValidity - Compute a full validity result for the /// query. /// @@ -57,8 +66,12 @@ namespace klee { &values, bool &hasSolution) = 0; - /// haveTimeOutOccurred - retrieve timeout status for the last query. - virtual bool hasTimeoutOccurred() = 0; + /// getOperationStatusCode - get the status of the last solver operation + virtual SolverRunStatus getOperationStatusCode() = 0; + + /// getOperationStatusString - get string representation of the operation + /// status code + static const char* getOperationStatusString(SolverRunStatus statusCode); }; } |