X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=action.cc;h=13da2b96312f0ee9c524b04fb13f0fcc997697b5;hb=7f0963612d33cd3c1e1330bb42c9962259a03da3;hp=bb2b282a67a9c5aa3852d57c7936b438fc3688d1;hpb=d3dffe991352938e5c2ab738ce70e3ec0f069d5f;p=model-checker.git diff --git a/action.cc b/action.cc index bb2b282..13da2b9 100644 --- a/action.cc +++ b/action.cc @@ -393,10 +393,22 @@ Node * ModelAction::get_node() const void ModelAction::set_read_from(const ModelAction *act) { reads_from = act; + reads_from_promise = NULL; if (act && act->is_uninitialized()) model->assert_bug("May read from uninitialized atomic\n"); } +/** + * Set this action's read-from promise + * @param promise The promise to read from + */ +void ModelAction::set_read_from_promise(const Promise *promise) +{ + ASSERT(is_read()); + reads_from_promise = promise; + reads_from = NULL; +} + /** * Synchronize the current thread with the thread corresponding to the * ModelAction parameter.