@@ -58,8 +58,11 @@ class InterpreterHandler {
58
58
59
59
virtual void processTestCase (const ExecutionState &state, const char *message,
60
60
const char *suffix, bool isError = false ) = 0;
61
-
62
61
virtual ToolJson info () const = 0;
62
+
63
+ // used for writing .ktest files
64
+ virtual int argc () = 0;
65
+ virtual char **argv () = 0;
63
66
};
64
67
65
68
// / [File][Line][Column] -> Opcode
@@ -209,10 +212,6 @@ class Interpreter {
209
212
// a user specified path. use null to reset.
210
213
virtual void setReplayPath (const std::vector<bool > *path) = 0;
211
214
212
- // supply a set of symbolic bindings that will be used as "seeds"
213
- // for the search. use null to reset.
214
- virtual void useSeeds (const std::vector<struct KTest *> *seeds) = 0;
215
-
216
215
virtual void runFunctionAsMain (llvm::Function *f, int argc, char **argv,
217
216
char **envp) = 0;
218
217
@@ -237,7 +236,10 @@ class Interpreter {
237
236
virtual void getConstraintLog (const ExecutionState &state, std::string &res,
238
237
LogType logFormat = STP) = 0;
239
238
240
- virtual bool getSymbolicSolution (const ExecutionState &state, KTest &res) = 0;
239
+ virtual void getSteppedInstructions (const ExecutionState &state,
240
+ unsigned &res) = 0;
241
+
242
+ virtual bool getSymbolicSolution (const ExecutionState &state, KTest *res) = 0;
241
243
242
244
virtual void addSARIFReport (const ExecutionState &state) = 0;
243
245
0 commit comments