Index: src/heap-snapshot-generator.h |
diff --git a/src/heap-snapshot-generator.h b/src/heap-snapshot-generator.h |
index c323f3cde282de350f88da721630bbbe685d3aee..7b0cf8f021e2c717cc21ab73093562448164af7e 100644 |
--- a/src/heap-snapshot-generator.h |
+++ b/src/heap-snapshot-generator.h |
@@ -628,7 +628,7 @@ class HeapSnapshotJSONSerializer { |
public: |
explicit HeapSnapshotJSONSerializer(HeapSnapshot* snapshot) |
: snapshot_(snapshot), |
- strings_(StringsMatch), |
+ strings_(ObjectsMatch), |
next_node_id_(1), |
next_string_id_(1), |
writer_(NULL) { |
@@ -636,16 +636,14 @@ class HeapSnapshotJSONSerializer { |
void Serialize(v8::OutputStream* stream); |
private: |
- INLINE(static bool StringsMatch(void* key1, void* key2)) { |
- return strcmp(reinterpret_cast<char*>(key1), |
- reinterpret_cast<char*>(key2)) == 0; |
+ INLINE(static bool ObjectsMatch(void* key1, void* key2)) { |
+ return key1 == key2; |
} |
- INLINE(static uint32_t StringHash(const void* string)) { |
- const char* s = reinterpret_cast<const char*>(string); |
- int len = static_cast<int>(strlen(s)); |
- return StringHasher::HashSequentialString( |
- s, len, v8::internal::kZeroHashSeed); |
+ INLINE(static uint32_t ObjectHash(const void* key)) { |
+ return ComputeIntegerHash( |
+ static_cast<uint32_t>(reinterpret_cast<uintptr_t>(key)), |
+ v8::internal::kZeroHashSeed); |
} |
int GetStringId(const char* s); |
@@ -658,6 +656,7 @@ class HeapSnapshotJSONSerializer { |
void SerializeSnapshot(); |
void SerializeString(const unsigned char* s); |
void SerializeStrings(); |
+ void SortHashMap(HashMap* map, List<HashMap::Entry*>* sorted_entries); |
static const int kEdgeFieldsCount; |
static const int kNodeFieldsCount; |