Index: src/x64/interface-descriptors-x64.cc |
diff --git a/src/x64/interface-descriptors-x64.cc b/src/x64/interface-descriptors-x64.cc |
index 6e5b7f9e3615f69a2d2b296096de4f2b8f2af8d7..6ef9dc14b807f4a16db4583d2f438c9da17caa22 100644 |
--- a/src/x64/interface-descriptors-x64.cc |
+++ b/src/x64/interface-descriptors-x64.cc |
@@ -64,107 +64,100 @@ const Register GrowArrayElementsDescriptor::ObjectRegister() { return rax; } |
const Register GrowArrayElementsDescriptor::KeyRegister() { return rbx; } |
-void FastNewClosureDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void FastNewClosureDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rbx}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void FastNewContextDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void FastNewContextDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rdi}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void TypeofDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void TypeofDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rbx}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void ToNumberDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void ToNumberDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
// ToNumberStub invokes a function, and therefore needs a context. |
Register registers[] = {rsi, rax}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void NumberToStringDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void NumberToStringDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rax}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void FastCloneShallowArrayDescriptor::Initialize( |
+void FastCloneShallowArrayDescriptor::InitializePlatformSpecific( |
CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rax, rbx, rcx}; |
- Representation representations[] = { |
- Representation::Tagged(), Representation::Tagged(), Representation::Smi(), |
- Representation::Tagged()}; |
- data->Initialize(arraysize(registers), registers, representations); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void FastCloneShallowObjectDescriptor::Initialize( |
+void FastCloneShallowObjectDescriptor::InitializePlatformSpecific( |
CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rax, rbx, rcx, rdx}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void CreateAllocationSiteDescriptor::Initialize( |
+void CreateAllocationSiteDescriptor::InitializePlatformSpecific( |
CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rbx, rdx}; |
- Representation representations[] = {Representation::Tagged(), |
- Representation::Tagged(), |
- Representation::Smi()}; |
- data->Initialize(arraysize(registers), registers, representations); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void CreateWeakCellDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void CreateWeakCellDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rbx, rdx, rdi}; |
- Representation representations[] = { |
- Representation::Tagged(), Representation::Tagged(), Representation::Smi(), |
- Representation::Tagged()}; |
- data->Initialize(arraysize(registers), registers, representations); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void StoreArrayLiteralElementDescriptor::Initialize( |
+void StoreArrayLiteralElementDescriptor::InitializePlatformSpecific( |
CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rcx, rax}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void CallFunctionDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void CallFunctionDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rdi}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void CallFunctionWithFeedbackDescriptor::Initialize( |
+void CallFunctionWithFeedbackDescriptor::InitializePlatformSpecific( |
CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rdi, rdx}; |
- Representation representations[] = {Representation::Tagged(), |
- Representation::Tagged(), |
- Representation::Smi()}; |
- data->Initialize(arraysize(registers), registers, representations); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void CallFunctionWithFeedbackAndVectorDescriptor::Initialize( |
+void CallFunctionWithFeedbackAndVectorDescriptor::InitializePlatformSpecific( |
CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rdi, rdx, rbx}; |
- Representation representations[] = { |
- Representation::Tagged(), Representation::Tagged(), Representation::Smi(), |
- Representation::Tagged()}; |
- data->Initialize(arraysize(registers), registers, representations); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void CallConstructDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void CallConstructDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
// rax : number of arguments |
// rbx : feedback vector |
// rdx : (only if rbx is not the megamorphic symbol) slot in feedback |
@@ -173,170 +166,157 @@ void CallConstructDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
// TODO(turbofan): So far we don't gather type feedback and hence skip the |
// slot parameter, but ArrayConstructStub needs the vector to be undefined. |
Register registers[] = {rsi, rax, rdi, rbx}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void RegExpConstructResultDescriptor::Initialize( |
+void RegExpConstructResultDescriptor::InitializePlatformSpecific( |
CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rcx, rbx, rax}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void TransitionElementsKindDescriptor::Initialize( |
+void TransitionElementsKindDescriptor::InitializePlatformSpecific( |
CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rax, rbx}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void AllocateHeapNumberDescriptor::Initialize( |
+void AllocateHeapNumberDescriptor::InitializePlatformSpecific( |
CallInterfaceDescriptorData* data) { |
// register state |
// rsi -- context |
Register registers[] = {rsi}; |
- data->Initialize(arraysize(registers), registers, nullptr); |
+ data->InitializePlatformSpecific(arraysize(registers), registers, nullptr); |
} |
-void ArrayConstructorConstantArgCountDescriptor::Initialize( |
+void ArrayConstructorConstantArgCountDescriptor::InitializePlatformSpecific( |
CallInterfaceDescriptorData* data) { |
// register state |
// rax -- number of arguments |
// rdi -- function |
// rbx -- allocation site with elements kind |
Register registers[] = {rsi, rdi, rbx}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void ArrayConstructorDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void ArrayConstructorDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
// stack param count needs (constructor pointer, and single argument) |
Register registers[] = {rsi, rdi, rbx, rax}; |
- Representation representations[] = { |
- Representation::Tagged(), Representation::Tagged(), |
- Representation::Tagged(), Representation::Integer32()}; |
- data->Initialize(arraysize(registers), registers, representations); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void InternalArrayConstructorConstantArgCountDescriptor::Initialize( |
- CallInterfaceDescriptorData* data) { |
+void InternalArrayConstructorConstantArgCountDescriptor:: |
+ InitializePlatformSpecific(CallInterfaceDescriptorData* data) { |
// register state |
// rsi -- context |
// rax -- number of arguments |
// rdi -- constructor function |
Register registers[] = {rsi, rdi}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void InternalArrayConstructorDescriptor::Initialize( |
+void InternalArrayConstructorDescriptor::InitializePlatformSpecific( |
CallInterfaceDescriptorData* data) { |
// stack param count needs (constructor pointer, and single argument) |
Register registers[] = {rsi, rdi, rax}; |
- Representation representations[] = {Representation::Tagged(), |
- Representation::Tagged(), |
- Representation::Integer32()}; |
- data->Initialize(arraysize(registers), registers, representations); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void CompareDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void CompareDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rdx, rax}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void CompareNilDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void CompareNilDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rax}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void ToBooleanDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void ToBooleanDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rax}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void BinaryOpDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void BinaryOpDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rdx, rax}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void BinaryOpWithAllocationSiteDescriptor::Initialize( |
+void BinaryOpWithAllocationSiteDescriptor::InitializePlatformSpecific( |
CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rcx, rdx, rax}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void StringAddDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void StringAddDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = {rsi, rdx, rax}; |
- data->Initialize(arraysize(registers), registers, NULL); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void KeyedDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void KeyedDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = { |
rsi, // context |
rcx, // key |
}; |
- Representation representations[] = { |
- Representation::Tagged(), // context |
- Representation::Tagged(), // key |
- }; |
- data->Initialize(arraysize(registers), registers, representations); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void NamedDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void NamedDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = { |
rsi, // context |
rcx, // name |
}; |
- Representation representations[] = { |
- Representation::Tagged(), // context |
- Representation::Tagged(), // name |
- }; |
- data->Initialize(arraysize(registers), registers, representations); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void CallHandlerDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void CallHandlerDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = { |
rsi, // context |
rdx, // receiver |
}; |
- Representation representations[] = { |
- Representation::Tagged(), // context |
- Representation::Tagged(), // receiver |
- }; |
- data->Initialize(arraysize(registers), registers, representations); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void ArgumentAdaptorDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void ArgumentAdaptorDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = { |
rsi, // context |
rdi, // JSFunction |
rax, // actual number of arguments |
rbx, // expected number of arguments |
}; |
- Representation representations[] = { |
- Representation::Tagged(), // context |
- Representation::Tagged(), // JSFunction |
- Representation::Integer32(), // actual number of arguments |
- Representation::Integer32(), // expected number of arguments |
- }; |
- data->Initialize(arraysize(registers), registers, representations); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void ApiFunctionDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void ApiFunctionDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = { |
rsi, // context |
rdi, // callee |
@@ -345,19 +325,12 @@ void ApiFunctionDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
rdx, // api_function_address |
rax, // actual number of arguments |
}; |
- Representation representations[] = { |
- Representation::Tagged(), // context |
- Representation::Tagged(), // callee |
- Representation::Tagged(), // call_data |
- Representation::Tagged(), // holder |
- Representation::External(), // api_function_address |
- Representation::Integer32(), // actual number of arguments |
- }; |
- data->Initialize(arraysize(registers), registers, representations); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void ApiAccessorDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void ApiAccessorDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = { |
rsi, // context |
rdi, // callee |
@@ -365,29 +338,18 @@ void ApiAccessorDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
rcx, // holder |
rdx, // api_function_address |
}; |
- Representation representations[] = { |
- Representation::Tagged(), // context |
- Representation::Tagged(), // callee |
- Representation::Tagged(), // call_data |
- Representation::Tagged(), // holder |
- Representation::External(), // api_function_address |
- }; |
- data->Initialize(arraysize(registers), registers, representations); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void MathRoundVariantDescriptor::Initialize(CallInterfaceDescriptorData* data) { |
+void MathRoundVariantDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
Register registers[] = { |
rsi, // context |
rdi, // math rounding function |
rdx, // vector slot id |
}; |
- Representation representations[] = { |
- Representation::Tagged(), // |
- Representation::Tagged(), // |
- Representation::Tagged(), // |
- }; |
- data->Initialize(arraysize(registers), registers, representations); |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
} // namespace internal |
} // namespace v8 |