Index: src/interface-descriptors.cc |
diff --git a/src/interface-descriptors.cc b/src/interface-descriptors.cc |
index cc46a56d94a2155103aea7978c216c5b973e8166..844cc3fe950922f8298b19f4fcc98a8becf24570 100644 |
--- a/src/interface-descriptors.cc |
+++ b/src/interface-descriptors.cc |
@@ -339,6 +339,25 @@ |
data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
+FunctionType* |
+ArgumentsAccessNewDescriptor::BuildCallInterfaceDescriptorFunctionType( |
+ Isolate* isolate, int paramater_count) { |
+ Zone* zone = isolate->interface_descriptor_zone(); |
+ FunctionType* function = |
+ Type::Function(AnyTagged(zone), Type::Undefined(), 3, zone)->AsFunction(); |
+ function->InitParameter(0, AnyTagged(zone)); |
+ function->InitParameter(1, SmiType(zone)); |
+ function->InitParameter(2, ExternalPointer(zone)); |
+ return function; |
+} |
+ |
+ |
+void ArgumentsAccessNewDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
+ Register registers[] = {function(), parameter_count(), parameter_pointer()}; |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
+} |
+ |
void ContextOnlyDescriptor::InitializePlatformSpecific( |
CallInterfaceDescriptorData* data) { |