- std::map<int, class Thread *, std::less< int >, MyAlloc< std::pair< const int, class Thread * > > > thread_map;
- class TreeNode *rootNode, *currentNode;
- std::list<class Backtrack *, MyAlloc< class Backtrack * > > backtrack_list;
- std::vector< std::pair< void *, size_t >, MyAlloc< std::pair< void *, size_t > > > global_vec;
+ HashTable<int, Thread *, int> *thread_map;
+
+ /** Per-object list of actions. Maps an object (i.e., memory location)
+ * to a trace of all actions performed on the object. */
+ HashTable<const void *, action_list_t, uintptr_t, 4> *obj_map;
+
+ HashTable<void *, std::vector<action_list_t>, uintptr_t, 4 > *obj_thrd_map;
+ std::vector<Promise *> * promises;
+ std::vector<ModelAction *> *thrd_last_action;
+ NodeStack *node_stack;
+ ModelAction *next_backtrack;
+ CycleGraph * cyclegraph;
+ bool failed_promise;