diff options
Diffstat (limited to 'deps/v8/src/arm/interface-descriptors-arm.cc')
-rw-r--r-- | deps/v8/src/arm/interface-descriptors-arm.cc | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/deps/v8/src/arm/interface-descriptors-arm.cc b/deps/v8/src/arm/interface-descriptors-arm.cc index 887a183182..c4140bdaf9 100644 --- a/deps/v8/src/arm/interface-descriptors-arm.cc +++ b/deps/v8/src/arm/interface-descriptors-arm.cc @@ -99,6 +99,14 @@ void CallForwardVarargsDescriptor::InitializePlatformSpecific( data->InitializePlatformSpecific(arraysize(registers), registers); } +void CallFunctionTemplateDescriptor::InitializePlatformSpecific( + CallInterfaceDescriptorData* data) { + // r1 : function template info + // r2 : number of arguments (on the stack, not including receiver) + Register registers[] = {r1, r2}; + data->InitializePlatformSpecific(arraysize(registers), registers); +} + void CallWithSpreadDescriptor::InitializePlatformSpecific( CallInterfaceDescriptorData* data) { // r0 : number of arguments (on the stack, not including receiver) @@ -203,9 +211,10 @@ void ArgumentsAdaptorDescriptor::InitializePlatformSpecific( void ApiCallbackDescriptor::InitializePlatformSpecific( CallInterfaceDescriptorData* data) { Register registers[] = { - JavaScriptFrame::context_register(), // kTargetContext - r1, // kApiFunctionAddress - r2, // kArgc + r1, // kApiFunctionAddress + r2, // kArgc + r3, // kCallData + r0, // kHolder }; data->InitializePlatformSpecific(arraysize(registers), registers); } |