X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=fuzzer.h;h=65210e09ae8e147693d3b5300e4c5db3ff766cc6;hb=HEAD;hp=d31c22673a4aab928a614075490e79b1362dd9cf;hpb=53601c28881fb6637665178ccefceafbd44cf019;p=c11tester.git diff --git a/fuzzer.h b/fuzzer.h index d31c2267..65210e09 100644 --- a/fuzzer.h +++ b/fuzzer.h @@ -10,15 +10,15 @@ public: Fuzzer() {} virtual int selectWrite(ModelAction *read, SnapVector* rf_set); virtual bool has_paused_threads() { return false; } - virtual void notify_paused_thread(Thread * thread) = 0; virtual Thread * selectThread(int * threadlist, int numthreads); - Thread * selectNotify(action_list_t * waiters); + Thread * selectNotify(simple_action_list_t * waiters); bool shouldSleep(const ModelAction *sleep); bool shouldWake(const ModelAction *sleep); - virtual bool shouldWait(const ModelAction *wait) = 0; - virtual void register_engine(ModelHistory * history, ModelExecution * execution) = 0; - virtual Predicate * get_selected_child_branch(thread_id_t tid) = 0; + virtual bool waitShouldFail(ModelAction *wait); + bool waitShouldWakeUp(const ModelAction *wait); + bool randomizeWaitTime(ModelAction * timed_wait); + virtual void register_engine(ModelChecker * _model, ModelExecution * execution) {} SNAPSHOTALLOC private: };