| Index: src/profile-generator.cc
|
| diff --git a/src/profile-generator.cc b/src/profile-generator.cc
|
| index 4e0cb7111ba5dffba88e5e79c04ba95f97314349..9ec6b7d2d0b90eca556853ceec787d4036e5324d 100644
|
| --- a/src/profile-generator.cc
|
| +++ b/src/profile-generator.cc
|
| @@ -1533,12 +1533,14 @@ uint64_t HeapObjectsMap::FindObject(Address addr) {
|
|
|
|
|
| void HeapObjectsMap::MoveObject(Address from, Address to) {
|
| + if (from == to) return;
|
| HashMap::Entry* entry = entries_map_.Lookup(from, AddressHash(from), false);
|
| if (entry != NULL) {
|
| void* value = entry->value;
|
| entries_map_.Remove(from, AddressHash(from));
|
| entry = entries_map_.Lookup(to, AddressHash(to), true);
|
| - ASSERT(entry->value == NULL);
|
| + // We can have an entry at the new location, it is OK, as GC can overwrite
|
| + // dead objects with alive objects being moved.
|
| entry->value = value;
|
| }
|
| }
|
|
|