X-Git-Url: http://plrg.eecs.uci.edu/git/?p=c11tester.git;a=blobdiff_plain;f=history.h;h=431f978ea3f54e1053e682aadece744b9ed0ca44;hp=f06c2e44e46cb189c34d06f870063a75a0dcd772;hb=251ac4b4bf3a9f2d3cfacc1e6618200ca1c431ac;hpb=0fd64e09bb7a48d62eb724507f8716f1af4dc8d7 diff --git a/history.h b/history.h index f06c2e44..431f978e 100644 --- a/history.h +++ b/history.h @@ -6,6 +6,8 @@ #include "hashtable.h" #include "threads-model.h" +#define INIT_SEQ_NUMBER 0xffffffff + class ModelHistory { public: ModelHistory(); @@ -44,8 +46,6 @@ public: void remove_waiting_thread(thread_id_t tid); void stop_waiting_for_node(thread_id_t self_id, thread_id_t waiting_for_id, FuncNode * target_node); - SnapVector * getThrdInstActMap(uint32_t func_id); - void set_new_exec_flag(); void dump_func_node_graph(); void print_func_node(); @@ -54,6 +54,7 @@ public: MEMALLOC private: uint32_t func_counter; + modelclock_t last_seq_number; /* Map function names to integer ids */ HashTable func_map; @@ -74,12 +75,6 @@ private: HashTable *, uintptr_t, 0> * loc_waiting_writes_map; - /* Keeps track of atomic actions that thread i has performed in some - * function. Index of SnapVector is thread id. SnapList simulates - * the call stack. - */ - SnapVector< SnapList *> * thrd_func_act_lists; - /* thrd_func_list stores a list of function ids for each thread. * Each element in thrd_func_list stores the functions that * thread i has entered and yet to exit from @@ -91,11 +86,7 @@ private: SnapVector * thrd_waiting_write; SnapVector * thrd_wait_obj; - /* A run-time map from FuncInst to ModelAction per thread, per FuncNode. - * Manipulated by FuncNode, and needed by NewFuzzer */ - HashTable *, int, 0> * func_inst_act_maps; - - bool skip_action(ModelAction * act, SnapList * curr_act_list); + bool skip_action(ModelAction * act); void monitor_waiting_thread(uint32_t func_id, thread_id_t tid); void monitor_waiting_thread_counter(thread_id_t tid);