Index: src/interface-descriptors.cc |
diff --git a/src/interface-descriptors.cc b/src/interface-descriptors.cc |
index b66f67c1d13f267fc716e7b06fcd549b1e782e2f..8c9ae2858cc16ef099c1b5dd33125ea6c00c95f4 100644 |
--- a/src/interface-descriptors.cc |
+++ b/src/interface-descriptors.cc |
@@ -303,6 +303,26 @@ void ArgumentsAccessReadDescriptor::InitializePlatformSpecific( |
} |
+Type::FunctionType* |
+ArgumentsAccessNewDescriptor::BuildCallInterfaceDescriptorFunctionType( |
+ Isolate* isolate, int paramater_count) { |
+ Zone* zone = isolate->interface_descriptor_zone(); |
+ Type::FunctionType* function = |
+ Type::FunctionType::New(AnyTagged(zone), Type::Undefined(), 3, zone); |
+ 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) { |
data->InitializePlatformSpecific(0, nullptr); |