- std::vector<Promise *> *promises;
- std::vector<struct PendingFutureValue> *futurevalues;
-
- /**
- * Collection of lists of objects that might synchronize with one or
- * more release sequence. Release sequences might be determined lazily
- * as promises are fulfilled and modification orders are established.
- * This structure maps its lists by object location. Each ModelAction
- * in the lists should be an acquire operation.
- */
- HashTable<void *, action_list_t, uintptr_t, 4> *lazy_sync_with_release;
+ std::vector< Promise *, SnapshotAlloc<Promise *> > *promises;
+ std::vector< struct PendingFutureValue, SnapshotAlloc<struct PendingFutureValue> > *futurevalues;