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

#include <interface-descriptors.h>

Inheritance diagram for v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >:
Collaboration diagram for v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >:

Public Member Functions

 StaticCallInterfaceDescriptor (CallDescriptors::Key key)
 
- Public Member Functions inherited from v8::internal::CallInterfaceDescriptor
 CallInterfaceDescriptor ()
 
 ~CallInterfaceDescriptor ()=default
 
 CallInterfaceDescriptor (CallDescriptors::Key key)
 
Flags flags () const
 
CodeEntrypointTag tag () const
 
bool HasContextParameter () const
 
bool AllowVarArgs () const
 
bool CalleeSaveRegisters () const
 
int GetReturnCount () const
 
MachineType GetReturnType (int index) const
 
int GetParameterCount () const
 
int GetRegisterParameterCount () const
 
int GetStackParameterCount () const
 
Register GetRegisterParameter (int index) const
 
DoubleRegister GetDoubleRegisterParameter (int index) const
 
Register GetRegisterReturn (int index) const
 
DoubleRegister GetDoubleRegisterReturn (int index) const
 
MachineType GetParameterType (int index) const
 
RegList allocatable_registers () const
 
StackArgumentOrder GetStackArgumentOrder () const
 
const char * DebugName () const
 
bool operator== (const CallInterfaceDescriptor &other) const
 

Static Public Member Functions

static constexpr auto registers ()
 
static constexpr auto double_registers ()
 
static constexpr auto return_registers ()
 
static constexpr auto return_double_registers ()
 
static constexpr Flags flags ()
 
static constexpr bool AllowVarArgs ()
 
static constexpr bool HasContextParameter ()
 
static constexpr int GetReturnCount ()
 
static constexpr int GetParameterCount ()
 
static constexpr int GetRegisterParameterCount ()
 
static constexpr int GetStackParameterCount ()
 
static constexpr RegisterGetRegisterData ()
 
static constexpr Register GetRegisterParameter (int i)
 
static constexpr int GetStackParameterIndex (int i)
 
static constexpr MachineType GetParameterType (int i)
 
static constexpr DoubleRegister GetDoubleRegisterParameter (int i)
 
- Static Public Member Functions inherited from v8::internal::CallInterfaceDescriptor
static constexpr Register ContextRegister ()
 

Static Public Attributes

static constexpr int kReturnCount
 
static constexpr int kParameterCount
 
static constexpr bool kNoContext = false
 
static constexpr bool kAllowVarArgs = false
 
static constexpr bool kNoStackScan = false
 
static constexpr auto kStackArgumentOrder = StackArgumentOrder::kDefault
 
static constexpr int kMaxRegisterParams = kMaxBuiltinRegisterParams
 
static constexpr bool kRestrictAllocatableRegisters = false
 
static constexpr bool kCalleeSaveRegisters = false
 
static constexpr bool kCustomMachineTypes = false
 

Private Member Functions

void Initialize (CallInterfaceDescriptorData *data)
 

Static Private Member Functions

static void InitializeTypes (CallInterfaceDescriptorData *data)
 

Friends

class CallDescriptors
 

Additional Inherited Members

- Public Types inherited from v8::internal::CallInterfaceDescriptor
using Flags = CallInterfaceDescriptorData::Flags
 
- Protected Member Functions inherited from v8::internal::CallInterfaceDescriptor
const CallInterfaceDescriptorDatadata () const
 
bool CheckFloatingPointParameters (CallInterfaceDescriptorData *data)
 
bool IsValidFloatParameterRegister (Register reg)
 
- Static Protected Member Functions inherited from v8::internal::CallInterfaceDescriptor
static constexpr auto DefaultRegisterArray ()
 
static constexpr auto DefaultDoubleRegisterArray ()
 
static constexpr auto DefaultReturnRegisterArray ()
 
static constexpr auto DefaultReturnDoubleRegisterArray ()
 
static constexpr std::array< Register, kJSBuiltinRegisterParamsDefaultJSRegisterArray ()
 

Detailed Description

template<typename DerivedDescriptor>
class v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >

Definition at line 476 of file interface-descriptors.h.

Constructor & Destructor Documentation

◆ StaticCallInterfaceDescriptor()

template<typename DerivedDescriptor >
v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::StaticCallInterfaceDescriptor ( CallDescriptors::Key key)
inlineexplicit

Definition at line 555 of file interface-descriptors.h.

Member Function Documentation

◆ AllowVarArgs()

template<typename DerivedDescriptor >
static constexpr bool v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::AllowVarArgs ( )
inlinestaticconstexpr

Definition at line 535 of file interface-descriptors.h.

◆ double_registers()

template<typename DerivedDescriptor >
auto v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::double_registers ( )
inlinestaticconstexpr

Definition at line 61 of file interface-descriptors-inl.h.

Here is the call graph for this function:

◆ flags()

template<typename DerivedDescriptor >
static constexpr Flags v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::flags ( )
inlinestaticconstexpr

Definition at line 521 of file interface-descriptors.h.

◆ GetDoubleRegisterParameter()

template<typename DerivedDescriptor >
DoubleRegister v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::GetDoubleRegisterParameter ( int i)
inlinestaticconstexpr

Definition at line 274 of file interface-descriptors-inl.h.

