X-Git-Url: http://plrg.eecs.uci.edu/git/?p=c11tester.git;a=blobdiff_plain;f=fuzzer.h;h=0fcfb51f67e66ff9ee439f9b48c1bd860838cbfa;hp=56e40a984c8eaeeacefae1b352610edb0f9b876d;hb=7742256df627848c1c375f979f5369a45c92057b;hpb=972825bf05bf49b7425a979362986be2b8682b37 diff --git a/fuzzer.h b/fuzzer.h index 56e40a98..0fcfb51f 100644 --- a/fuzzer.h +++ b/fuzzer.h @@ -9,13 +9,15 @@ class Fuzzer { public: Fuzzer() {} virtual int selectWrite(ModelAction *read, SnapVector* rf_set); - virtual Predicate * get_selected_child_branch(thread_id_t tid) = 0; - Thread * selectThread(int * threadlist, int numthreads); - Thread * selectNotify(action_list_t * waiters); + virtual bool has_paused_threads() { return false; } + virtual Thread * selectThread(int * threadlist, int numthreads); + + Thread * selectNotify(simple_action_list_t * waiters); bool shouldSleep(const ModelAction *sleep); bool shouldWake(const ModelAction *sleep); - virtual void register_engine(ModelHistory * history, ModelExecution * execution) = 0; - MEMALLOC + virtual bool shouldWait(const ModelAction *wait); + virtual void register_engine(ModelChecker * _model, ModelExecution * execution) {} + SNAPSHOTALLOC private: }; #endif