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

#include <frames.h>

Inheritance diagram for v8::internal::CommonFrameWithJSLinkage:
Collaboration diagram for v8::internal::CommonFrameWithJSLinkage:

Public Member Functions

virtual Tagged< JSFunctionfunction () const =0
 
virtual Tagged< Objectreceiver () const
 
virtual Tagged< ObjectGetParameter (int index) const
 
virtual int ComputeParametersCount () const
 
DirectHandle< FixedArrayGetParameters () const
 
virtual int GetActualArgumentCount () const
 
Tagged< HeapObjectunchecked_code () const override
 
virtual int LookupExceptionHandlerInTable (int *data, HandlerTable::CatchPrediction *prediction)
 
virtual bool IsConstructor () const
 
FrameSummaries Summarize () const override
 
- Public Member Functions inherited from v8::internal::CommonFrame
virtual Tagged< Objectcontext () const
 
virtual int position () const
 
Tagged< ObjectGetExpression (int index) const
 
void SetExpression (int index, Tagged< Object > value)
 
int ComputeExpressionsCount () const
 
Address GetCallerStackPointer () const override
 
- Public Member Functions inherited from v8::internal::StackFrame
 StackFrame (const StackFrame &original) V8_NOEXCEPT
 
bool is_entry () const
 
bool is_construct_entry () const
 
bool is_exit () const
 
bool is_optimized_js () const
 
bool is_unoptimized_js () const
 
bool is_interpreted () const
 
bool is_baseline () const
 
bool is_maglev () const
 
bool is_turbofan_js () const
 
bool is_builtin () const
 
bool is_internal () const
 
bool is_builtin_continuation () const
 
bool is_javascript_builtin_continuation () const
 
bool is_javascript_builtin_with_catch_continuation () const
 
bool is_construct () const
 
bool is_fast_construct () const
 
bool is_builtin_exit () const
 
bool is_api_accessor_exit () const
 
bool is_api_callback_exit () const
 
bool is_irregexp () const
 
bool is_javascript () const
 
Address sp () const
 
Address fp () const
 
Address callee_fp () const
 
Address callee_pc () const
 
Address caller_sp () const
 
Address pc () const
 
bool is_profiler_entry_frame () const
 
bool is_stack_exit_frame () const
 
Address unauthenticated_pc () const
 
Address maybe_unauthenticated_pc () const
 
bool InFastCCall () const
 
Address constant_pool () const
 
void set_constant_pool (Address constant_pool)
 
Addresspc_address () const
 
Addressconstant_pool_address () const
 
StackFrameId id () const
 
StackHandlertop_handler () const
 
virtual Type type () const =0
 
V8_EXPORT_PRIVATE Tagged< CodeLookupCode () const
 
V8_EXPORT_PRIVATE std::pair< Tagged< Code >, int > LookupCodeAndOffset () const
 
V8_EXPORT_PRIVATE Tagged< GcSafeCodeGcSafeLookupCode () const
 
V8_EXPORT_PRIVATE std::pair< Tagged< GcSafeCode >, int > GcSafeLookupCodeAndOffset () const
 
virtual void Iterate (RootVisitor *v) const =0
 
void IteratePc (RootVisitor *v, Address *constant_pool_address, Tagged< GcSafeCode > holder) const
 
virtual void Print (StringStream *accumulator, PrintMode mode, int index) const
 
Isolateisolate () const
 
void operator= (const StackFrame &original)=delete
 

Protected Member Functions

 CommonFrameWithJSLinkage (StackFrameIteratorBase *iterator)
 
Address GetParameterSlot (int index) const
 
- Protected Member Functions inherited from v8::internal::CommonFrame
 CommonFrame (StackFrameIteratorBase *iterator)
 
bool HasTaggedOutgoingParams (Tagged< GcSafeCode > code_lookup) const
 
void ComputeCallerState (State *state) const override
 
Address caller_fp () const
 
Address caller_pc () const
 
void IterateExpressions (RootVisitor *v) const
 
void IterateTurbofanJSOptimizedFrame (RootVisitor *v) const
 
virtual Address GetExpressionAddress (int n) const
 
- Protected Member Functions inherited from v8::internal::StackFrame
 StackFrame (StackFrameIteratorBase *iterator)
 

Static Protected Member Functions

static bool IsConstructFrame (Address fp)
 

Additional Inherited Members

- Public Types inherited from v8::internal::StackFrame
enum  Type { NO_FRAME_TYPE = 0 , STACK_FRAME_TYPE_LIST =(DECLARE_TYPE) NUMBER_OF_TYPES , MANUAL }
 
