X-Git-Url: http://plrg.eecs.uci.edu/git/?p=model-checker.git;a=blobdiff_plain;f=nodestack.h;h=803d2b8e492c05a98f23a628550dd4f05265e23f;hp=147b0048eb9cb00c82bf82c7855c2fe78a6414b8;hb=b8b39c87557325a384faa45d0cae56a6f71f52b1;hpb=59eb730e1d19a0825008c40eb521bfc5c29df5f9 diff --git a/nodestack.h b/nodestack.h index 147b004..803d2b8 100644 --- a/nodestack.h +++ b/nodestack.h @@ -92,6 +92,11 @@ public: bool promise_empty(); enabled_type_t *get_enabled_array() {return enabled_array;} + void add_relseq_break(const ModelAction *write); + const ModelAction * get_relseq_break(); + bool increment_relseq_break(); + bool relseq_break_empty(); + void print(); void print_may_read_from(); @@ -117,6 +122,9 @@ private: std::vector< struct future_value, ModelAlloc > future_values; std::vector< promise_t, ModelAlloc > promises; int future_index; + + std::vector< const ModelAction *, ModelAlloc > relseq_break_writes; + int relseq_break_index; }; typedef std::vector< Node *, ModelAlloc< Node * > > node_list_t;