| 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 "include/v8-profiler.h" | 8 #include "include/v8-profiler.h" |
| 9 #include "src/base/platform/time.h" | 9 #include "src/base/platform/time.h" |
| 10 #include "src/objects.h" | 10 #include "src/objects.h" |
| (...skipping 333 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 344 HeapEntry::Type type, | 344 HeapEntry::Type type, |
| 345 const char* name, | 345 const char* name, |
| 346 size_t size); | 346 size_t size); |
| 347 | 347 |
| 348 static String* GetConstructorName(JSObject* object); | 348 static String* GetConstructorName(JSObject* object); |
| 349 | 349 |
| 350 private: | 350 private: |
| 351 typedef bool (V8HeapExplorer::*ExtractReferencesMethod)(int entry, | 351 typedef bool (V8HeapExplorer::*ExtractReferencesMethod)(int entry, |
| 352 HeapObject* object); | 352 HeapObject* object); |
| 353 | 353 |
| 354 void MarkVisitedField(HeapObject* obj, int offset); |
| 355 |
| 354 HeapEntry* AddEntry(HeapObject* object); | 356 HeapEntry* AddEntry(HeapObject* object); |
| 355 HeapEntry* AddEntry(HeapObject* object, | 357 HeapEntry* AddEntry(HeapObject* object, |
| 356 HeapEntry::Type type, | 358 HeapEntry::Type type, |
| 357 const char* name); | 359 const char* name); |
| 358 | 360 |
| 359 const char* GetSystemEntryName(HeapObject* object); | 361 const char* GetSystemEntryName(HeapObject* object); |
| 360 | 362 |
| 361 template<V8HeapExplorer::ExtractReferencesMethod extractor> | 363 template<V8HeapExplorer::ExtractReferencesMethod extractor> |
| 362 bool IterateAndExtractSinglePass(); | 364 bool IterateAndExtractSinglePass(); |
| 363 | 365 |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 458 StringsStorage* names_; | 460 StringsStorage* names_; |
| 459 HeapObjectsMap* heap_object_map_; | 461 HeapObjectsMap* heap_object_map_; |
| 460 SnapshottingProgressReportingInterface* progress_; | 462 SnapshottingProgressReportingInterface* progress_; |
| 461 SnapshotFiller* filler_; | 463 SnapshotFiller* filler_; |
| 462 HeapObjectsSet objects_tags_; | 464 HeapObjectsSet objects_tags_; |
| 463 HeapObjectsSet strong_gc_subroot_names_; | 465 HeapObjectsSet strong_gc_subroot_names_; |
| 464 HeapObjectsSet user_roots_; | 466 HeapObjectsSet user_roots_; |
| 465 HeapObjectsSet weak_containers_; | 467 HeapObjectsSet weak_containers_; |
| 466 v8::HeapProfiler::ObjectNameResolver* global_object_name_resolver_; | 468 v8::HeapProfiler::ObjectNameResolver* global_object_name_resolver_; |
| 467 | 469 |
| 470 std::vector<bool> marks_; |
| 471 |
| 468 friend class IndexedReferencesExtractor; | 472 friend class IndexedReferencesExtractor; |
| 469 friend class RootsReferencesExtractor; | 473 friend class RootsReferencesExtractor; |
| 470 | 474 |
| 471 DISALLOW_COPY_AND_ASSIGN(V8HeapExplorer); | 475 DISALLOW_COPY_AND_ASSIGN(V8HeapExplorer); |
| 472 }; | 476 }; |
| 473 | 477 |
| 474 | 478 |
| 475 class NativeGroupRetainedObjectInfo; | 479 class NativeGroupRetainedObjectInfo; |
| 476 | 480 |
| 477 | 481 |
| (...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 613 friend class HeapSnapshotJSONSerializerIterator; | 617 friend class HeapSnapshotJSONSerializerIterator; |
| 614 | 618 |
| 615 DISALLOW_COPY_AND_ASSIGN(HeapSnapshotJSONSerializer); | 619 DISALLOW_COPY_AND_ASSIGN(HeapSnapshotJSONSerializer); |
| 616 }; | 620 }; |
| 617 | 621 |
| 618 | 622 |
| 619 } // namespace internal | 623 } // namespace internal |
| 620 } // namespace v8 | 624 } // namespace v8 |
| 621 | 625 |
| 622 #endif // V8_PROFILER_HEAP_SNAPSHOT_GENERATOR_H_ | 626 #endif // V8_PROFILER_HEAP_SNAPSHOT_GENERATOR_H_ |
| OLD | NEW |