Reviewers: Vyacheslav Egorov,
Description:
Untank build after last commit.
Please review this at http://codereview.chromium.org/6728021/
SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/
Affected files:
M src/objects-inl.h
Index: src/objects-inl.h
===================================================================
--- src/objects-inl.h (revision 7455)
+++ src/objects-inl.h (working copy)
@@ -1158,9 +1158,12 @@
Heap* HeapObject::GetHeap() {
- uintptr_t addr = reinterpret_cast<uintptr_t>(this);
- addr >>= kHeapDescriptorGranularityBits;
- return heap_descriptors[addr].heap;
+ // During GC, the map pointer in HeapObject is used in various ways that
+ // prevent us from retrieving Heap from the map.
+ // Assert that we are not in GC, implement GC code in a way that it
doesn't
+ // pull heap from the map.
+ ASSERT(HEAP->is_safe_to_read_maps());
+ return map()->heap();
}
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev