X-Git-Url: http://plrg.eecs.uci.edu/git/?p=model-checker.git;a=blobdiff_plain;f=model.h;h=90c8a55e5f96f7ca93a6adcd6c6f28fdac96fa4a;hp=8fdfc47ae41a8fc0419d04c1570075bdddb0243e;hb=7921811e8bd7bba2cdd892434a58ec7254ae0f99;hpb=4fa31aac91303266f4c87a6cd5d60cbab34135db diff --git a/model.h b/model.h index 8fdfc47..90c8a55 100644 --- a/model.h +++ b/model.h @@ -24,6 +24,7 @@ class Promise; class Scheduler; class Thread; class ClockVector; +class Trace_Analysis; struct model_snapshot_members; /** @brief Shorthand for a list of release sequence heads */ @@ -246,6 +247,8 @@ private: SnapVector * const thrd_last_action; SnapVector * const thrd_last_fence_release; NodeStack * const node_stack; + ModelVector * trace_analyses; + /** Private data members that should be snapshotted. They are grouped * together for efficiency and maintainability. */ @@ -274,7 +277,7 @@ private: /** @brief The cumulative execution stats */ struct execution_stats stats; void record_stats(); - + void run_trace_analyses(); void print_infeasibility(const char *prefix) const; bool is_feasible_prefix_ignore_relseq() const; bool is_infeasible() const;