Reapply descriptor array sharing.

This reverts commit 12669

Review URL: https://chromiumcodereview.appspot.com/11093026

git-svn-id: http://v8.googlecode.com/svn/trunk@12683 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
diff --git a/test/cctest/test-heap-profiler.cc b/test/cctest/test-heap-profiler.cc
index 1004104..4f7421b 100644
--- a/test/cctest/test-heap-profiler.cc
+++ b/test/cctest/test-heap-profiler.cc
@@ -1670,13 +1670,24 @@
   const v8::HeapGraphNode* global_object =
       GetProperty(global, v8::HeapGraphEdge::kProperty, "obj");
   CHECK_NE(NULL, global_object);
+
   const v8::HeapGraphNode* map =
       GetProperty(global_object, v8::HeapGraphEdge::kInternal, "map");
   CHECK_NE(NULL, map);
-  const v8::HeapGraphNode* descriptors =
-      GetProperty(map, v8::HeapGraphEdge::kInternal, "descriptors");
+  const v8::HeapGraphNode* own_descriptors = GetProperty(
+      map, v8::HeapGraphEdge::kInternal, "descriptors");
+  CHECK_EQ(NULL, own_descriptors);
+  const v8::HeapGraphNode* own_transitions = GetProperty(
+      map, v8::HeapGraphEdge::kInternal, "transitions");
+  CHECK_EQ(NULL, own_transitions);
+
+  const v8::HeapGraphNode* back_pointer_map =
+      GetProperty(map, v8::HeapGraphEdge::kInternal, "backpointer");
+  CHECK_NE(NULL, back_pointer_map);
+  const v8::HeapGraphNode* descriptors = GetProperty(
+      back_pointer_map, v8::HeapGraphEdge::kInternal, "descriptors");
   CHECK_NE(NULL, descriptors);
-  const v8::HeapGraphNode* transitions =
-      GetProperty(map, v8::HeapGraphEdge::kInternal, "transitions");
+  const v8::HeapGraphNode* transitions = GetProperty(
+      back_pointer_map, v8::HeapGraphEdge::kInternal, "transitions");
   CHECK_NE(NULL, transitions);
 }