enum  JsFrameMarker { INNER_JSENTRY_FRAME = (0 << kSmiTagSize) | kSmiTag , OUTERMOST_JSENTRY_FRAME = (1 << kSmiTagSize) | kSmiTag }
 
enum  PrintMode { OVERVIEW , DETAILS }
 
- Static Public Member Functions inherited from v8::internal::CommonFrame
static CommonFramecast (StackFrame *frame)
 
- Static Public Member Functions inherited from v8::internal::StackFrame
static constexpr int32_t TypeToMarker (Type type)
 
static constexpr Type MarkerToType (intptr_t marker)
 
static constexpr bool IsTypeMarker (uintptr_t function_or_marker)
 
static bool IsJavaScript (Type t)
 
static Address unauthenticated_pc (Address *pc_address)
 
static Address maybe_unauthenticated_pc (Address *pc_address)
 
static void SetReturnAddressLocationResolver (ReturnAddressLocationResolver resolver)
 
static Address ReadPC (Address *pc_address)
 
static AddressResolveReturnAddressLocation (Address *pc_address)
 
- Protected Attributes inherited from v8::internal::StackFrame
const StackFrameIteratorBase *const iterator_
 

Detailed Description

Definition at line 717 of file frames.h.

Constructor & Destructor Documentation

◆ CommonFrameWithJSLinkage()

v8::internal::CommonFrameWithJSLinkage::CommonFrameWithJSLinkage ( StackFrameIteratorBase * iterator)
inlineexplicitprotected

Definition at line 119 of file frames-inl.h.

Member Function Documentation

◆ ComputeParametersCount()

int v8::internal::CommonFrameWithJSLinkage::ComputeParametersCount ( ) const
virtual

Reimplemented in v8::internal::BuiltinFrame, v8::internal::JavaScriptBuiltinContinuationFrame, and v8::internal::TurbofanJSFrame.

Definition at line 2624 of file frames.cc.

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

◆ function()

virtual Tagged< JSFunction > v8::internal::CommonFrameWithJSLinkage::function ( ) const
pure virtual

Implemented in v8::internal::BuiltinFrame, v8::internal::JavaScriptBuiltinContinuationFrame, and v8::internal::JavaScriptFrame.

Here is the caller graph for this function:

◆ GetActualArgumentCount()

int v8::internal::CommonFrameWithJSLinkage::GetActualArgumentCount ( ) const
inlinevirtual

Reimplemented in v8::internal::JavaScriptFrame.

Definition at line 277 of file frames-inl.h.

Here is the caller graph for this function:

◆ GetParameter()

Tagged< Object > v8::internal::CommonFrameWithJSLinkage::GetParameter ( int index) const
virtual

Definition at line 2620 of file frames.cc.

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

◆ GetParameters()

DirectHandle< FixedArray > v8::internal::CommonFrameWithJSLinkage::GetParameters ( ) const

Definition at line 2638 of file frames.cc.

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

◆ GetParameterSlot()

Address v8::internal::CommonFrameWithJSLinkage::GetParameterSlot ( int index) const
inlineprotected

Definition at line 269 of file frames-inl.h.

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

◆ IsConstructFrame()

bool v8::internal::CommonFrameWithJSLinkage::IsConstructFrame ( Address fp)
inlinestaticprotected

Definition at line 259 of file frames-inl.h.

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

◆ IsConstructor()

bool v8::internal::CommonFrameWithJSLinkage::IsConstructor ( ) const
virtual

Reimplemented in v8::internal::JavaScriptFrame.

Definition at line 2475 of file frames.cc.

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

◆ LookupExceptionHandlerInTable()

int v8::internal::CommonFrameWithJSLinkage::LookupExceptionHandlerInTable ( int * data,
HandlerTable::CatchPrediction * prediction )
virtual

Reimplemented in v8::internal::OptimizedJSFrame, and v8::internal::UnoptimizedJSFrame.

Definition at line 2521 of file frames.cc.

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

◆ receiver()

Tagged< Object > v8::internal::CommonFrameWithJSLinkage::receiver ( ) const
virtual

Definition at line 2505 of file frames.cc.

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

◆ Summarize()

FrameSummaries v8::internal::CommonFrameWithJSLinkage::Summarize ( ) const
overridevirtual

Reimplemented from v8::internal::CommonFrame.

Reimplemented in v8::internal::OptimizedJSFrame, and v8::internal::UnoptimizedJSFrame.

Definition at line 2479 of file frames.cc.

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

◆ unchecked_code()

Tagged< HeapObject > v8::internal::CommonFrameWithJSLinkage::unchecked_code ( ) const
overridevirtual

Implements v8::internal::StackFrame.

Definition at line 2418 of file frames.cc.

Here is the call graph for this function:

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