6 #include "modeltypes.h"
23 class ConcretePredicate;
26 struct model_snapshot_members;
29 typedef SnapList<ModelAction *> action_list_t;
30 typedef SnapList<uint32_t> func_id_list_t;
31 typedef SnapList<FuncInst *> func_inst_list_t;
32 typedef HashTable<FuncInst *, ModelAction *, uintptr_t, 0> inst_act_map_t;
34 typedef HashSet<Predicate *, uintptr_t, 0, model_malloc, model_calloc, model_free> PredSet;
35 typedef HSIterator<Predicate *, uintptr_t, 0, model_malloc, model_calloc, model_free> PredSetIter;
37 typedef HashSet<uint64_t, uint64_t, 0, snapshot_malloc, snapshot_calloc, snapshot_free> value_set_t;
38 typedef HSIterator<uint64_t, uint64_t, 0, snapshot_malloc, snapshot_calloc, snapshot_free> value_set_iter;
39 typedef HashSet<void *, uintptr_t, 0, snapshot_malloc, snapshot_calloc, snapshot_free> loc_set_t;
40 typedef HSIterator<void *, uintptr_t, 0, snapshot_malloc, snapshot_calloc, snapshot_free> loc_set_iter;
41 typedef HashSet<thread_id_t, int, 0> thrd_id_set_t;
42 typedef HSIterator<thread_id_t, int, 0> thrd_id_set_iter;
44 extern volatile int modellock;