Index: src/profile-generator.cc |
diff --git a/src/profile-generator.cc b/src/profile-generator.cc |
index c91e83bb78fe37cc2c75933e297e2f70a1c788d6..05e63fdce8ae59dbf93f50688c0e9b20613444fc 100644 |
--- a/src/profile-generator.cc |
+++ b/src/profile-generator.cc |
@@ -2146,10 +2146,12 @@ void V8HeapExplorer::ExtractMapReferences(HeapEntry* entry, Map* map) { |
"descriptors", map->instance_descriptors(), |
Map::kInstanceDescriptorsOrBitField3Offset); |
} |
- TagObject(map->prototype_transitions(), "(prototype transitions)"); |
- SetInternalReference(map, entry, |
- "prototype_transitions", map->prototype_transitions(), |
- Map::kPrototypeTransitionsOffset); |
+ if (map->NumberOfProtoTransitions() > 0) { |
+ TagObject(map->prototype_transitions(), "(prototype transitions)"); |
+ SetInternalReference(map, entry, |
+ "prototype_transitions", map->prototype_transitions(), |
+ Map::kPrototypeTransitionsOrBackPointerOffset); |
+ } |
SetInternalReference(map, entry, |
Vyacheslav Egorov (Chromium)
2012/05/08 14:29:19
You might also want to include back pointer as a s
Michael Starzinger
2012/05/09 07:30:02
Done.
|
"code_cache", map->code_cache(), |
Map::kCodeCacheOffset); |