OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_PROFILER_HEAP_SNAPSHOT_GENERATOR_H_ | 5 #ifndef V8_PROFILER_HEAP_SNAPSHOT_GENERATOR_H_ |
6 #define V8_PROFILER_HEAP_SNAPSHOT_GENERATOR_H_ | 6 #define V8_PROFILER_HEAP_SNAPSHOT_GENERATOR_H_ |
7 | 7 |
8 #include <unordered_map> | 8 #include <unordered_map> |
9 | 9 |
10 #include "include/v8-profiler.h" | 10 #include "include/v8-profiler.h" |
(...skipping 507 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
518 } | 518 } |
519 | 519 |
520 NativeGroupRetainedObjectInfo* FindOrAddGroupInfo(const char* label); | 520 NativeGroupRetainedObjectInfo* FindOrAddGroupInfo(const char* label); |
521 | 521 |
522 Isolate* isolate_; | 522 Isolate* isolate_; |
523 HeapSnapshot* snapshot_; | 523 HeapSnapshot* snapshot_; |
524 StringsStorage* names_; | 524 StringsStorage* names_; |
525 bool embedder_queried_; | 525 bool embedder_queried_; |
526 HeapObjectsSet in_groups_; | 526 HeapObjectsSet in_groups_; |
527 // RetainedObjectInfo* -> List<HeapObject*>* | 527 // RetainedObjectInfo* -> List<HeapObject*>* |
528 base::HashMap objects_by_info_; | 528 base::CustomMatcherHashMap objects_by_info_; |
529 base::HashMap native_groups_; | 529 base::CustomMatcherHashMap native_groups_; |
530 HeapEntriesAllocator* synthetic_entries_allocator_; | 530 HeapEntriesAllocator* synthetic_entries_allocator_; |
531 HeapEntriesAllocator* native_entries_allocator_; | 531 HeapEntriesAllocator* native_entries_allocator_; |
532 // Used during references extraction. | 532 // Used during references extraction. |
533 SnapshotFiller* filler_; | 533 SnapshotFiller* filler_; |
534 | 534 |
535 static HeapThing const kNativesRootObject; | 535 static HeapThing const kNativesRootObject; |
536 | 536 |
537 friend class GlobalHandlesExtractor; | 537 friend class GlobalHandlesExtractor; |
538 | 538 |
539 DISALLOW_COPY_AND_ASSIGN(NativeObjectsExplorer); | 539 DISALLOW_COPY_AND_ASSIGN(NativeObjectsExplorer); |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
606 void SerializeTraceNode(AllocationTraceNode* node); | 606 void SerializeTraceNode(AllocationTraceNode* node); |
607 void SerializeTraceNodeInfos(); | 607 void SerializeTraceNodeInfos(); |
608 void SerializeSamples(); | 608 void SerializeSamples(); |
609 void SerializeString(const unsigned char* s); | 609 void SerializeString(const unsigned char* s); |
610 void SerializeStrings(); | 610 void SerializeStrings(); |
611 | 611 |
612 static const int kEdgeFieldsCount; | 612 static const int kEdgeFieldsCount; |
613 static const int kNodeFieldsCount; | 613 static const int kNodeFieldsCount; |
614 | 614 |
615 HeapSnapshot* snapshot_; | 615 HeapSnapshot* snapshot_; |
616 base::HashMap strings_; | 616 base::CustomMatcherHashMap strings_; |
617 int next_node_id_; | 617 int next_node_id_; |
618 int next_string_id_; | 618 int next_string_id_; |
619 OutputStreamWriter* writer_; | 619 OutputStreamWriter* writer_; |
620 | 620 |
621 friend class HeapSnapshotJSONSerializerEnumerator; | 621 friend class HeapSnapshotJSONSerializerEnumerator; |
622 friend class HeapSnapshotJSONSerializerIterator; | 622 friend class HeapSnapshotJSONSerializerIterator; |
623 | 623 |
624 DISALLOW_COPY_AND_ASSIGN(HeapSnapshotJSONSerializer); | 624 DISALLOW_COPY_AND_ASSIGN(HeapSnapshotJSONSerializer); |
625 }; | 625 }; |
626 | 626 |
627 | 627 |
628 } // namespace internal | 628 } // namespace internal |
629 } // namespace v8 | 629 } // namespace v8 |
630 | 630 |
631 #endif // V8_PROFILER_HEAP_SNAPSHOT_GENERATOR_H_ | 631 #endif // V8_PROFILER_HEAP_SNAPSHOT_GENERATOR_H_ |
OLD | NEW |