action_list_t * generateSC(action_list_t *);
bool processRead(ModelAction *read, ClockVector *cv);
ModelAction * getNextAction();
- bool merge(ClockVector * cv, const ModelAction * act, ClockVector *cv2);
+ bool merge(ClockVector *cv, const ModelAction *act, const ModelAction *act2);
+ void check_rf(action_list_t *list);
+
+
int maxthreads;
- HashTable<const ModelAction *,ClockVector *, uintptr_t, 4 > * cvmap;
- HashTable<const ModelAction *,const ModelAction *, uintptr_t, 4 > * cycleset;
- SnapVector<action_list_t> * threadlists;
+ HashTable<const ModelAction *, ClockVector *, uintptr_t, 4 > cvmap;
+ bool cyclic;
+ HashTable<const ModelAction *, const ModelAction *, uintptr_t, 4 > badrfset;
+ HashTable<void *, const ModelAction *, uintptr_t, 4 > lastwrmap;
+ SnapVector<action_list_t> threadlists;
const ModelExecution *execution;
};
#endif