order(order),
location(loc),
value(value),
+ reads_from(NULL),
cv(NULL)
{
Thread *t = thread_current();
ASSERT(cv);
if (act->is_release() && this->is_acquire())
cv->merge(act->cv);
+ reads_from = act;
value = act->value;
}
type_str = "unknown type";
}
- printf("(%3d) Thread: %-2d Action: %-13s MO: %d Loc: %14p Value: %d",
+ printf("(%3d) Thread: %-2d Action: %-13s MO: %d Loc: %14p Value: %-4d",
seq_number, id_to_int(tid), type_str, order, location, value);
+ if (reads_from)
+ printf(" Rf: %d", reads_from->get_seq_number());
if (cv) {
printf("\t");
cv->print();