+ memory_base = snapshot_calloc(sizeof(struct ShadowBaseTable) * SHADOWBASETABLES, 1);
+ memory_top = ((char *)memory_base) + sizeof(struct ShadowBaseTable) * SHADOWBASETABLES;
+ unrealizedraces = new SnapVector<DataRace *>();
+}
+
+void * table_calloc(size_t size)
+{
+ if ((((char *)memory_base) + size) > memory_top) {
+ return snapshot_calloc(size, 1);
+ } else {
+ void *tmp = memory_base;
+ memory_base = ((char *)memory_base) + size;
+ return tmp;
+ }