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

#include <embedded-data.h>

Collaboration diagram for v8::internal::EmbeddedData:

Classes

struct  BuiltinLookupEntry
 
struct  LayoutDescription
 

Public Member Functions

const uint8_t * code () const
 
uint32_t code_size () const
 
const uint8_t * data () const
 
uint32_t data_size () const
 
bool IsInCodeRange (Address pc) const
 
void Dispose ()
 
Address InstructionStartOf (Builtin builtin) const
 
Address InstructionEndOf (Builtin builtin) const
 
uint32_t InstructionSizeOf (Builtin builtin) const
 
Address InstructionStartOfBytecodeHandlers () const
 
Address InstructionEndOfBytecodeHandlers () const
 
Address MetadataStartOf (Builtin builtin) const
 
uint32_t AddressForHashing (Address addr)
 
uint32_t PaddedInstructionSizeOf (Builtin builtin) const
 
size_t CreateEmbeddedBlobDataHash () const
 
size_t CreateEmbeddedBlobCodeHash () const
 
size_t EmbeddedBlobDataHash () const
 
size_t EmbeddedBlobCodeHash () const
 
size_t IsolateHash () const
 
Builtin TryLookupCode (Address address) const
 
Builtin GetBuiltinId (ReorderedBuiltinIndex embedded_index) const
 

Static Public Member Functions

static EmbeddedData NewFromIsolate (Isolate *isolate)
 
static EmbeddedData FromBlob ()
 
static EmbeddedData FromBlob (Isolate *isolate)
 
static EmbeddedData FromBlob (CodeRange *code_range)
 
static EmbeddedData FromBlobForPc (Isolate *isolate, Address maybe_builtin_pc)
 
static constexpr uint32_t EmbeddedBlobDataHashOffset ()
 
static constexpr uint32_t EmbeddedBlobDataHashSize ()
 
static constexpr uint32_t EmbeddedBlobCodeHashOffset ()
 
static constexpr uint32_t EmbeddedBlobCodeHashSize ()
 
static constexpr uint32_t IsolateHashOffset ()
 
static constexpr uint32_t IsolateHashSize ()
 
static constexpr uint32_t LayoutDescriptionTableOffset ()
 
static constexpr uint32_t LayoutDescriptionTableSize ()
 
static constexpr uint32_t BuiltinLookupEntryTableOffset ()
 
static constexpr uint32_t BuiltinLookupEntryTableSize ()
 
static constexpr uint32_t FixedDataSize ()
 
static constexpr uint32_t RawMetadataOffset ()
 
static constexpr uint32_t RawCodeOffset ()
 

Static Public Attributes

static constexpr uint32_t kTableSize = Builtins::kBuiltinCount
 

Private Member Functions

 EmbeddedData (const uint8_t *code, uint32_t code_size, const uint8_t *data, uint32_t data_size)
 
const uint8_t * RawCode () const
 
const LayoutDescription & LayoutDescription (Builtin builtin) const
 
const BuiltinLookupEntry * BuiltinLookupEntry (ReorderedBuiltinIndex index) const
 
const uint8_t * RawMetadata () const
 
void PrintStatistics () const
 

Static Private Member Functions

static constexpr int PadAndAlignCode (int size)
 
static constexpr int PadAndAlignData (int size)
 

Private Attributes

const uint8_t * code_
 
uint32_t code_size_
 
const uint8_t * data_
 
uint32_t data_size_
 

Detailed Description

Definition at line 55 of file embedded-data.h.

Constructor & Destructor Documentation

◆ EmbeddedData()

v8::internal::EmbeddedData::EmbeddedData ( const uint8_t * code,
uint32_t code_size,
const uint8_t * data,
uint32_t data_size )
inlineprivate

Definition at line 262 of file embedded-data.h.

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

Member Function Documentation

◆ AddressForHashing()

uint32_t v8::internal::EmbeddedData::AddressForHashing ( Address addr)
inline

Definition at line 147 of file embedded-data.h.

Here is the call graph for this function:

◆ BuiltinLookupEntry()

const BuiltinLookupEntry * v8::internal::EmbeddedData::BuiltinLookupEntry ( ReorderedBuiltinIndex index) const
inlineprivate

Definition at line 280 of file embedded-data.h.

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

◆ BuiltinLookupEntryTableOffset()

static constexpr uint32_t v8::internal::EmbeddedData::BuiltinLookupEntryTableOffset ( )
inlinestaticconstexpr

Definition at line 246 of file embedded-data.h.

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

◆ BuiltinLookupEntryTableSize()

static constexpr uint32_t v8::internal::EmbeddedData::BuiltinLookupEntryTableSize ( )
inlinestaticconstexpr

Definition at line 249 of file embedded-data.h.

Here is the caller graph for this function:

◆ code()

