V8 Project
v8::internal::FastNewClosureStub Class Reference

#include <code-stubs.h>

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

Classes

class  FunctionKindBits
 
class  StrictModeBits
 

Public Member Functions

 FastNewClosureStub (Isolate *isolate, StrictMode strict_mode, FunctionKind kind)
 
StrictMode strict_mode () const
 
FunctionKind kind () const
 
bool is_arrow () const
 
bool is_generator () const
 
bool is_concise_method () const
 
- Public Member Functions inherited from v8::internal::HydrogenCodeStub
virtual Code::Kind GetCodeKind () const
 
virtual Handle< CodeGenerateCode ()=0
 
bool IsUninitialized () const
 
Handle< CodeGenerateLightweightMissCode (ExternalReference miss)
 
template<class StateType >
void TraceTransition (StateType from, StateType to)
 

Private Member Functions

 DEFINE_CALL_INTERFACE_DESCRIPTOR (FastNewClosure)
 
 DEFINE_HYDROGEN_CODE_STUB (FastNewClosure, 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 566 of file code-stubs.h.

Constructor & Destructor Documentation

◆ FastNewClosureStub()

v8::internal::FastNewClosureStub::FastNewClosureStub ( Isolate isolate,
StrictMode  strict_mode,
FunctionKind  kind 
)
inline

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

570  : HydrogenCodeStub(isolate) {
574  }
static U encode(T value)
Definition: utils.h:217
FunctionKind kind() const
Definition: code-stubs.h:580
StrictMode strict_mode() const
Definition: code-stubs.h:576
HydrogenCodeStub(Isolate *isolate, InitializationState state=INITIALIZED)
Definition: code-stubs.h:457
void set_sub_minor_key(uint32_t key)
Definition: code-stubs.h:463
#define DCHECK(condition)
Definition: logging.h:205
bool IsValidFunctionKind(FunctionKind kind)
Definition: globals.h:784

References DCHECK, v8::internal::BitFieldBase< T, shift, size, U >::encode(), v8::internal::IsValidFunctionKind(), kind(), v8::internal::HydrogenCodeStub::set_sub_minor_key(), and strict_mode().

+ Here is the call graph for this function:

Member Function Documentation

◆ DEFINE_CALL_INTERFACE_DESCRIPTOR()

v8::internal::FastNewClosureStub::DEFINE_CALL_INTERFACE_DESCRIPTOR ( FastNewClosure  )
private

◆ DEFINE_HYDROGEN_CODE_STUB()

v8::internal::FastNewClosureStub::DEFINE_HYDROGEN_CODE_STUB ( FastNewClosure  ,
HydrogenCodeStub   
)
private

◆ is_arrow()

bool v8::internal::FastNewClosureStub::is_arrow ( ) const
inline

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

583 { return IsArrowFunction(kind()); }
bool IsArrowFunction(FunctionKind kind)
Definition: globals.h:793

References v8::internal::IsArrowFunction(), and kind().

+ Here is the call graph for this function:

◆ is_concise_method()

bool v8::internal::FastNewClosureStub::is_concise_method ( ) const
inline

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

585 { return IsConciseMethod(kind()); }
bool IsConciseMethod(FunctionKind kind)
Definition: globals.h:805

References v8::internal::IsConciseMethod(), and kind().

+ Here is the call graph for this function:

◆ is_generator()

bool v8::internal::FastNewClosureStub::is_generator ( ) const
inline

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

584 { return IsGeneratorFunction(kind()); }
bool IsGeneratorFunction(FunctionKind kind)
Definition: globals.h:799

References v8::internal::IsGeneratorFunction(), and kind().

+ Here is the call graph for this function:

◆ kind()

FunctionKind v8::internal::FastNewClosureStub::kind ( ) const
inline

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

580  {
582  }
static T decode(U value)
Definition: utils.h:228
uint32_t sub_minor_key() const
Definition: code-stubs.h:467

References v8::internal::BitFieldBase< T, shift, size, U >::decode(), and v8::internal::HydrogenCodeStub::sub_minor_key().

Referenced by FastNewClosureStub(), is_arrow(), is_concise_method(), and is_generator().

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

◆ strict_mode()

StrictMode v8::internal::FastNewClosureStub::strict_mode ( ) const
inline

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

576  {
578  }

References v8::internal::BitFieldBase< T, shift, size, U >::decode(), and v8::internal::HydrogenCodeStub::sub_minor_key().

Referenced by FastNewClosureStub().

+ 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: