Revision: 11538
Author:   [email protected]
Date:     Thu May 10 08:55:19 2012
Log:      Set object tags directly to the entry name in heap profiler.

Review URL: https://chromiumcodereview.appspot.com/10382106
http://code.google.com/p/v8/source/detail?r=11538

Modified:
 /branches/bleeding_edge/src/profile-generator.cc
 /branches/bleeding_edge/src/profile-generator.h

=======================================
--- /branches/bleeding_edge/src/profile-generator.cc Thu May 10 02:17:32 2012 +++ /branches/bleeding_edge/src/profile-generator.cc Thu May 10 08:55:19 2012
@@ -1710,8 +1710,7 @@
              object->IsFixedDoubleArray() ||
              object->IsByteArray() ||
              object->IsExternalArray()) {
-    const char* tag = objects_tags_.GetTag(object);
-    return AddEntry(object, HeapEntry::kArray, tag != NULL ? tag : "");
+    return AddEntry(object, HeapEntry::kArray, "");
   } else if (object->IsHeapNumber()) {
     return AddEntry(object, HeapEntry::kHeapNumber, "number");
   }
@@ -2635,7 +2634,10 @@

 void V8HeapExplorer::TagObject(Object* obj, const char* tag) {
   if (IsEssentialObject(obj)) {
-    objects_tags_.SetTag(obj, tag);
+    HeapEntry* entry = GetEntry(obj);
+    if (entry->name()[0] == '\0') {
+      entry->set_name(tag);
+    }
   }
 }

=======================================
--- /branches/bleeding_edge/src/profile-generator.h     Thu May 10 02:17:32 2012
+++ /branches/bleeding_edge/src/profile-generator.h     Thu May 10 08:55:19 2012
@@ -526,6 +526,7 @@
   HeapSnapshot* snapshot() { return snapshot_; }
   Type type() { return static_cast<Type>(type_); }
   const char* name() { return name_; }
+  void set_name(const char* name) { name_ = name; }
   inline SnapshotObjectId id() { return id_; }
   int self_size() { return self_size_; }
   int retained_size() { return retained_size_; }

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to