const uint8_t * v8::internal::EmbeddedData::code ( ) const
inline

Definition at line 123 of file embedded-data.h.

◆ code_size()

uint32_t v8::internal::EmbeddedData::code_size ( ) const
inline

Definition at line 124 of file embedded-data.h.

Here is the caller graph for this function:

◆ CreateEmbeddedBlobCodeHash()

size_t v8::internal::EmbeddedData::CreateEmbeddedBlobCodeHash ( ) const

Definition at line 434 of file embedded-data.cc.

Here is the call graph for this function:

◆ CreateEmbeddedBlobDataHash()

size_t v8::internal::EmbeddedData::CreateEmbeddedBlobDataHash ( ) const

Definition at line 421 of file embedded-data.cc.

Here is the call graph for this function:

◆ data()

const uint8_t * v8::internal::EmbeddedData::data ( ) const
inline

Definition at line 125 of file embedded-data.h.

◆ data_size()

uint32_t v8::internal::EmbeddedData::data_size ( ) const
inline

Definition at line 126 of file embedded-data.h.

Here is the caller graph for this function:

◆ Dispose()

void v8::internal::EmbeddedData::Dispose ( )
inline

Definition at line 133 of file embedded-data.h.

◆ EmbeddedBlobCodeHash()

size_t v8::internal::EmbeddedData::EmbeddedBlobCodeHash ( ) const
inline

Definition at line 162 of file embedded-data.h.

Here is the call graph for this function:

◆ EmbeddedBlobCodeHashOffset()

static constexpr uint32_t v8::internal::EmbeddedData::EmbeddedBlobCodeHashOffset ( )
inlinestaticconstexpr

Definition at line 232 of file embedded-data.h.

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

◆ EmbeddedBlobCodeHashSize()

static constexpr uint32_t v8::internal::EmbeddedData::EmbeddedBlobCodeHashSize ( )
inlinestaticconstexpr

Definition at line 235 of file embedded-data.h.

Here is the caller graph for this function:

◆ EmbeddedBlobDataHash()

size_t v8::internal::EmbeddedData::EmbeddedBlobDataHash ( ) const
inline

Definition at line 158 of file embedded-data.h.

Here is the call graph for this function:

◆ EmbeddedBlobDataHashOffset()

static constexpr uint32_t v8::internal::EmbeddedData::EmbeddedBlobDataHashOffset ( )
inlinestaticconstexpr

Definition at line 230 of file embedded-data.h.

Here is the caller graph for this function:

◆ EmbeddedBlobDataHashSize()

static constexpr uint32_t v8::internal::EmbeddedData::EmbeddedBlobDataHashSize ( )
inlinestaticconstexpr

Definition at line 231 of file embedded-data.h.

Here is the caller graph for this function:

◆ FixedDataSize()

static constexpr uint32_t v8::internal::EmbeddedData::FixedDataSize ( )
inlinestaticconstexpr

Definition at line 252 of file embedded-data.h.

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

◆ FromBlob() [1/3]

static EmbeddedData v8::internal::EmbeddedData::FromBlob ( )
inlinestatic

Definition at line 62 of file embedded-data.h.

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

◆ FromBlob() [2/3]

static EmbeddedData v8::internal::EmbeddedData::FromBlob ( CodeRange * code_range)
inlinestatic

Definition at line 79 of file embedded-data.h.

Here is the call graph for this function:

◆ FromBlob() [3/3]

static EmbeddedData v8::internal::EmbeddedData::FromBlob ( Isolate * isolate)
inlinestatic

Definition at line 71 of file embedded-data.h.

Here is the call graph for this function:

◆ FromBlobForPc()

static EmbeddedData v8::internal::EmbeddedData::FromBlobForPc ( Isolate * isolate,
Address maybe_builtin_pc )
inlinestatic

Definition at line 94 of file embedded-data.h.

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

◆ GetBuiltinId()

Builtin v8::internal::EmbeddedData::GetBuiltinId ( ReorderedBuiltinIndex embedded_index) const

Definition at line 440 of file embedded-data.cc.

Here is the call graph for this function:

◆ InstructionEndOf()

Address v8::internal::EmbeddedData::InstructionEndOf ( Builtin builtin) const
inline

Definition at line 22 of file embedded-data-inl.h.

Here is the call graph for this function:

◆ InstructionEndOfBytecodeHandlers()

Address v8::internal::EmbeddedData::InstructionEndOfBytecodeHandlers ( ) const
inline

Definition at line 49 of file embedded-data-inl.h.

◆ InstructionSizeOf()

uint32_t v8::internal::EmbeddedData::InstructionSizeOf ( Builtin builtin) const
inline

Definition at line 31 of file embedded-data-inl.h.

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

◆ InstructionStartOf()

Address v8::internal::EmbeddedData::InstructionStartOf ( Builtin builtin) const
inline

