model, nodestack: bugfix - retain UNINIT actions across executions
[c11tester.git] / model.h
diff --git a/model.h b/model.h
index ae668b159cb04d701ff151f099b96c85ae2452a0..ae9706b124067e18e5098e0fbd7e7859fce05d73 100644 (file)
--- a/model.h
+++ b/model.h
@@ -38,6 +38,7 @@ typedef std::list< ModelAction *, SnapshotAlloc<ModelAction *> > action_list_t;
 struct model_params {
        int maxreads;
        int maxfuturedelay;
+       bool yieldon;
        unsigned int fairwindow;
        unsigned int enabledcount;
        unsigned int bound;
@@ -176,7 +177,8 @@ private:
        ModelAction * get_last_fence_conflict(ModelAction *act) const;
        ModelAction * get_last_conflict(ModelAction *act) const;
        void set_backtracking(ModelAction *act);
-       Thread * get_next_thread(ModelAction *curr);
+       Thread * action_select_next_thread(const ModelAction *curr) const;
+       Thread * get_next_thread();
        bool set_latest_backtrack(ModelAction *act);
        ModelAction * get_next_backtrack();
        void reset_to_initial_state();
@@ -207,7 +209,7 @@ private:
        bool resolve_release_sequences(void *location, work_queue_t *work_queue);
        void add_future_value(const ModelAction *writer, ModelAction *reader);
 
-       ModelAction * new_uninitialized_action(void *location) const;
+       ModelAction * get_uninitialized_action(const ModelAction *curr) const;
 
        ModelAction *diverge;
        ModelAction *earliest_diverge;