OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #if V8_TARGET_ARCH_X64 | 5 #if V8_TARGET_ARCH_X64 |
6 | 6 |
7 #include "src/interface-descriptors.h" | 7 #include "src/interface-descriptors.h" |
8 | 8 |
9 namespace v8 { | 9 namespace v8 { |
10 namespace internal { | 10 namespace internal { |
(...skipping 268 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
279 Register registers[] = {rax}; | 279 Register registers[] = {rax}; |
280 data->InitializePlatformSpecific(arraysize(registers), registers); | 280 data->InitializePlatformSpecific(arraysize(registers), registers); |
281 } | 281 } |
282 | 282 |
283 void StringAddDescriptor::InitializePlatformSpecific( | 283 void StringAddDescriptor::InitializePlatformSpecific( |
284 CallInterfaceDescriptorData* data) { | 284 CallInterfaceDescriptorData* data) { |
285 Register registers[] = {rdx, rax}; | 285 Register registers[] = {rdx, rax}; |
286 data->InitializePlatformSpecific(arraysize(registers), registers); | 286 data->InitializePlatformSpecific(arraysize(registers), registers); |
287 } | 287 } |
288 | 288 |
289 | |
290 void KeyedDescriptor::InitializePlatformSpecific( | |
291 CallInterfaceDescriptorData* data) { | |
292 Register registers[] = { | |
293 rcx, // key | |
294 }; | |
295 data->InitializePlatformSpecific(arraysize(registers), registers); | |
296 } | |
297 | |
298 | |
299 void NamedDescriptor::InitializePlatformSpecific( | |
300 CallInterfaceDescriptorData* data) { | |
301 Register registers[] = { | |
302 rcx, // name | |
303 }; | |
304 data->InitializePlatformSpecific(arraysize(registers), registers); | |
305 } | |
306 | |
307 | |
308 void CallHandlerDescriptor::InitializePlatformSpecific( | |
309 CallInterfaceDescriptorData* data) { | |
310 Register registers[] = { | |
311 rdx, // receiver | |
312 }; | |
313 data->InitializePlatformSpecific(arraysize(registers), registers); | |
314 } | |
315 | |
316 | |
317 void ArgumentAdaptorDescriptor::InitializePlatformSpecific( | 289 void ArgumentAdaptorDescriptor::InitializePlatformSpecific( |
318 CallInterfaceDescriptorData* data) { | 290 CallInterfaceDescriptorData* data) { |
319 Register registers[] = { | 291 Register registers[] = { |
320 rdi, // JSFunction | 292 rdi, // JSFunction |
321 rdx, // the new target | 293 rdx, // the new target |
322 rax, // actual number of arguments | 294 rax, // actual number of arguments |
323 rbx, // expected number of arguments | 295 rbx, // expected number of arguments |
324 }; | 296 }; |
325 data->InitializePlatformSpecific(arraysize(registers), registers); | 297 data->InitializePlatformSpecific(arraysize(registers), registers); |
326 } | 298 } |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
403 Register registers[] = { | 375 Register registers[] = { |
404 rbx, // loaded new FP | 376 rbx, // loaded new FP |
405 }; | 377 }; |
406 data->InitializePlatformSpecific(arraysize(registers), registers); | 378 data->InitializePlatformSpecific(arraysize(registers), registers); |
407 } | 379 } |
408 | 380 |
409 } // namespace internal | 381 } // namespace internal |
410 } // namespace v8 | 382 } // namespace v8 |
411 | 383 |
412 #endif // V8_TARGET_ARCH_X64 | 384 #endif // V8_TARGET_ARCH_X64 |
OLD | NEW |