Index: src/x64/interface-descriptors-x64.cc |
diff --git a/src/x64/interface-descriptors-x64.cc b/src/x64/interface-descriptors-x64.cc |
index f724e5d48a112ebdf1e10f5be266087299de9e2e..333486ad8a4221329aecb92af9018a1ab16de40f 100644 |
--- a/src/x64/interface-descriptors-x64.cc |
+++ b/src/x64/interface-descriptors-x64.cc |
@@ -381,13 +381,27 @@ |
data->InitializePlatformSpecific(arraysize(registers), registers); |
} |
-void ApiCallbackDescriptorBase::InitializePlatformSpecific( |
+ |
+void ApiFunctionDescriptor::InitializePlatformSpecific( |
CallInterfaceDescriptorData* data) { |
Register registers[] = { |
rdi, // callee |
rbx, // call_data |
rcx, // holder |
rdx, // api_function_address |
+ rax, // actual number of arguments |
+ }; |
+ data->InitializePlatformSpecific(arraysize(registers), registers); |
+} |
+ |
+ |
+void ApiAccessorDescriptor::InitializePlatformSpecific( |
+ CallInterfaceDescriptorData* data) { |
+ Register registers[] = { |
+ rdi, // callee |
+ rbx, // call_data |
+ rcx, // holder |
+ rdx, // api_function_address |
}; |
data->InitializePlatformSpecific(arraysize(registers), registers); |
} |