void testMemMan1(cds_word n, cds_word len) { MemoryManager *m = new MemoryManager(len, 1024); MemoryAddress **a = new MemoryAddress*[n]; for (cds_word i = 0; i < n; i++) { a[i] = m->Alloc(len); m->SetData(a[i], &i); cds_word num = 0; m->GetData(a[i], &num); ASSERT_EQ(i, num); MemoryAddress *ptr = cds::dynamic::GetPtr(a[i]->ptr, a[i]->len, a[i]->offset); ASSERT_EQ(a[i], ptr); } for (cds_word i = 0; i < n; i++) { MemoryAddress *ptr = cds::dynamic::GetPtr(a[i]->ptr, a[i]->len, a[i]->offset); ASSERT_EQ(a[i], ptr); } for (cds_word i = 0; i < n; i++) { MemoryAddress *ptr = cds::dynamic::GetPtr(a[i]->ptr, a[i]->len, a[i]->offset); ASSERT_EQ(a[i], ptr); cds_word num = 0; m->GetData(a[i], &num); ASSERT_EQ(i, num); m->Free(a[i]); delete a[i]; } delete []a; delete m; }