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

#include <maglev-ir.h>

Inheritance diagram for v8::internal::maglev::DeoptFrame:
Collaboration diagram for v8::internal::maglev::DeoptFrame:

Classes

struct  BuiltinContinuationFrameData
 
struct  ConstructInvokeStubFrameData
 
struct  InlinedArgumentsFrameData
 
struct  InterpretedFrameData
 

Public Types

enum class  FrameType { kInterpretedFrame , kInlinedArgumentsFrame , kConstructInvokeStubFrame , kBuiltinContinuationFrame }
 
using FrameData
 

Public Member Functions

 DeoptFrame (FrameData &&data, DeoptFrame *parent)
 
 DeoptFrame (const FrameData &data, DeoptFrame *parent)
 
FrameType type () const
 
DeoptFrameparent ()
 
const DeoptFrameparent () const
 
const InterpretedDeoptFrameas_interpreted () const
 
const InlinedArgumentsDeoptFrameas_inlined_arguments () const
 
const ConstructInvokeStubDeoptFrameas_construct_stub () const
 
const BuiltinContinuationDeoptFrameas_builtin_continuation () const
 
InterpretedDeoptFrameas_interpreted ()
 
InlinedArgumentsDeoptFrameas_inlined_arguments ()
 
ConstructInvokeStubDeoptFrameas_construct_stub ()
 
BuiltinContinuationDeoptFrameas_builtin_continuation ()
 
bool IsJsFrame () const
 
const MaglevCompilationUnitGetCompilationUnit () const
 
BytecodeOffset GetBytecodeOffset () const
 
SourcePosition GetSourcePosition () const
 
compiler::SharedFunctionInfoRef GetSharedFunctionInfo () const
 
compiler::BytecodeArrayRef GetBytecodeArray () const
 
VirtualObjectList GetVirtualObjects () const
 

Protected Member Functions

 DeoptFrame (InterpretedFrameData &&data, DeoptFrame *parent)
 
 DeoptFrame (InlinedArgumentsFrameData &&data, DeoptFrame *parent)
 
 DeoptFrame (ConstructInvokeStubFrameData &&data, DeoptFrame *parent)
 
 DeoptFrame (BuiltinContinuationFrameData &&data, DeoptFrame *parent)
 

Protected Attributes

FrameData data_
 
DeoptFrame *const parent_
 

Detailed Description

Definition at line 1313 of file maglev-ir.h.

Member Typedef Documentation

◆ FrameData

Initial value:
base::DiscriminatedUnion<
FrameType, InterpretedFrameData, InlinedArgumentsFrameData,
ConstructInvokeStubFrameData, BuiltinContinuationFrameData>

Definition at line 1351 of file maglev-ir.h.

Member Enumeration Documentation

◆ FrameType

Enumerator
kInterpretedFrame 
kInlinedArgumentsFrame 
kConstructInvokeStubFrame 
kBuiltinContinuationFrame 

Definition at line 1315 of file maglev-ir.h.

Constructor & Destructor Documentation

◆ DeoptFrame() [1/6]

v8::internal::maglev::DeoptFrame::DeoptFrame ( FrameData && data,
DeoptFrame * parent )
inline

Definition at line 1355 of file maglev-ir.h.

◆ DeoptFrame() [2/6]

v8::internal::maglev::DeoptFrame::DeoptFrame ( const FrameData & data,
DeoptFrame * parent )
inline

Definition at line 1358 of file maglev-ir.h.

◆ DeoptFrame() [3/6]

v8::internal::maglev::DeoptFrame::DeoptFrame ( InterpretedFrameData && data,
DeoptFrame * parent )
inlineprotected

Definition at line 1383 of file maglev-ir.h.

◆ DeoptFrame() [4/6]

v8::internal::maglev::DeoptFrame::DeoptFrame ( InlinedArgumentsFrameData && data,
DeoptFrame * parent )
inlineprotected

Definition at line 1385 of file maglev-ir.h.

◆ DeoptFrame() [5/6]

v8::internal::maglev::DeoptFrame::DeoptFrame ( ConstructInvokeStubFrameData && data,
DeoptFrame * parent )
inlineprotected

Definition at line 1387 of file maglev-ir.h.

◆ DeoptFrame() [6/6]

v8::internal::maglev::DeoptFrame::DeoptFrame ( BuiltinContinuationFrameData && data,
DeoptFrame * parent )
inlineprotected

