X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=action.cc;h=2010a0b61fd76a66bc2102a8ed2f4562491ad3e5;hb=2d0d4ac38e05905a6633b3f2d5112ccadd45c27f;hp=14ad71d54e5221c553a610a846f9a0a66dc98fa5;hpb=d590c23e98d4ad4da4df6eda33cbdb04c29c25ea;p=model-checker.git diff --git a/action.cc b/action.cc index 14ad71d..2010a0b 100644 --- a/action.cc +++ b/action.cc @@ -192,6 +192,11 @@ bool ModelAction::is_initialization() const return type == ATOMIC_INIT; } +bool ModelAction::is_annotation() const +{ + return type == ATOMIC_ANNOTATION; +} + bool ModelAction::is_relaxed() const { return order == std::memory_order_relaxed; @@ -547,7 +552,8 @@ const char * ModelAction::get_type_str() const case ATOMIC_TRYLOCK: return "trylock"; case ATOMIC_WAIT: return "wait"; case ATOMIC_NOTIFY_ONE: return "notify one"; - case ATOMIC_NOTIFY_ALL: return "notify all"; + case ATOMIC_NOTIFY_ALL: return "notify all"; + case ATOMIC_ANNOTATION: return "atomic annotation"; default: return "unknown type"; }; } @@ -569,25 +575,25 @@ void ModelAction::print() const { const char *type_str = get_type_str(), *mo_str = get_mo_str(); - model_print("(%4d) Thread: %-2d Action: %-13s MO: %7s Loc: %14p Value: %-#18" PRIx64, + model_print("%-4d %-2d %-13s %7s %14p %-#18" PRIx64, seq_number, id_to_int(tid), type_str, mo_str, location, get_return_value()); if (is_read()) { if (reads_from) - model_print(" Rf: %-3d", reads_from->get_seq_number()); + model_print(" %-3d", reads_from->get_seq_number()); else if (reads_from_promise) { int idx = reads_from_promise->get_index(); if (idx >= 0) - model_print(" Rf: P%-2d", idx); + model_print(" P%-2d", idx); else - model_print(" Rf: P? "); + model_print(" P? "); } else - model_print(" Rf: ? "); + model_print(" ? "); } if (cv) { if (is_read()) model_print(" "); else - model_print(" "); + model_print(" "); cv->print(); } else model_print("\n");