3 #include "traceanalysis.h"
6 class SCAnalysis : public TraceAnalysis {
10 virtual void analyze(action_list_t *);
14 void print_list(action_list_t *list);
15 void buildVectors(action_list_t *);
16 bool updateConstraints(ModelAction *act);
17 void computeCV(action_list_t *);
18 action_list_t * generateSC(action_list_t *);
19 bool processRead(ModelAction *read, ClockVector *cv);
20 ModelAction * getNextAction();
21 bool merge(ClockVector * cv, const ModelAction * act, ClockVector *cv2);
23 HashTable<const ModelAction *,ClockVector *, uintptr_t, 4 > * cvmap;
24 HashTable<const ModelAction *,const ModelAction *, uintptr_t, 4 > * cycleset;
25 SnapVector<action_list_t> * threadlists;