From: Brian Norris Date: Wed, 23 Jan 2013 19:04:59 +0000 (-0800) Subject: promise: construct with a 'future_value' struct X-Git-Tag: oopsla2013~342 X-Git-Url: http://demsky.eecs.uci.edu/git/?p=model-checker.git;a=commitdiff_plain;h=d807a12fff07a78af417a2f5f63c3c077f8759a8 promise: construct with a 'future_value' struct Don't pass a bunch of parameters individually; just pass the struct. --- diff --git a/model.cc b/model.cc index 97df9a2..39c1968 100644 --- a/model.cc +++ b/model.cc @@ -738,7 +738,7 @@ bool ModelChecker::process_read(ModelAction *curr, bool second_part_of_rmw) struct future_value fv = curr->get_node()->get_future_value(); value = fv.value; curr->set_read_from(NULL); - Promise *valuepromise = new Promise(curr, value, fv.expiration); + Promise *valuepromise = new Promise(curr, fv); promises->push_back(valuepromise); } get_thread(curr)->set_return_value(value); diff --git a/promise.h b/promise.h index 413d360..ce5bea1 100644 --- a/promise.h +++ b/promise.h @@ -20,8 +20,11 @@ struct future_value { class Promise { public: - Promise(ModelAction *act, uint64_t value, modelclock_t expiration) : - value(value), expiration(expiration), read(act), write(NULL) + Promise(ModelAction *act, struct future_value fv) : + value(fv.value), + expiration(fv.expiration), + read(act), + write(NULL) { increment_threads(act->get_tid()); }