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/arm/interface-descriptors-arm.h" | 5 #include "src/arm/interface-descriptors-arm.h" |
6 | 6 |
7 #if V8_TARGET_ARCH_ARM | 7 #if V8_TARGET_ARCH_ARM |
8 | 8 |
9 #include "src/interface-descriptors.h" | 9 #include "src/interface-descriptors.h" |
10 | 10 |
(...skipping 386 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
397 }; | 397 }; |
398 data->InitializePlatformSpecific(arraysize(registers), registers); | 398 data->InitializePlatformSpecific(arraysize(registers), registers); |
399 } | 399 } |
400 | 400 |
401 void InterpreterPushArgsAndConstructDescriptor::InitializePlatformSpecific( | 401 void InterpreterPushArgsAndConstructDescriptor::InitializePlatformSpecific( |
402 CallInterfaceDescriptorData* data) { | 402 CallInterfaceDescriptorData* data) { |
403 Register registers[] = { | 403 Register registers[] = { |
404 r0, // argument count (not including receiver) | 404 r0, // argument count (not including receiver) |
405 r3, // new target | 405 r3, // new target |
406 r1, // constructor to call | 406 r1, // constructor to call |
407 r2 // address of the first argument | 407 r2, // allocation site feedback if available, undefined otherwise |
| 408 r4 // address of the first argument |
408 }; | 409 }; |
409 data->InitializePlatformSpecific(arraysize(registers), registers); | 410 data->InitializePlatformSpecific(arraysize(registers), registers); |
410 } | 411 } |
411 | 412 |
412 void InterpreterCEntryDescriptor::InitializePlatformSpecific( | 413 void InterpreterCEntryDescriptor::InitializePlatformSpecific( |
413 CallInterfaceDescriptorData* data) { | 414 CallInterfaceDescriptorData* data) { |
414 Register registers[] = { | 415 Register registers[] = { |
415 r0, // argument count (argc) | 416 r0, // argument count (argc) |
416 r2, // address of first argument (argv) | 417 r2, // address of first argument (argv) |
417 r1 // the runtime function to call | 418 r1 // the runtime function to call |
418 }; | 419 }; |
419 data->InitializePlatformSpecific(arraysize(registers), registers); | 420 data->InitializePlatformSpecific(arraysize(registers), registers); |
420 } | 421 } |
421 | 422 |
422 void ResumeGeneratorDescriptor::InitializePlatformSpecific( | 423 void ResumeGeneratorDescriptor::InitializePlatformSpecific( |
423 CallInterfaceDescriptorData* data) { | 424 CallInterfaceDescriptorData* data) { |
424 Register registers[] = { | 425 Register registers[] = { |
425 r0, // the value to pass to the generator | 426 r0, // the value to pass to the generator |
426 r1, // the JSGeneratorObject to resume | 427 r1, // the JSGeneratorObject to resume |
427 r2 // the resume mode (tagged) | 428 r2 // the resume mode (tagged) |
428 }; | 429 }; |
429 data->InitializePlatformSpecific(arraysize(registers), registers); | 430 data->InitializePlatformSpecific(arraysize(registers), registers); |
430 } | 431 } |
431 | 432 |
432 } // namespace internal | 433 } // namespace internal |
433 } // namespace v8 | 434 } // namespace v8 |
434 | 435 |
435 #endif // V8_TARGET_ARCH_ARM | 436 #endif // V8_TARGET_ARCH_ARM |
OLD | NEW |