v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::HeapSnapshotGenerator Class Reference

#include <heap-snapshot-generator.h>

Inheritance diagram for v8::internal::HeapSnapshotGenerator:
Collaboration diagram for v8::internal::HeapSnapshotGenerator:

Public Types

using HeapEntriesMap = base::HashMap
 
using SmiEntriesMap = std::unordered_map<int, HeapEntry*>
 

Public Member Functions

 HeapSnapshotGenerator (HeapSnapshot *snapshot, v8::ActivityControl *control, v8::HeapProfiler::ObjectNameResolver *resolver, Heap *heap, cppgc::EmbedderStackState stack_state)
 
 HeapSnapshotGenerator (const HeapSnapshotGenerator &)=delete
 
HeapSnapshotGeneratoroperator= (const HeapSnapshotGenerator &)=delete
 
bool GenerateSnapshot ()
 
bool GenerateSnapshotAfterGC ()
 
HeapEntryFindEntry (HeapThing ptr)
 
HeapEntryFindEntry (Tagged< Smi > smi)
 
HeapEntryAddEntry (Tagged< Smi > smi, HeapEntriesAllocator *allocator)
 
HeapEntryFindOrAddEntry (HeapThing ptr, HeapEntriesAllocator *allocator)
 
HeapEntryFindOrAddEntry (Tagged< Smi > smi, HeapEntriesAllocator *allocator)
 
Heapheap () const
 
- Public Member Functions inherited from v8::internal::SnapshottingProgressReportingInterface
virtual ~SnapshottingProgressReportingInterface ()=default
 

Private Member Functions

bool FillReferences ()
 
void ProgressStep () override
 
bool ProgressReport (bool force=false) override
 
void InitProgressCounter ()
 

Private Attributes

HeapSnapshotsnapshot_
 
v8::ActivityControlcontrol_
 
V8HeapExplorer v8_heap_explorer_
 
NativeObjectsExplorer dom_explorer_
 
HeapEntriesMap entries_map_
 
SmiEntriesMap smis_map_
 
uint32_t progress_counter_
 
uint32_t progress_total_
 
Heapheap_
 
cppgc::EmbedderStackState stack_state_
 

Detailed Description

Definition at line 636 of file heap-snapshot-generator.h.

Member Typedef Documentation

◆ HeapEntriesMap

◆ SmiEntriesMap

Definition at line 643 of file heap-snapshot-generator.h.

Constructor & Destructor Documentation

◆ HeapSnapshotGenerator() [1/2]

v8::internal::HeapSnapshotGenerator::HeapSnapshotGenerator ( HeapSnapshot * snapshot,
v8::ActivityControl * control,
v8::HeapProfiler::ObjectNameResolver * resolver,
Heap * heap,
cppgc::EmbedderStackState stack_state )

Definition at line 3218 of file heap-snapshot-generator.cc.

◆ HeapSnapshotGenerator() [2/2]

v8::internal::HeapSnapshotGenerator::HeapSnapshotGenerator ( const HeapSnapshotGenerator & )
delete

Member Function Documentation

◆ AddEntry()

HeapEntry * v8::internal::HeapSnapshotGenerator::AddEntry ( Tagged< Smi > smi,
HeapEntriesAllocator * allocator )
inline

Definition at line 681 of file heap-snapshot-generator.h.

Here is the caller graph for this function:

◆ FillReferences()

bool v8::internal::HeapSnapshotGenerator::FillReferences ( )
private

Definition at line 3336 of file heap-snapshot-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FindEntry() [1/2]

HeapEntry * v8::internal::HeapSnapshotGenerator::FindEntry ( HeapThing ptr)
inline

Definition at line 653 of file heap-snapshot-generator.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FindEntry() [2/2]

HeapEntry * v8::internal::HeapSnapshotGenerator::FindEntry ( Tagged< Smi > smi)
inline

Definition at line 659 of file heap-snapshot-generator.h.

◆ FindOrAddEntry() [1/2]

HeapEntry * v8::internal::HeapSnapshotGenerator::FindOrAddEntry ( HeapThing ptr,
HeapEntriesAllocator * allocator )
inline

Definition at line 686 of file heap-snapshot-generator.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FindOrAddEntry() [2/2]

HeapEntry * v8::internal::HeapSnapshotGenerator::FindOrAddEntry ( Tagged< Smi > smi,
HeapEntriesAllocator * allocator )
inline

Definition at line 702 of file heap-snapshot-generator.h.

Here is the call graph for this function:

◆ GenerateSnapshot()

bool v8::internal::HeapSnapshotGenerator::GenerateSnapshot ( )

Definition at line 3244 of file heap-snapshot-generator.cc.

Here is the call graph for this function:

◆ GenerateSnapshotAfterGC()

bool v8::internal::HeapSnapshotGenerator::GenerateSnapshotAfterGC ( )

Definition at line 3290 of file heap-snapshot-generator.cc.

Here is the call graph for this function:

◆ heap()

Heap * v8::internal::HeapSnapshotGenerator::heap ( ) const
inline

Definition at line 707 of file heap-snapshot-generator.h.

◆ InitProgressCounter()

void v8::internal::HeapSnapshotGenerator::InitProgressCounter ( )
private

Definition at line 3330 of file heap-snapshot-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=()

HeapSnapshotGenerator & v8::internal::HeapSnapshotGenerator::operator= ( const HeapSnapshotGenerator & )
delete

◆ ProgressReport()

bool v8::internal::HeapSnapshotGenerator::ProgressReport ( bool force = false)
overrideprivatevirtual

Implements v8::internal::SnapshottingProgressReportingInterface.

Definition at line 3320 of file heap-snapshot-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ProgressStep()

void v8::internal::HeapSnapshotGenerator::ProgressStep ( )
overrideprivatevirtual

Member Data Documentation

◆ control_

v8::ActivityControl* v8::internal::HeapSnapshotGenerator::control_
private

Definition at line 716 of file heap-snapshot-generator.h.

◆ dom_explorer_

NativeObjectsExplorer v8::internal::HeapSnapshotGenerator::dom_explorer_
private

Definition at line 718 of file heap-snapshot-generator.h.

◆ entries_map_

HeapEntriesMap v8::internal::HeapSnapshotGenerator::entries_map_
private

Definition at line 720 of file heap-snapshot-generator.h.

◆ heap_

Heap* v8::internal::HeapSnapshotGenerator::heap_
private

Definition at line 725 of file heap-snapshot-generator.h.

◆ progress_counter_

uint32_t v8::internal::HeapSnapshotGenerator::progress_counter_
private

Definition at line 723 of file heap-snapshot-generator.h.

◆ progress_total_

uint32_t v8::internal::HeapSnapshotGenerator::progress_total_
private

Definition at line 724 of file heap-snapshot-generator.h.

◆ smis_map_

SmiEntriesMap v8::internal::HeapSnapshotGenerator::smis_map_
private

Definition at line 721 of file heap-snapshot-generator.h.

◆ snapshot_

HeapSnapshot* v8::internal::HeapSnapshotGenerator::snapshot_
private

Definition at line 715 of file heap-snapshot-generator.h.

◆ stack_state_

cppgc::EmbedderStackState v8::internal::HeapSnapshotGenerator::stack_state_
private

Definition at line 726 of file heap-snapshot-generator.h.

◆ v8_heap_explorer_

V8HeapExplorer v8::internal::HeapSnapshotGenerator::v8_heap_explorer_
private

Definition at line 717 of file heap-snapshot-generator.h.


The documentation for this class was generated from the following files: