V8 Project
v8::internal::MegamorphicLoadStub Class Reference

#include <code-stubs.h>

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

Public Member Functions

 MegamorphicLoadStub (Isolate *isolate, const LoadICState &state)
 
virtual Code::Kind GetCodeKind () const OVERRIDE
 
virtual InlineCacheState GetICState () const FINAL OVERRIDE
 
virtual ExtraICState GetExtraICState () const FINAL OVERRIDE
 
 DEFINE_CALL_INTERFACE_DESCRIPTOR (Load)
 
 DEFINE_HYDROGEN_CODE_STUB (MegamorphicLoad, HydrogenCodeStub)
 
- Public Member Functions inherited from v8::internal::HydrogenCodeStub
virtual Handle< CodeGenerateCode ()=0
 
bool IsUninitialized () const
 
Handle< CodeGenerateLightweightMissCode (ExternalReference miss)
 
template<class StateType >
void TraceTransition (StateType from, StateType to)
 

Additional Inherited Members

- Public Types inherited from v8::internal::HydrogenCodeStub
enum  InitializationState { UNINITIALIZED , INITIALIZED }
 
- Static Public Member Functions inherited from v8::internal::HydrogenCodeStub
template<class SubClass >
static Handle< CodeGetUninitialized (Isolate *isolate)
 
- Protected Member Functions inherited from v8::internal::HydrogenCodeStub
 HydrogenCodeStub (Isolate *isolate, InitializationState state=INITIALIZED)
 
void set_sub_minor_key (uint32_t key)
 
uint32_t sub_minor_key () const
 
- Static Protected Attributes inherited from v8::internal::HydrogenCodeStub
static const int kSubMinorKeyBits = kStubMinorKeyBits - 1
 

Detailed Description

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

Constructor & Destructor Documentation

◆ MegamorphicLoadStub()

v8::internal::MegamorphicLoadStub::MegamorphicLoadStub ( Isolate isolate,
const LoadICState &  state 
)
inline

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

1827  : HydrogenCodeStub(isolate) {
1828  set_sub_minor_key(state.GetExtraICState());
1829  }
HydrogenCodeStub(Isolate *isolate, InitializationState state=INITIALIZED)
Definition: code-stubs.h:457
void set_sub_minor_key(uint32_t key)
Definition: code-stubs.h:463

References v8::internal::HydrogenCodeStub::set_sub_minor_key().

+ Here is the call graph for this function:

Member Function Documentation

◆ DEFINE_CALL_INTERFACE_DESCRIPTOR()

v8::internal::MegamorphicLoadStub::DEFINE_CALL_INTERFACE_DESCRIPTOR ( Load  )

◆ DEFINE_HYDROGEN_CODE_STUB()

v8::internal::MegamorphicLoadStub::DEFINE_HYDROGEN_CODE_STUB ( MegamorphicLoad  ,
HydrogenCodeStub   
)

◆ GetCodeKind()

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

Reimplemented from v8::internal::HydrogenCodeStub.

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

1831 { return Code::LOAD_IC; }

◆ GetExtraICState()

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

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

1837  {
1838  return static_cast<ExtraICState>(sub_minor_key());
1839  }
uint32_t sub_minor_key() const
Definition: code-stubs.h:467
int ExtraICState
Definition: objects.h:305

References v8::internal::HydrogenCodeStub::sub_minor_key().

+ Here is the call graph for this function:

◆ GetICState()

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

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

1833  {
1834  return MEGAMORPHIC;
1835  }

References v8::internal::MEGAMORPHIC.


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