X-Git-Url: http://plrg.eecs.uci.edu/git/?p=c11tester.git;a=blobdiff_plain;f=action.h;h=7c457076501f77f93550da6fe629e2e625a0f2cb;hp=8d06aa49269bd6747f5353307a91e1b15ac63cb2;hb=5e4a7d161cba81152ddcf295ee72fbb25ba3afaa;hpb=247e28f81f258c3c380be00a89430186f8ac11ed diff --git a/action.h b/action.h index 8d06aa49..7c457076 100644 --- a/action.h +++ b/action.h @@ -34,9 +34,9 @@ typedef enum action_type { THREAD_JOIN, /**< A thread join action */ ATOMIC_READ, /**< An atomic read action */ ATOMIC_WRITE, /**< An atomic write action */ - ATOMIC_RMWR, /**< The read of an atomic read-modify-write action */ - ATOMIC_RMW, /**< The write of an atomic read-modify-write action */ - ATOMIC_RMWC, /**< Terminate an atomic read-modify-write action w/o write */ + ATOMIC_RMWR, /**< The read part of an atomic RMW action */ + ATOMIC_RMW, /**< The write part of an atomic RMW action */ + ATOMIC_RMWC, /**< Convert an atomic RMW action into a READ */ ATOMIC_INIT /**< Initialization of an atomic object (e.g., * atomic_init()) */ } action_type_t; @@ -81,6 +81,8 @@ public: void create_cv(const ModelAction *parent = NULL); ClockVector * get_cv() const { return cv; } void read_from(const ModelAction *act); + void synchronized(const ModelAction *act); + bool happens_before(const ModelAction *act) const;