From: Brian Norris Date: Mon, 20 Aug 2012 19:11:42 +0000 (-0700) Subject: promise: rewrite into a simpler header file X-Git-Tag: pldi2013~264 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=f001f8b98c907df8bd7f38e92c00445071f26304;hp=fec9254c3747d5dde5d45e1ef81f7261c74bd5a7;p=model-checker.git promise: rewrite into a simpler header file --- diff --git a/Makefile b/Makefile index 9812ab4..2acdbc7 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ include common.mk OBJECTS = libthreads.o schedule.o model.o threads.o librace.o action.o \ nodestack.o clockvector.o main.o snapshot-interface.o cyclegraph.o \ - datarace.o impatomic.o cmodelint.o promise.o \ + datarace.o impatomic.o cmodelint.o \ snapshot.o malloc.o mymemory.o CPPFLAGS += -Iinclude -I. diff --git a/promise.cc b/promise.cc deleted file mode 100644 index b051ef0..0000000 --- a/promise.cc +++ /dev/null @@ -1,8 +0,0 @@ -#include "promise.h" - -Promise::Promise(ModelAction *act, uint64_t value) { - this->value=value; - this->read=act; - this->numthreads=1; -} - diff --git a/promise.h b/promise.h index fda00cc..d729e03 100644 --- a/promise.h +++ b/promise.h @@ -6,21 +6,23 @@ #ifndef __PROMISE_H__ #define __PROMISE_H__ -#include +#include class ModelAction; class Promise { public: - Promise(ModelAction * act, uint64_t value); - ModelAction * get_action() { return read; } + Promise(ModelAction *act, uint64_t value) : + value(value), read(act), numthreads(1) + { } + ModelAction * get_action() const { return read; } int increment_threads() { return ++numthreads; } - uint64_t get_value() { return value; } + uint64_t get_value() const { return value; } private: - uint64_t value; - ModelAction *read; + const uint64_t value; + ModelAction * const read; unsigned int numthreads; };