Definition at line 1389 of file maglev-ir.h.

Member Function Documentation

◆ as_builtin_continuation() [1/2]

BuiltinContinuationDeoptFrame & v8::internal::maglev::DeoptFrame::as_builtin_continuation ( )
inline

Definition at line 1553 of file maglev-ir.h.

Here is the call graph for this function:

◆ as_builtin_continuation() [2/2]

const BuiltinContinuationDeoptFrame & v8::internal::maglev::DeoptFrame::as_builtin_continuation ( ) const
inline

Definition at line 1549 of file maglev-ir.h.

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

◆ as_construct_stub() [1/2]

ConstructInvokeStubDeoptFrame & v8::internal::maglev::DeoptFrame::as_construct_stub ( )
inline

Definition at line 1511 of file maglev-ir.h.

Here is the call graph for this function:

◆ as_construct_stub() [2/2]

const ConstructInvokeStubDeoptFrame & v8::internal::maglev::DeoptFrame::as_construct_stub ( ) const
inline

Definition at line 1505 of file maglev-ir.h.

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

◆ as_inlined_arguments() [1/2]

InlinedArgumentsDeoptFrame & v8::internal::maglev::DeoptFrame::as_inlined_arguments ( )
inline

Definition at line 1471 of file maglev-ir.h.

Here is the call graph for this function:

◆ as_inlined_arguments() [2/2]

const InlinedArgumentsDeoptFrame & v8::internal::maglev::DeoptFrame::as_inlined_arguments ( ) const
inline

Definition at line 1466 of file maglev-ir.h.

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

◆ as_interpreted() [1/2]

InterpretedDeoptFrame & v8::internal::maglev::DeoptFrame::as_interpreted ( )
inline

Definition at line 1432 of file maglev-ir.h.

Here is the call graph for this function:

◆ as_interpreted() [2/2]

const InterpretedDeoptFrame & v8::internal::maglev::DeoptFrame::as_interpreted ( ) const
inline

Definition at line 1428 of file maglev-ir.h.

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

◆ GetBytecodeArray()

compiler::BytecodeArrayRef v8::internal::maglev::DeoptFrame::GetBytecodeArray ( ) const
inline

Definition at line 1620 of file maglev-ir.h.

Here is the call graph for this function:

◆ GetBytecodeOffset()

BytecodeOffset v8::internal::maglev::DeoptFrame::GetBytecodeOffset ( ) const
inline

Definition at line 1585 of file maglev-ir.h.

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

◆ GetCompilationUnit()

const MaglevCompilationUnit & v8::internal::maglev::DeoptFrame::GetCompilationUnit ( ) const
inline

Definition at line 1572 of file maglev-ir.h.

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

◆ GetSharedFunctionInfo()

compiler::SharedFunctionInfoRef v8::internal::maglev::DeoptFrame::GetSharedFunctionInfo ( ) const
inline

Definition at line 1615 of file maglev-ir.h.

Here is the call graph for this function:

◆ GetSourcePosition()

SourcePosition v8::internal::maglev::DeoptFrame::GetSourcePosition ( ) const
inline

Definition at line 1600 of file maglev-ir.h.

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

◆ GetVirtualObjects()

VirtualObjectList v8::internal::maglev::DeoptFrame::GetVirtualObjects ( ) const
inline

Definition at line 1179 of file maglev-interpreter-frame-state.h.

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

◆ IsJsFrame()

bool v8::internal::maglev::DeoptFrame::IsJsFrame ( ) const
inline

Definition at line 1558 of file maglev-ir.h.

Here is the call graph for this function:

◆ parent() [1/2]

DeoptFrame * v8::internal::maglev::DeoptFrame::parent ( )
inline

Definition at line 1362 of file maglev-ir.h.

Here is the caller graph for this function:

◆ parent() [2/2]

const DeoptFrame * v8::internal::maglev::DeoptFrame::parent ( ) const
inline

Definition at line 1363 of file maglev-ir.h.

◆ type()

FrameType v8::internal::maglev::DeoptFrame::type ( ) const
inline

Definition at line 1361 of file maglev-ir.h.

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

Member Data Documentation

◆ data_

FrameData v8::internal::maglev::DeoptFrame::data_
protected

Definition at line 1392 of file maglev-ir.h.

◆ parent_

DeoptFrame* const v8::internal::maglev::DeoptFrame::parent_
protected

Definition at line 1393 of file maglev-ir.h.


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