V8 Project
v8::internal::VectorLoadStub Class Reference

#include <code-stubs.h>

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

Public Member Functions

 VectorLoadStub (Isolate *isolate, const LoadICState &state)
 
virtual Code::Kind GetCodeKind () const OVERRIDE
 
virtual InlineCacheState GetICState () const FINAL OVERRIDE
 
virtual ExtraICState GetExtraICState () const FINAL OVERRIDE
 
- 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)
 

Private Member Functions

LoadICState state () const
 
 DEFINE_CALL_INTERFACE_DESCRIPTOR (VectorLoadIC)
 
 DEFINE_HYDROGEN_CODE_STUB (VectorLoad, HydrogenCodeStub)
 

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 1846 of file code-stubs.h.

Constructor & Destructor Documentation

◆ VectorLoadStub()

v8::internal::VectorLoadStub::VectorLoadStub ( Isolate isolate,
const LoadICState &  state 
)
inlineexplicit

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

1849  : HydrogenCodeStub(isolate) {
1850  set_sub_minor_key(state.GetExtraICState());
1851  }
HydrogenCodeStub(Isolate *isolate, InitializationState state=INITIALIZED)
Definition: code-stubs.h:457
void set_sub_minor_key(uint32_t key)
Definition: code-stubs.h:463
LoadICState state() const
Definition: code-stubs.h:1864

References v8::internal::HydrogenCodeStub::set_sub_minor_key(), and state().

+ Here is the call graph for this function:

Member Function Documentation

◆ DEFINE_CALL_INTERFACE_DESCRIPTOR()

v8::internal::VectorLoadStub::DEFINE_CALL_INTERFACE_DESCRIPTOR ( VectorLoadIC  )
private

◆ DEFINE_HYDROGEN_CODE_STUB()

v8::internal::VectorLoadStub::DEFINE_HYDROGEN_CODE_STUB ( VectorLoad  ,
HydrogenCodeStub   
)
private

◆ GetCodeKind()

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

Reimplemented from v8::internal::HydrogenCodeStub.

Reimplemented in v8::internal::VectorKeyedLoadStub.

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

1853 { return Code::LOAD_IC; }

◆ GetExtraICState()

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

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

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

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

Referenced by state().

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

◆ GetICState()

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

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

1855  {
1856  return GENERIC;
1857  }

References v8::internal::GENERIC.

◆ state()

LoadICState v8::internal::VectorLoadStub::state ( ) const
inlineprivate

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

1864 { return LoadICState(GetExtraICState()); }
virtual ExtraICState GetExtraICState() const FINAL OVERRIDE
Definition: code-stubs.h:1859

References GetExtraICState().

Referenced by VectorLoadStub().

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

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