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 428 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
439 }; | 439 }; |
440 data->InitializePlatformSpecific(arraysize(registers), registers); | 440 data->InitializePlatformSpecific(arraysize(registers), registers); |
441 } | 441 } |
442 | 442 |
443 void InterpreterPushArgsAndConstructDescriptor::InitializePlatformSpecific( | 443 void InterpreterPushArgsAndConstructDescriptor::InitializePlatformSpecific( |
444 CallInterfaceDescriptorData* data) { | 444 CallInterfaceDescriptorData* data) { |
445 Register registers[] = { | 445 Register registers[] = { |
446 x0, // argument count (not including receiver) | 446 x0, // argument count (not including receiver) |
447 x3, // new target | 447 x3, // new target |
448 x1, // constructor to call | 448 x1, // constructor to call |
449 x2 // address of the first argument | 449 x2, // allocation site feedback if available, undefined otherwise |
| 450 x4 // address of the first argument |
450 }; | 451 }; |
451 data->InitializePlatformSpecific(arraysize(registers), registers); | 452 data->InitializePlatformSpecific(arraysize(registers), registers); |
452 } | 453 } |
453 | 454 |
454 void InterpreterCEntryDescriptor::InitializePlatformSpecific( | 455 void InterpreterCEntryDescriptor::InitializePlatformSpecific( |
455 CallInterfaceDescriptorData* data) { | 456 CallInterfaceDescriptorData* data) { |
456 Register registers[] = { | 457 Register registers[] = { |
457 x0, // argument count (argc) | 458 x0, // argument count (argc) |
458 x11, // address of first argument (argv) | 459 x11, // address of first argument (argv) |
459 x1 // the runtime function to call | 460 x1 // the runtime function to call |
460 }; | 461 }; |
461 data->InitializePlatformSpecific(arraysize(registers), registers); | 462 data->InitializePlatformSpecific(arraysize(registers), registers); |
462 } | 463 } |
463 | 464 |
464 void ResumeGeneratorDescriptor::InitializePlatformSpecific( | 465 void ResumeGeneratorDescriptor::InitializePlatformSpecific( |
465 CallInterfaceDescriptorData* data) { | 466 CallInterfaceDescriptorData* data) { |
466 Register registers[] = { | 467 Register registers[] = { |
467 x0, // the value to pass to the generator | 468 x0, // the value to pass to the generator |
468 x1, // the JSGeneratorObject to resume | 469 x1, // the JSGeneratorObject to resume |
469 x2 // the resume mode (tagged) | 470 x2 // the resume mode (tagged) |
470 }; | 471 }; |
471 data->InitializePlatformSpecific(arraysize(registers), registers); | 472 data->InitializePlatformSpecific(arraysize(registers), registers); |
472 } | 473 } |
473 | 474 |
474 } // namespace internal | 475 } // namespace internal |
475 } // namespace v8 | 476 } // namespace v8 |
476 | 477 |
477 #endif // V8_TARGET_ARCH_ARM64 | 478 #endif // V8_TARGET_ARCH_ARM64 |
OLD | NEW |