From 5b8c64c5b2cd05612032fdd9edc94f2ad5978daf Mon Sep 17 00:00:00 2001 From: Brian Norris Date: Wed, 16 May 2012 11:45:04 -0700 Subject: [PATCH] action: add clock vector field, destructor --- action.cc | 9 +++++++++ action.h | 4 ++++ 2 files changed, 13 insertions(+) diff --git a/action.cc b/action.cc index bd9e29fc..1fe4c7fb 100644 --- a/action.cc +++ b/action.cc @@ -2,6 +2,7 @@ #include "model.h" #include "action.h" +#include "clockvector.h" ModelAction::ModelAction(action_type_t type, memory_order order, void *loc, int value) { @@ -14,6 +15,14 @@ ModelAction::ModelAction(action_type_t type, memory_order order, void *loc, int act->tid = t->get_id(); act->value = value; act->seq_number = model->get_next_seq_num(); + + cv = NULL; +} + +ModelAction::~ModelAction() +{ + if (cv) + delete cv; } bool ModelAction::is_read() diff --git a/action.h b/action.h index b635e06c..98ec8736 100644 --- a/action.h +++ b/action.h @@ -17,10 +17,12 @@ typedef enum action_type { /* Forward declaration */ class Node; +class ClockVector; class ModelAction { public: ModelAction(action_type_t type, memory_order order, void *loc, int value); + ~ModelAction(); void print(void); thread_id_t get_tid() { return tid; } @@ -56,6 +58,8 @@ private: int value; Node *node; int seq_number; + + ClockVector *cv; }; typedef std::list action_list_t; -- 2.34.1