rename pthead.h to mypthread.h
[c11tester.git] / action.h
index b4fb80fc4bf81ac8bb38c0a2a9b3bdd336cf679b..e65b8db9ef1493e88b402be87d176401bed055dc 100644 (file)
--- a/action.h
+++ b/action.h
@@ -11,7 +11,7 @@
 #include "mymemory.h"
 #include "memoryorder.h"
 #include "modeltypes.h"
-#include "pthread.h"
+#include "mypthread.h"
 #include "classlist.h"
 
 namespace cdsc {
@@ -86,6 +86,7 @@ class ModelAction {
 public:
        ModelAction(action_type_t type, memory_order order, void *loc, uint64_t value = VALUE_NONE, Thread *thread = NULL);
        ModelAction(action_type_t type, memory_order order, void *loc, uint64_t value, int size);
+       ModelAction(action_type_t type, const char * position, memory_order order, void *loc, uint64_t value = VALUE_NONE, Thread *thread = NULL);
        ~ModelAction();
        void print() const;
 
@@ -95,6 +96,7 @@ public:
        memory_order get_original_mo() const { return original_order; }
        void set_mo(memory_order order) { this->order = order; }
        void * get_location() const { return location; }
+       const char * get_position() const { return position; }
        modelclock_t get_seq_number() const { return seq_number; }
        uint64_t get_value() const { return value; }
        uint64_t get_reads_from_value() const;
@@ -182,6 +184,9 @@ private:
        /** @brief A pointer to the memory location for this action. */
        void *location;
 
+       /** @brief A pointer to the source line for this atomic action. */
+       const char * position;
+
        union {
                /**
                 * @brief The store that this action reads from