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

#include <frames.h>

Inheritance diagram for v8::internal::StackFrameIteratorForProfiler:
Collaboration diagram for v8::internal::StackFrameIteratorForProfiler:

Public Member Functions

 StackFrameIteratorForProfiler (Isolate *isolate, Address pc, Address fp, Address sp, Address lr, Address js_entry_sp)
 
StackFrameframe () const
 
void Advance ()
 
StackFrame::Type top_frame_type () const
 
StackFrame::Type ComputeStackFrameType (StackFrame::State *state) const override
 
- Public Member Functions inherited from v8::internal::StackFrameIteratorBase
 StackFrameIteratorBase (const StackFrameIteratorBase &)=delete
 
StackFrameIteratorBaseoperator= (const StackFrameIteratorBase &)=delete
 
Isolateisolate () const
 
bool done () const
 

Private Member Functions

void AdvanceOneFrame ()
 
bool IsValidStackAddress (Address addr) const
 
bool IsValidState (const StackFrame::State &frame) const
 
bool HasValidExitIfEntryFrame (const StackFrame *frame) const
 
bool IsValidExitFrame (Address fp) const
 
bool IsValidTop (ThreadLocalTop *top) const
 
StackFrame::Type GetCallerIfValid (StackFrame *frame, StackFrame::State *state)
 
bool IsNoFrameBytecodeHandlerPc (Isolate *isolate, Address pc, Address fp) const
 

Static Private Member Functions

static bool IsValidFrameType (StackFrame::Type type)
 

Private Attributes

const Address low_bound_
 
const Address high_bound_
 
StackFrame::Type top_frame_type_
 
ExternalCallbackScopeexternal_callback_scope_
 
Address top_link_register_
 

Additional Inherited Members

- Public Attributes inherited from v8::internal::StackFrameIteratorBase
- Protected Member Functions inherited from v8::internal::StackFrameIteratorBase
 StackFrameIteratorBase (Isolate *isolate)
 
StackHandlerhandler () const
 
void SetNewFrame (StackFrame::Type type, StackFrame::State *state)
 
void SetNewFrame (StackFrame::Type type)
 
- Protected Attributes inherited from v8::internal::StackFrameIteratorBase
Isolate *const isolate_
 
union { 
 
   char   uninitialized_ 
 
};  
 
StackFrameframe_
 
StackHandlerhandler_
 

Detailed Description

Definition at line 1815 of file frames.h.

Constructor & Destructor Documentation

◆ StackFrameIteratorForProfiler()

v8::internal::StackFrameIteratorForProfiler::StackFrameIteratorForProfiler ( Isolate * isolate,
Address pc,
Address fp,
Address sp,
Address lr,
Address js_entry_sp )

Definition at line 472 of file frames.cc.

Here is the call graph for this function:

Member Function Documentation

◆ Advance()

void v8::internal::StackFrameIteratorForProfiler::Advance ( )

Definition at line 685 of file frames.cc.

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

◆ AdvanceOneFrame()

void v8::internal::StackFrameIteratorForProfiler::AdvanceOneFrame ( )
private

Definition at line 621 of file frames.cc.

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

◆ ComputeStackFrameType()

StackFrame::Type v8::internal::StackFrameIteratorForProfiler::ComputeStackFrameType ( StackFrame::State * state) const
overridevirtual

Implements v8::internal::StackFrameIteratorBase.

Definition at line 1007 of file frames.cc.

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

◆ frame()

StackFrame * v8::internal::StackFrameIteratorForProfiler::frame ( ) const
inline

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

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

◆ GetCallerIfValid()

StackFrame::Type v8::internal::StackFrameIteratorForProfiler::GetCallerIfValid ( StackFrame * frame,
StackFrame::State * state )
private

◆ HasValidExitIfEntryFrame()

bool v8::internal::StackFrameIteratorForProfiler::HasValidExitIfEntryFrame ( const StackFrame * frame) const
private

Definition at line 657 of file frames.cc.

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

◆ IsNoFrameBytecodeHandlerPc()

bool v8::internal::StackFrameIteratorForProfiler::IsNoFrameBytecodeHandlerPc ( Isolate * isolate,
Address pc,
Address fp ) const
private

Definition at line 447 of file frames.cc.

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

◆ IsValidExitFrame()

bool v8::internal::StackFrameIteratorForProfiler::IsValidExitFrame ( Address fp) const
private

Definition at line 674 of file frames.cc.

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

◆ IsValidFrameType()

bool v8::internal::StackFrameIteratorForProfiler::IsValidFrameType ( StackFrame::Type type)
inlinestaticprivate

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

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

◆ IsValidStackAddress()

bool v8::internal::StackFrameIteratorForProfiler::IsValidStackAddress ( Address addr) const
inlineprivate

Definition at line 1834 of file frames.h.

Here is the caller graph for this function:

◆ IsValidState()

bool v8::internal::StackFrameIteratorForProfiler::IsValidState ( const StackFrame::State & frame) const
private

Definition at line 652 of file frames.cc.

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

◆ IsValidTop()

bool v8::internal::StackFrameIteratorForProfiler::IsValidTop ( ThreadLocalTop * top) const
private

Definition at line 613 of file frames.cc.

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

◆ top_frame_type()

StackFrame::Type v8::internal::StackFrameIteratorForProfiler::top_frame_type ( ) const
inline

Definition at line 1823 of file frames.h.

Member Data Documentation

◆ external_callback_scope_

ExternalCallbackScope* v8::internal::StackFrameIteratorForProfiler::external_callback_scope_
private

Definition at line 1857 of file frames.h.

◆ high_bound_

const Address v8::internal::StackFrameIteratorForProfiler::high_bound_
private

Definition at line 1855 of file frames.h.

◆ low_bound_

const Address v8::internal::StackFrameIteratorForProfiler::low_bound_
private

Definition at line 1854 of file frames.h.

◆ top_frame_type_

StackFrame::Type v8::internal::StackFrameIteratorForProfiler::top_frame_type_
private

Definition at line 1856 of file frames.h.

◆ top_link_register_

Address v8::internal::StackFrameIteratorForProfiler::top_link_register_
private

Definition at line 1858 of file frames.h.


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