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

#include <etw-isolate-load-script-data-win.h>

Collaboration diagram for v8::internal::ETWJITInterface::IsolateLoadScriptData:

Classes

struct  EnableInterruptData
 
struct  EnableWithFilterDataInterruptData
 

Public Member Functions

 IsolateLoadScriptData (Isolate *isolate)
 
 IsolateLoadScriptData (IsolateLoadScriptData &&rhs) V8_NOEXCEPT
 

Static Public Member Functions

static void AddIsolate (Isolate *isolate)
 
static void RemoveIsolate (Isolate *isolate)
 
static void UpdateAllIsolates (bool etw_enabled, uint32_t options)
 
static bool MaybeAddLoadedScript (Isolate *isolate, int script_id)
 
static void EnableLog (Isolate *isolate, size_t event_id, std::weak_ptr< EtwIsolateCaptureStateMonitor > weak_monitor, uint32_t options)
 
static void DisableLog (Isolate *isolate, size_t event_id)
 
static void EnableLogWithFilterDataOnAllIsolates (const uint8_t *data, size_t size, uint32_t options)
 
static void EnableLogWithFilterData (Isolate *isolate, size_t event_id, const std::string &EnableLogWithFilterData, std::weak_ptr< EtwIsolateCaptureStateMonitor > weak_monitor, uint32_t options)
 

Private Member Functions

void EnqueueEnableLog (std::weak_ptr< EtwIsolateCaptureStateMonitor > weak_monitor, uint32_t options)
 
void EnqueueEnableLogWithFilterData (const std::string &etw_filter_payload, std::weak_ptr< EtwIsolateCaptureStateMonitor > weak_monitor, uint32_t options)
 
void EnqueueDisableLog ()
 
bool IsScriptLoaded (int script_id) const
 
void AddLoadedScript (int script_id)
 
void RemoveAllLoadedScripts ()
 
size_t CurrentEventId () const
 

Static Private Member Functions

static IsolateLoadScriptDataGetData (Isolate *isolate)
 

Private Attributes

Isolateisolate_ = nullptr
 
std::unordered_set< int > loaded_scripts_ids_
 
std::atomic< size_tevent_id_ = 0
 

Detailed Description

Definition at line 23 of file etw-isolate-load-script-data-win.h.

Constructor & Destructor Documentation

◆ IsolateLoadScriptData() [1/2]

v8::internal::ETWJITInterface::IsolateLoadScriptData::IsolateLoadScriptData ( Isolate * isolate)
explicit

Definition at line 41 of file etw-isolate-load-script-data-win.cc.

Here is the caller graph for this function:

◆ IsolateLoadScriptData() [2/2]

v8::internal::ETWJITInterface::IsolateLoadScriptData::IsolateLoadScriptData ( IsolateLoadScriptData && rhs)
explicit

Definition at line 43 of file etw-isolate-load-script-data-win.cc.

Member Function Documentation

◆ AddIsolate()

void v8::internal::ETWJITInterface::IsolateLoadScriptData::AddIsolate ( Isolate * isolate)
static

Definition at line 51 of file etw-isolate-load-script-data-win.cc.

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

◆ AddLoadedScript()

void v8::internal::ETWJITInterface::IsolateLoadScriptData::AddLoadedScript ( int script_id)
private

Definition at line 299 of file etw-isolate-load-script-data-win.cc.

◆ CurrentEventId()

size_t v8::internal::ETWJITInterface::IsolateLoadScriptData::CurrentEventId ( ) const
private

Definition at line 306 of file etw-isolate-load-script-data-win.cc.

◆ DisableLog()

void v8::internal::ETWJITInterface::IsolateLoadScriptData::DisableLog ( Isolate * isolate,
size_t event_id )
static

Definition at line 174 of file etw-isolate-load-script-data-win.cc.

Here is the call graph for this function:

◆ EnableLog()

void v8::internal::ETWJITInterface::IsolateLoadScriptData::EnableLog ( Isolate * isolate,
size_t event_id,
std::weak_ptr< EtwIsolateCaptureStateMonitor > weak_monitor,
uint32_t options )
static

