5#ifndef V8_CODEGEN_IA32_INTERFACE_DESCRIPTORS_IA32_INL_H_
6#define V8_CODEGEN_IA32_INTERFACE_DESCRIPTORS_IA32_INL_H_
41template <
typename DerivedDescriptor>
42void StaticCallInterfaceDescriptor<DerivedDescriptor>::
43 VerifyArgumentRegisterCount(CallInterfaceDescriptorData* data,
44 int nof_expected_args) {
45 RegList allocatable_regs = data->allocatable_registers();
46 if (nof_expected_args >= 1)
DCHECK(allocatable_regs.has(esi));
47 if (nof_expected_args >= 2)
DCHECK(allocatable_regs.has(edi));
58constexpr Register LoadDescriptor::ReceiverRegister() {
return edx; }
65constexpr Register LoadWithVectorDescriptor::VectorRegister() {
return no_reg; }
68constexpr Register KeyedLoadBaselineDescriptor::ReceiverRegister() {
79constexpr Register KeyedLoadWithVectorDescriptor::VectorRegister() {
84constexpr Register EnumeratedKeyedLoadBaselineDescriptor::EnumIndexRegister() {
99constexpr Register KeyedHasICBaselineDescriptor::ReceiverRegister() {
108constexpr Register KeyedHasICWithVectorDescriptor::VectorRegister() {
114LoadWithReceiverAndVectorDescriptor::LookupStartObjectRegister() {
119constexpr Register StoreDescriptor::ReceiverRegister() {
return edx; }
128constexpr Register StoreWithVectorDescriptor::VectorRegister() {
133constexpr Register DefineKeyedOwnDescriptor::FlagsRegister() {
return no_reg; }
136constexpr Register StoreTransitionDescriptor::MapRegister() {
return edi; }
144constexpr Register GrowArrayElementsDescriptor::ObjectRegister() {
return eax; }
149constexpr Register BaselineLeaveFrameDescriptor::ParamsSizeRegister() {
307CallApiCallbackOptimizedDescriptor::ApiFunctionAddressRegister() {
323CallApiCallbackGenericDescriptor::ActualArgumentsCountRegister() {
static constexpr auto registers()
static constexpr Register HolderRegister()
static constexpr Register CallbackRegister()
static constexpr Register WeightRegister()
static constexpr auto registers()
static constexpr Register FunctionTemplateInfoRegister()
static DEFINE_PARAMETERS_VARARGS(kActualArgumentsCount, kTopmostScriptHavingContext, kFunctionTemplateInfo) DEFINE_PARAMETER_TYPES(MachineType constexpr Register TopmostScriptHavingContextRegister()
static constexpr Register FunctionTemplateInfoRegister()
static DEFINE_PARAMETERS_VARARGS(kApiFunctionAddress, kActualArgumentsCount, kFunctionTemplateInfo) DEFINE_PARAMETER_TYPES(MachineType constexpr Register ActualArgumentsCountRegister()
static constexpr auto DefaultReturnDoubleRegisterArray()
static constexpr auto DefaultDoubleRegisterArray()
static constexpr auto DefaultRegisterArray()
static constexpr auto DefaultReturnRegisterArray()
static constexpr auto registers()
static constexpr auto registers()
static constexpr auto registers()
static constexpr auto registers()
static constexpr Register CacheTypeRegister()
static constexpr Register SlotRegister()
static constexpr Register KeyRegister()
static constexpr Register NameRegister()
static constexpr Register SlotRegister()
static constexpr Register SlotRegister()
static constexpr Register NameRegister()
static constexpr Register SlotRegister()
static constexpr Register NameRegister()
static constexpr auto registers()
static constexpr Register NameRegister()
static constexpr Register SlotRegister()
static constexpr Register ValueRegister()
static constexpr Register ArgumentRegister()
static constexpr auto registers()
static constexpr auto registers()
RegListBase< RegisterT > registers
constexpr Register no_reg
constexpr EmptyDoubleRegisterArray DoubleRegisterArray()
RegListBase< Register > RegList
constexpr DwVfpRegister no_dreg
constexpr EmptyRegisterArray RegisterArray()
constexpr Register kInterpreterAccumulatorRegister
constexpr DoubleRegister kFPReturnRegister0
constexpr Register kReturnRegister1
constexpr Register kReturnRegister0
constexpr Register kInterpreterDispatchTableRegister
constexpr Register kReturnRegister2
constexpr int kMaxBuiltinRegisterParams
constexpr Register kInterpreterBytecodeOffsetRegister
constexpr Register kInterpreterBytecodeArrayRegister
#define DCHECK(condition)