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 #include "src/arm64/interface-descriptors-arm64.h" | 5 #include "src/arm64/interface-descriptors-arm64.h" |
6 | 6 |
7 #if V8_TARGET_ARCH_ARM64 | 7 #if V8_TARGET_ARCH_ARM64 |
8 | 8 |
9 #include "src/interface-descriptors.h" | 9 #include "src/interface-descriptors.h" |
10 | 10 |
(...skipping 419 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
430 }; | 430 }; |
431 data->InitializePlatformSpecific(arraysize(registers), registers); | 431 data->InitializePlatformSpecific(arraysize(registers), registers); |
432 } | 432 } |
433 | 433 |
434 void InterpreterPushArgsAndConstructDescriptor::InitializePlatformSpecific( | 434 void InterpreterPushArgsAndConstructDescriptor::InitializePlatformSpecific( |
435 CallInterfaceDescriptorData* data) { | 435 CallInterfaceDescriptorData* data) { |
436 Register registers[] = { | 436 Register registers[] = { |
437 x0, // argument count (not including receiver) | 437 x0, // argument count (not including receiver) |
438 x3, // new target | 438 x3, // new target |
439 x1, // constructor to call | 439 x1, // constructor to call |
440 x2 // address of the first argument | 440 x2, // allocation site feedback if available, undefined otherwise |
| 441 x4 // address of the first argument |
441 }; | 442 }; |
442 data->InitializePlatformSpecific(arraysize(registers), registers); | 443 data->InitializePlatformSpecific(arraysize(registers), registers); |
443 } | 444 } |
444 | 445 |
445 void InterpreterCEntryDescriptor::InitializePlatformSpecific( | 446 void InterpreterCEntryDescriptor::InitializePlatformSpecific( |
446 CallInterfaceDescriptorData* data) { | 447 CallInterfaceDescriptorData* data) { |
447 Register registers[] = { | 448 Register registers[] = { |
448 x0, // argument count (argc) | 449 x0, // argument count (argc) |
449 x11, // address of first argument (argv) | 450 x11, // address of first argument (argv) |
450 x1 // the runtime function to call | 451 x1 // the runtime function to call |
451 }; | 452 }; |
452 data->InitializePlatformSpecific(arraysize(registers), registers); | 453 data->InitializePlatformSpecific(arraysize(registers), registers); |
453 } | 454 } |
454 | 455 |
455 void ResumeGeneratorDescriptor::InitializePlatformSpecific( | 456 void ResumeGeneratorDescriptor::InitializePlatformSpecific( |
456 CallInterfaceDescriptorData* data) { | 457 CallInterfaceDescriptorData* data) { |
457 Register registers[] = { | 458 Register registers[] = { |
458 x0, // the value to pass to the generator | 459 x0, // the value to pass to the generator |
459 x1, // the JSGeneratorObject to resume | 460 x1, // the JSGeneratorObject to resume |
460 x2 // the resume mode (tagged) | 461 x2 // the resume mode (tagged) |
461 }; | 462 }; |
462 data->InitializePlatformSpecific(arraysize(registers), registers); | 463 data->InitializePlatformSpecific(arraysize(registers), registers); |
463 } | 464 } |
464 | 465 |
465 } // namespace internal | 466 } // namespace internal |
466 } // namespace v8 | 467 } // namespace v8 |
467 | 468 |
468 #endif // V8_TARGET_ARCH_ARM64 | 469 #endif // V8_TARGET_ARCH_ARM64 |
OLD | NEW |