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 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
58 | 58 |
59 const Register ArgumentsAccessReadDescriptor::index() { return r1; } | 59 const Register ArgumentsAccessReadDescriptor::index() { return r1; } |
60 const Register ArgumentsAccessReadDescriptor::parameter_count() { return r0; } | 60 const Register ArgumentsAccessReadDescriptor::parameter_count() { return r0; } |
61 | 61 |
62 | 62 |
63 const Register ArgumentsAccessNewDescriptor::function() { return r1; } | 63 const Register ArgumentsAccessNewDescriptor::function() { return r1; } |
64 const Register ArgumentsAccessNewDescriptor::parameter_count() { return r2; } | 64 const Register ArgumentsAccessNewDescriptor::parameter_count() { return r2; } |
65 const Register ArgumentsAccessNewDescriptor::parameter_pointer() { return r3; } | 65 const Register ArgumentsAccessNewDescriptor::parameter_pointer() { return r3; } |
66 | 66 |
67 | 67 |
68 const Register RestParamAccessDescriptor::parameter_count() { return r2; } | |
69 const Register RestParamAccessDescriptor::parameter_pointer() { return r3; } | |
70 const Register RestParamAccessDescriptor::rest_parameter_index() { return r4; } | |
71 | |
72 | |
73 const Register ApiGetterDescriptor::function_address() { return r2; } | 68 const Register ApiGetterDescriptor::function_address() { return r2; } |
74 | 69 |
75 | 70 |
76 const Register MathPowTaggedDescriptor::exponent() { return r2; } | 71 const Register MathPowTaggedDescriptor::exponent() { return r2; } |
77 | 72 |
78 | 73 |
79 const Register MathPowIntegerDescriptor::exponent() { | 74 const Register MathPowIntegerDescriptor::exponent() { |
80 return MathPowTaggedDescriptor::exponent(); | 75 return MathPowTaggedDescriptor::exponent(); |
81 } | 76 } |
82 | 77 |
83 | 78 |
84 const Register GrowArrayElementsDescriptor::ObjectRegister() { return r0; } | 79 const Register GrowArrayElementsDescriptor::ObjectRegister() { return r0; } |
85 const Register GrowArrayElementsDescriptor::KeyRegister() { return r3; } | 80 const Register GrowArrayElementsDescriptor::KeyRegister() { return r3; } |
86 | 81 |
87 | 82 |
88 void FastNewClosureDescriptor::InitializePlatformSpecific( | 83 void FastNewClosureDescriptor::InitializePlatformSpecific( |
89 CallInterfaceDescriptorData* data) { | 84 CallInterfaceDescriptorData* data) { |
90 Register registers[] = {r2}; | 85 Register registers[] = {r2}; |
91 data->InitializePlatformSpecific(arraysize(registers), registers); | 86 data->InitializePlatformSpecific(arraysize(registers), registers); |
92 } | 87 } |
93 | 88 |
94 | 89 |
95 void FastNewContextDescriptor::InitializePlatformSpecific( | 90 void FastNewContextDescriptor::InitializePlatformSpecific( |
96 CallInterfaceDescriptorData* data) { | 91 CallInterfaceDescriptorData* data) { |
97 Register registers[] = {r1}; | 92 Register registers[] = {r1}; |
98 data->InitializePlatformSpecific(arraysize(registers), registers); | 93 data->InitializePlatformSpecific(arraysize(registers), registers); |
99 } | 94 } |
100 | 95 |
101 | 96 |
| 97 void FastNewRestParameterDescriptor::InitializePlatformSpecific( |
| 98 CallInterfaceDescriptorData* data) { |
| 99 Register registers[] = {r1}; |
| 100 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 101 } |
| 102 |
| 103 |
102 void ToNumberDescriptor::InitializePlatformSpecific( | 104 void ToNumberDescriptor::InitializePlatformSpecific( |
103 CallInterfaceDescriptorData* data) { | 105 CallInterfaceDescriptorData* data) { |
104 Register registers[] = {r0}; | 106 Register registers[] = {r0}; |
105 data->InitializePlatformSpecific(arraysize(registers), registers); | 107 data->InitializePlatformSpecific(arraysize(registers), registers); |
106 } | 108 } |
107 | 109 |
108 | 110 |
109 // static | 111 // static |
110 const Register ToLengthDescriptor::ReceiverRegister() { return r0; } | 112 const Register ToLengthDescriptor::ReceiverRegister() { return r0; } |
111 | 113 |
(...skipping 348 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
460 r2, // address of first argument (argv) | 462 r2, // address of first argument (argv) |
461 r1 // the runtime function to call | 463 r1 // the runtime function to call |
462 }; | 464 }; |
463 data->InitializePlatformSpecific(arraysize(registers), registers); | 465 data->InitializePlatformSpecific(arraysize(registers), registers); |
464 } | 466 } |
465 | 467 |
466 } // namespace internal | 468 } // namespace internal |
467 } // namespace v8 | 469 } // namespace v8 |
468 | 470 |
469 #endif // V8_TARGET_ARCH_ARM | 471 #endif // V8_TARGET_ARCH_ARM |
OLD | NEW |