X-Git-Url: http://plrg.eecs.uci.edu/git/?p=model-checker.git;a=blobdiff_plain;f=action.cc;h=3aeb7377e2b328fad8b24748744274ab1386e25d;hp=b7bf024a4e79447220bfb50cd5268413e474f9b3;hb=d27984bb297795f4e9a4531e2730d8188a799e89;hpb=b6f06ab2c626eb6e0f044fa9c7d1b74fbc82a09d;ds=sidebyside diff --git a/action.cc b/action.cc index b7bf024..3aeb737 100644 --- a/action.cc +++ b/action.cc @@ -415,3 +415,18 @@ void ModelAction::print() const } else printf("\n"); } + +/** @brief Print nicely-formatted info about this ModelAction */ +unsigned int ModelAction::hash() const +{ + unsigned int hash=(unsigned int) this->type; + hash^=((unsigned int)this->order)<<3; + hash^=seq_number<<5; + hash^=tid<<6; + + if (is_read()) { + if (reads_from) + hash^=reads_from->get_seq_number(); + } + return hash; +}