Definition at line 14 of file embedded-data-inl.h.

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

◆ InstructionStartOfBytecodeHandlers()

Address v8::internal::EmbeddedData::InstructionStartOfBytecodeHandlers ( ) const
inline

Definition at line 45 of file embedded-data-inl.h.

Here is the call graph for this function:

◆ IsInCodeRange()

bool v8::internal::EmbeddedData::IsInCodeRange ( Address pc) const
inline

Definition at line 128 of file embedded-data.h.

Here is the caller graph for this function:

◆ IsolateHash()

size_t v8::internal::EmbeddedData::IsolateHash ( ) const
inline

Definition at line 167 of file embedded-data.h.

Here is the call graph for this function:

◆ IsolateHashOffset()

static constexpr uint32_t v8::internal::EmbeddedData::IsolateHashOffset ( )
inlinestaticconstexpr

Definition at line 236 of file embedded-data.h.

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

◆ IsolateHashSize()

static constexpr uint32_t v8::internal::EmbeddedData::IsolateHashSize ( )
inlinestaticconstexpr

Definition at line 239 of file embedded-data.h.

Here is the caller graph for this function:

◆ LayoutDescription()

const LayoutDescription & v8::internal::EmbeddedData::LayoutDescription ( Builtin builtin) const
inlineprivate

Definition at line 273 of file embedded-data.h.

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

◆ LayoutDescriptionTableOffset()

static constexpr uint32_t v8::internal::EmbeddedData::LayoutDescriptionTableOffset ( )
inlinestaticconstexpr

Definition at line 240 of file embedded-data.h.

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

◆ LayoutDescriptionTableSize()

static constexpr uint32_t v8::internal::EmbeddedData::LayoutDescriptionTableSize ( )
inlinestaticconstexpr

Definition at line 243 of file embedded-data.h.

Here is the caller graph for this function:

◆ MetadataStartOf()

Address v8::internal::EmbeddedData::MetadataStartOf ( Builtin builtin) const
inline

Definition at line 37 of file embedded-data-inl.h.

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

◆ NewFromIsolate()

EmbeddedData v8::internal::EmbeddedData::NewFromIsolate ( Isolate * isolate)
static

Definition at line 236 of file embedded-data.cc.

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

◆ PadAndAlignCode()

static constexpr int v8::internal::EmbeddedData::PadAndAlignCode ( int size)
inlinestaticconstexprprivate

Definition at line 290 of file embedded-data.h.

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

◆ PadAndAlignData()

static constexpr int v8::internal::EmbeddedData::PadAndAlignData ( int size)
inlinestaticconstexprprivate

Definition at line 295 of file embedded-data.h.

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

◆ PaddedInstructionSizeOf()

uint32_t v8::internal::EmbeddedData::PaddedInstructionSizeOf ( Builtin builtin) const
inline

Definition at line 55 of file embedded-data-inl.h.

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

◆ PrintStatistics()

void v8::internal::EmbeddedData::PrintStatistics ( ) const
private

Definition at line 446 of file embedded-data.cc.

Here is the call graph for this function:

◆ RawCode()

const uint8_t * v8::internal::EmbeddedData::RawCode ( ) const
inlineprivate

Definition at line 271 of file embedded-data.h.

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

◆ RawCodeOffset()

static constexpr uint32_t v8::internal::EmbeddedData::RawCodeOffset ( )
inlinestaticconstexpr

Definition at line 259 of file embedded-data.h.

Here is the caller graph for this function:

◆ RawMetadata()

const uint8_t * v8::internal::EmbeddedData::RawMetadata ( ) const
inlineprivate

Definition at line 288 of file embedded-data.h.

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

◆ RawMetadataOffset()

static constexpr uint32_t v8::internal::EmbeddedData::RawMetadataOffset ( )
inlinestaticconstexpr

Definition at line 256 of file embedded-data.h.

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

◆ TryLookupCode()

Builtin v8::internal::EmbeddedData::TryLookupCode ( Address address) const

Definition at line 16 of file embedded-data.cc.

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

Member Data Documentation

◆ code_

const uint8_t* v8::internal::EmbeddedData::code_
private

Definition at line 305 of file embedded-data.h.

◆ code_size_

uint32_t v8::internal::EmbeddedData::code_size_
private

Definition at line 306 of file embedded-data.h.

◆ data_

const uint8_t* v8::internal::EmbeddedData::data_
private

Definition at line 312 of file embedded-data.h.

◆ data_size_

uint32_t v8::internal::EmbeddedData::data_size_
private

Definition at line 313 of file embedded-data.h.

◆ kTableSize

uint32_t v8::internal::EmbeddedData::kTableSize = Builtins::kBuiltinCount
staticconstexpr

Definition at line 229 of file embedded-data.h.


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