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

#include <code-data-source.h>

Collaboration diagram for v8::internal::CodeDataSourceIncrementalState:

Classes

struct  Function
 
struct  ScriptUniqueId
 

Public Member Functions

 CodeDataSourceIncrementalState ()=default
 
void Init (const CodeDataSource::TraceContext &context)
 
bool has_buffered_interned_data () const
 
void FlushInternedData (CodeDataSource::TraceContext::TracePacketHandle &packet)
 
uint64_t InternIsolate (Isolate &isolate)
 
uint64_t InternJsScript (Isolate &isolate, Tagged< Script > script)
 
uint64_t InternJsFunction (Isolate &isolate, DirectHandle< SharedFunctionInfo > info, uint64_t v8_js_script_iid, int line_num, int column_num)
 
bool is_initialized () const
 
bool log_script_sources () const
 
bool log_instructions () const
 

Private Types

using JsFunctionNameIid = uint64_t
 

Private Member Functions

uint64_t InternJsFunctionName (Tagged< String > function_name)
 
uint64_t next_isolate_iid () const
 
uint64_t next_script_iid () const
 
uint64_t next_function_iid () const
 
uint64_t next_js_function_name_iid () const
 

Private Attributes

protozero::HeapBuffered< perfetto::protos::pbzero::InternedData > serialized_interned_data_
 
std::unordered_map< int, uint64_t > isolates_
 
std::unordered_map< ScriptUniqueId, uint64_t, ScriptUniqueId::Hashscripts_
 
std::unordered_map< Function, uint64_t, Function::Hashfunctions_
 
std::unordered_map< PerfettoV8String, uint64_t, PerfettoV8String::Hasherjs_function_names_
 
std::unordered_map< std::string, uint64_t > two_byte_function_names_
 
bool log_script_sources_ = false
 
bool log_instructions_ = false
 
bool initialized_ = false
 

Detailed Description

Definition at line 58 of file code-data-source.h.

Member Typedef Documentation

◆ JsFunctionNameIid

Definition at line 88 of file code-data-source.h.

Constructor & Destructor Documentation

◆ CodeDataSourceIncrementalState()

v8::internal::CodeDataSourceIncrementalState::CodeDataSourceIncrementalState ( )
default

Member Function Documentation

◆ FlushInternedData()

void v8::internal::CodeDataSourceIncrementalState::FlushInternedData ( CodeDataSource::TraceContext::TracePacketHandle & packet)

Definition at line 134 of file code-data-source.cc.

◆ has_buffered_interned_data()

bool v8::internal::CodeDataSourceIncrementalState::has_buffered_interned_data ( ) const
inline

Definition at line 63 of file code-data-source.h.

Here is the caller graph for this function:

◆ Init()

void v8::internal::CodeDataSourceIncrementalState::Init ( const CodeDataSource::TraceContext & context)

Definition at line 124 of file code-data-source.cc.

◆ InternIsolate()

uint64_t v8::internal::CodeDataSourceIncrementalState::InternIsolate ( Isolate & isolate)

Definition at line 142 of file code-data-source.cc.

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

◆ InternJsFunction()

uint64_t v8::internal::CodeDataSourceIncrementalState::InternJsFunction ( Isolate & isolate,
DirectHandle< SharedFunctionInfo > info,
uint64_t v8_js_script_iid,
int line_num,
int column_num )

Definition at line 201 of file code-data-source.cc.

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

◆ InternJsFunctionName()

uint64_t v8::internal::CodeDataSourceIncrementalState::InternJsFunctionName ( Tagged< String > function_name)
private

Definition at line 260 of file code-data-source.cc.

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

◆ InternJsScript()

uint64_t v8::internal::CodeDataSourceIncrementalState::InternJsScript ( Isolate & isolate,
Tagged< Script > script )

Definition at line 174 of file code-data-source.cc.

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

◆ is_initialized()

bool v8::internal::CodeDataSourceIncrementalState::is_initialized ( ) const
inline

Definition at line 83 of file code-data-source.h.

◆ log_instructions()

bool v8::internal::CodeDataSourceIncrementalState::log_instructions ( ) const
inline

Definition at line 85 of file code-data-source.h.

Here is the caller graph for this function:

◆ log_script_sources()

bool v8::internal::CodeDataSourceIncrementalState::log_script_sources ( ) const
inline

Definition at line 84 of file code-data-source.h.

Here is the caller graph for this function:

◆ next_function_iid()

uint64_t v8::internal::CodeDataSourceIncrementalState::next_function_iid ( ) const
inlineprivate

Definition at line 134 of file code-data-source.h.

Here is the caller graph for this function:

◆ next_isolate_iid()

uint64_t v8::internal::CodeDataSourceIncrementalState::next_isolate_iid ( ) const
inlineprivate

Definition at line 130 of file code-data-source.h.

Here is the caller graph for this function:

◆ next_js_function_name_iid()

uint64_t v8::internal::CodeDataSourceIncrementalState::next_js_function_name_iid ( ) const
inlineprivate

Definition at line 136 of file code-data-source.h.

Here is the caller graph for this function:

◆ next_script_iid()

uint64_t v8::internal::CodeDataSourceIncrementalState::next_script_iid ( ) const
inlineprivate

Definition at line 132 of file code-data-source.h.

Here is the caller graph for this function:

Member Data Documentation

◆ functions_

std::unordered_map<Function, uint64_t, Function::Hash> v8::internal::CodeDataSourceIncrementalState::functions_
private

Definition at line 150 of file code-data-source.h.

◆ initialized_

bool v8::internal::CodeDataSourceIncrementalState::initialized_ = false
private

Definition at line 157 of file code-data-source.h.

◆ isolates_

std::unordered_map<int, uint64_t> v8::internal::CodeDataSourceIncrementalState::isolates_
private

Definition at line 148 of file code-data-source.h.

◆ js_function_names_

std::unordered_map<PerfettoV8String, uint64_t, PerfettoV8String::Hasher> v8::internal::CodeDataSourceIncrementalState::js_function_names_
private

Definition at line 152 of file code-data-source.h.

◆ log_instructions_

bool v8::internal::CodeDataSourceIncrementalState::log_instructions_ = false
private

Definition at line 156 of file code-data-source.h.

◆ log_script_sources_

bool v8::internal::CodeDataSourceIncrementalState::log_script_sources_ = false
private

Definition at line 155 of file code-data-source.h.

◆ scripts_

std::unordered_map<ScriptUniqueId, uint64_t, ScriptUniqueId::Hash> v8::internal::CodeDataSourceIncrementalState::scripts_
private

Definition at line 149 of file code-data-source.h.

◆ serialized_interned_data_

protozero::HeapBuffered<perfetto::protos::pbzero::InternedData> v8::internal::CodeDataSourceIncrementalState::serialized_interned_data_
private

Definition at line 146 of file code-data-source.h.

◆ two_byte_function_names_

std::unordered_map<std::string, uint64_t> v8::internal::CodeDataSourceIncrementalState::two_byte_function_names_
private

Definition at line 153 of file code-data-source.h.


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