Definition at line 111 of file etw-isolate-load-script-data-win.cc.

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

◆ EnableLogWithFilterData()

void v8::internal::ETWJITInterface::IsolateLoadScriptData::EnableLogWithFilterData ( Isolate * isolate,
size_t event_id,
const std::string & EnableLogWithFilterData,
std::weak_ptr< EtwIsolateCaptureStateMonitor > weak_monitor,
uint32_t options )
static

Definition at line 189 of file etw-isolate-load-script-data-win.cc.

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

◆ EnableLogWithFilterDataOnAllIsolates()

void v8::internal::ETWJITInterface::IsolateLoadScriptData::EnableLogWithFilterDataOnAllIsolates ( const uint8_t * data,
size_t size,
uint32_t options )
static

Definition at line 146 of file etw-isolate-load-script-data-win.cc.

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

◆ EnqueueDisableLog()

void v8::internal::ETWJITInterface::IsolateLoadScriptData::EnqueueDisableLog ( )
private

Definition at line 261 of file etw-isolate-load-script-data-win.cc.

◆ EnqueueEnableLog()

void v8::internal::ETWJITInterface::IsolateLoadScriptData::EnqueueEnableLog ( std::weak_ptr< EtwIsolateCaptureStateMonitor > weak_monitor,
uint32_t options )
private

Definition at line 242 of file etw-isolate-load-script-data-win.cc.

◆ EnqueueEnableLogWithFilterData()

void v8::internal::ETWJITInterface::IsolateLoadScriptData::EnqueueEnableLogWithFilterData ( const std::string & etw_filter_payload,
std::weak_ptr< EtwIsolateCaptureStateMonitor > weak_monitor,
uint32_t options )
private

Definition at line 273 of file etw-isolate-load-script-data-win.cc.

◆ GetData()

IsolateLoadScriptData & v8::internal::ETWJITInterface::IsolateLoadScriptData::GetData ( Isolate * isolate)
staticprivate

Definition at line 238 of file etw-isolate-load-script-data-win.cc.

◆ IsScriptLoaded()

bool v8::internal::ETWJITInterface::IsolateLoadScriptData::IsScriptLoaded ( int script_id) const
private

Definition at line 296 of file etw-isolate-load-script-data-win.cc.

◆ MaybeAddLoadedScript()

bool v8::internal::ETWJITInterface::IsolateLoadScriptData::MaybeAddLoadedScript ( Isolate * isolate,
int script_id )
static

Definition at line 99 of file etw-isolate-load-script-data-win.cc.

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

◆ RemoveAllLoadedScripts()

void v8::internal::ETWJITInterface::IsolateLoadScriptData::RemoveAllLoadedScripts ( )
private

Definition at line 302 of file etw-isolate-load-script-data-win.cc.

◆ RemoveIsolate()

void v8::internal::ETWJITInterface::IsolateLoadScriptData::RemoveIsolate ( Isolate * isolate)
static

Definition at line 57 of file etw-isolate-load-script-data-win.cc.

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

◆ UpdateAllIsolates()

void v8::internal::ETWJITInterface::IsolateLoadScriptData::UpdateAllIsolates ( bool etw_enabled,
uint32_t options )
static

Definition at line 63 of file etw-isolate-load-script-data-win.cc.

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

Member Data Documentation

◆ event_id_

std::atomic<size_t> v8::internal::ETWJITInterface::IsolateLoadScriptData::event_id_ = 0
private

Definition at line 82 of file etw-isolate-load-script-data-win.h.

◆ isolate_

Isolate* v8::internal::ETWJITInterface::IsolateLoadScriptData::isolate_ = nullptr
private

Definition at line 80 of file etw-isolate-load-script-data-win.h.

◆ loaded_scripts_ids_

std::unordered_set<int> v8::internal::ETWJITInterface::IsolateLoadScriptData::loaded_scripts_ids_
private

Definition at line 81 of file etw-isolate-load-script-data-win.h.


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