Here is the call graph for this function:

◆ GetParameterCount()

template<typename DerivedDescriptor >
int v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::GetParameterCount ( )
inlinestaticconstexpr

Definition at line 158 of file interface-descriptors-inl.h.

Here is the caller graph for this function:

◆ GetParameterType()

template<typename DerivedDescriptor >
MachineType v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::GetParameterType ( int i)
inlinestaticconstexpr

Definition at line 254 of file interface-descriptors-inl.h.

Here is the call graph for this function:

◆ GetRegisterData()

template<typename DerivedDescriptor >
static constexpr Register * v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::GetRegisterData ( )
inlinestaticconstexpr

◆ GetRegisterParameter()

template<typename DerivedDescriptor >
Register v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::GetRegisterParameter ( int i)
inlinestaticconstexpr

Definition at line 238 of file interface-descriptors-inl.h.

Here is the call graph for this function:

◆ GetRegisterParameterCount()

template<typename DerivedDescriptor >
int v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::GetRegisterParameterCount ( )
inlinestaticconstexpr

Definition at line 207 of file interface-descriptors-inl.h.

Here is the call graph for this function:

◆ GetReturnCount()

template<typename DerivedDescriptor >
int v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::GetReturnCount ( )
inlinestaticconstexpr

Definition at line 146 of file interface-descriptors-inl.h.

◆ GetStackParameterCount()

template<typename DerivedDescriptor >
int v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::GetStackParameterCount ( )
inlinestaticconstexpr

Definition at line 230 of file interface-descriptors-inl.h.

Here is the caller graph for this function:

◆ GetStackParameterIndex()

template<typename DerivedDescriptor >
int v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::GetStackParameterIndex ( int i)
inlinestaticconstexpr

Definition at line 246 of file interface-descriptors-inl.h.

◆ HasContextParameter()

template<typename DerivedDescriptor >
static constexpr bool v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::HasContextParameter ( )
inlinestaticconstexpr

Definition at line 538 of file interface-descriptors.h.

Here is the caller graph for this function:

◆ Initialize()

template<typename DerivedDescriptor >
void v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::Initialize ( CallInterfaceDescriptorData * data)
inlineprivate

Definition at line 98 of file interface-descriptors-inl.h.

Here is the call graph for this function:

◆ InitializeTypes()

template<typename DerivedDescriptor >
static void v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::InitializeTypes ( CallInterfaceDescriptorData * data)
inlinestaticprivate

Definition at line 576 of file interface-descriptors.h.

◆ registers()

template<typename DerivedDescriptor >
auto v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::registers ( )
inlinestaticconstexpr

Definition at line 54 of file interface-descriptors-inl.h.

Here is the call graph for this function:

◆ return_double_registers()

template<typename DerivedDescriptor >
auto v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::return_double_registers ( )
inlinestaticconstexpr

Definition at line 75 of file interface-descriptors-inl.h.

Here is the call graph for this function:

◆ return_registers()

template<typename DerivedDescriptor >
auto v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::return_registers ( )
inlinestaticconstexpr

Definition at line 68 of file interface-descriptors-inl.h.

Here is the call graph for this function:

Friends And Related Symbol Documentation

◆ CallDescriptors

template<typename DerivedDescriptor >
friend class CallDescriptors
friend

Definition at line 569 of file interface-descriptors.h.

Member Data Documentation

◆ kAllowVarArgs

template<typename DerivedDescriptor >
bool v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::kAllowVarArgs = false
staticconstexpr

Definition at line 486 of file interface-descriptors.h.

◆ kCalleeSaveRegisters

template<typename DerivedDescriptor >
bool v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::kCalleeSaveRegisters = false
staticconstexpr

Definition at line 512 of file interface-descriptors.h.

◆ kCustomMachineTypes

template<typename DerivedDescriptor >
bool v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::kCustomMachineTypes = false
staticconstexpr

Definition at line 516 of file interface-descriptors.h.

◆ kMaxRegisterParams

template<typename DerivedDescriptor >
int v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::kMaxRegisterParams = kMaxBuiltinRegisterParams
staticconstexpr

Definition at line 504 of file interface-descriptors.h.

◆ kNoContext

template<typename DerivedDescriptor >
bool v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::kNoContext = false
staticconstexpr

Definition at line 485 of file interface-descriptors.h.

◆ kNoStackScan

template<typename DerivedDescriptor >
bool v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::kNoStackScan = false
staticconstexpr

Definition at line 487 of file interface-descriptors.h.

◆ kParameterCount

template<typename DerivedDescriptor >
int v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::kParameterCount
staticconstexpr

◆ kRestrictAllocatableRegisters

template<typename DerivedDescriptor >
bool v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::kRestrictAllocatableRegisters = false
staticconstexpr

Definition at line 509 of file interface-descriptors.h.

◆ kReturnCount

template<typename DerivedDescriptor >
int v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::kReturnCount
staticconstexpr

◆ kStackArgumentOrder

template<typename DerivedDescriptor >
auto v8::internal::StaticCallInterfaceDescriptor< DerivedDescriptor >::kStackArgumentOrder = StackArgumentOrder::kDefault
staticconstexpr

Definition at line 488 of file interface-descriptors.h.


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