V8 Project
v8::internal::CallICStub Class Reference

#include <code-stubs.h>

+ Inheritance diagram for v8::internal::CallICStub:
+ Collaboration diagram for v8::internal::CallICStub:

Public Member Functions

 CallICStub (Isolate *isolate, const CallICState &state)
 
virtual Code::Kind GetCodeKind () const OVERRIDE
 
virtual InlineCacheState GetICState () const OVERRIDE
 
virtual ExtraICState GetExtraICState () const FINAL OVERRIDE
 
- Public Member Functions inherited from v8::internal::PlatformCodeStub
virtual Handle< CodeGenerateCode () OVERRIDE
 

Static Public Member Functions

static int ExtractArgcFromMinorKey (int minor_key)
 

Protected Member Functions

bool CallAsMethod () const
 
int arg_count () const
 
CallICState state () const
 
void GenerateMiss (MacroAssembler *masm)
 
- Protected Member Functions inherited from v8::internal::PlatformCodeStub
 PlatformCodeStub (Isolate *isolate)
 
virtual void Generate (MacroAssembler *masm)=0
 
 DEFINE_CODE_STUB_BASE (PlatformCodeStub, CodeStub)
 

Private Member Functions

virtual void PrintState (OStream &os) const OVERRIDE
 
 DEFINE_CALL_INTERFACE_DESCRIPTOR (CallFunctionWithFeedback)
 
 DEFINE_PLATFORM_CODE_STUB (CallIC, PlatformCodeStub)
 

Detailed Description

Definition at line 790 of file code-stubs.h.

Constructor & Destructor Documentation

◆ CallICStub()

v8::internal::CallICStub::CallICStub ( Isolate isolate,
const CallICState &  state 
)
inline

Definition at line 792 of file code-stubs.h.

793  : PlatformCodeStub(isolate) {
794  minor_key_ = state.GetExtraICState();
795  }
CallICState state() const
Definition: code-stubs.h:817
PlatformCodeStub(Isolate *isolate)
Definition: code-stubs.h:341

References state().

+ Here is the call graph for this function:

Member Function Documentation

◆ arg_count()

int v8::internal::CallICStub::arg_count ( ) const
inlineprotected

Definition at line 815 of file code-stubs.h.

815 { return state().arg_count(); }

References state().

+ Here is the call graph for this function:

◆ CallAsMethod()

bool v8::internal::CallICStub::CallAsMethod ( ) const
inlineprotected

Definition at line 811 of file code-stubs.h.

811  {
812  return state().call_type() == CallICState::METHOD;
813  }

References state().

+ Here is the call graph for this function:

◆ DEFINE_CALL_INTERFACE_DESCRIPTOR()

v8::internal::CallICStub::DEFINE_CALL_INTERFACE_DESCRIPTOR ( CallFunctionWithFeedback  )
private

◆ DEFINE_PLATFORM_CODE_STUB()

v8::internal::CallICStub::DEFINE_PLATFORM_CODE_STUB ( CallIC  ,
PlatformCodeStub   
)
private

◆ ExtractArgcFromMinorKey()

static int v8::internal::CallICStub::ExtractArgcFromMinorKey ( int  minor_key)
inlinestatic

Definition at line 797 of file code-stubs.h.

797  {
798  CallICState state(static_cast<ExtraICState>(minor_key));
799  return state.arg_count();
800  }
int ExtraICState
Definition: objects.h:305

References state().

Referenced by v8::internal::Debug::PrepareStep().

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

◆ GenerateMiss()

void v8::internal::CallICStub::GenerateMiss ( MacroAssembler masm)
protected

◆ GetCodeKind()

virtual Code::Kind v8::internal::CallICStub::GetCodeKind ( ) const
inlinevirtual

Reimplemented from v8::internal::PlatformCodeStub.

Definition at line 802 of file code-stubs.h.

802 { return Code::CALL_IC; }

◆ GetExtraICState()

virtual ExtraICState v8::internal::CallICStub::GetExtraICState ( ) const
inlinevirtual

Definition at line 806 of file code-stubs.h.

806  {
807  return static_cast<ExtraICState>(minor_key_);
808  }

◆ GetICState()

virtual InlineCacheState v8::internal::CallICStub::GetICState ( ) const
inlinevirtual

Reimplemented in v8::internal::CallIC_ArrayStub.

Definition at line 804 of file code-stubs.h.

804 { return DEFAULT; }

References v8::internal::DEFAULT.

◆ PrintState()

void v8::internal::CallICStub::PrintState ( OStream os) const
privatevirtual

Reimplemented in v8::internal::CallIC_ArrayStub.

Definition at line 547 of file code-stubs.cc.

547  { // NOLINT
548  os << state();
549 }

References state().

+ Here is the call graph for this function:

◆ state()

CallICState v8::internal::CallICStub::state ( ) const
inlineprotected

Definition at line 817 of file code-stubs.h.

817  {
818  return CallICState(static_cast<ExtraICState>(minor_key_));
819  }

Referenced by arg_count(), CallAsMethod(), CallICStub(), ExtractArgcFromMinorKey(), PrintState(), and v8::internal::CallIC_ArrayStub::PrintState().

+ Here is the caller graph for this function:

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