Avoid using a HashTable to associate FuncInsts with ModelActions; a slight improvemen...
[c11tester.git] / funcinst.cc
index c89284a70fdeccbe996df43d6cd50b53e6d0a29a..4fcf0e7cdb225e72ecb2da1c7286428bfcd90e89 100644 (file)
@@ -3,7 +3,8 @@
 
 FuncInst::FuncInst(ModelAction *act, FuncNode *func_node) :
        single_location(true),
-       execution_number(model->get_execution_number())
+       execution_number(model->get_execution_number()),
+       marker(0)       /* The marker for FuncNode starts from 1 */
 {
        ASSERT(act);
        ASSERT(func_node);
@@ -46,6 +47,20 @@ bool FuncInst::add_succ(FuncInst * other)
        return true;
 }
 
+void FuncInst::set_associated_act(ModelAction * act, uint32_t marker)
+{
+       associated_act = act;
+       this->marker = marker;
+}
+
+ModelAction * FuncInst::get_associated_act(uint32_t marker)
+{
+       if (marker == this->marker)
+               return associated_act;
+       else
+               return NULL;
+}
+
 /*
 FuncInst * FuncInst::search_in_collision(ModelAction *act)
 {