| 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 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 58 | 58 |
| 59 const Register ArgumentsAccessReadDescriptor::index() { return x1; } | 59 const Register ArgumentsAccessReadDescriptor::index() { return x1; } |
| 60 const Register ArgumentsAccessReadDescriptor::parameter_count() { return x0; } | 60 const Register ArgumentsAccessReadDescriptor::parameter_count() { return x0; } |
| 61 | 61 |
| 62 | 62 |
| 63 const Register ArgumentsAccessNewDescriptor::function() { return x1; } | 63 const Register ArgumentsAccessNewDescriptor::function() { return x1; } |
| 64 const Register ArgumentsAccessNewDescriptor::parameter_count() { return x2; } | 64 const Register ArgumentsAccessNewDescriptor::parameter_count() { return x2; } |
| 65 const Register ArgumentsAccessNewDescriptor::parameter_pointer() { return x3; } | 65 const Register ArgumentsAccessNewDescriptor::parameter_pointer() { return x3; } |
| 66 | 66 |
| 67 | 67 |
| 68 const Register RestParamAccessDescriptor::parameter_count() { return x2; } | |
| 69 const Register RestParamAccessDescriptor::parameter_pointer() { return x3; } | |
| 70 const Register RestParamAccessDescriptor::rest_parameter_index() { return x4; } | |
| 71 | |
| 72 | |
| 73 const Register ApiGetterDescriptor::function_address() { return x2; } | 68 const Register ApiGetterDescriptor::function_address() { return x2; } |
| 74 | 69 |
| 75 | 70 |
| 76 const Register MathPowTaggedDescriptor::exponent() { return x11; } | 71 const Register MathPowTaggedDescriptor::exponent() { return x11; } |
| 77 | 72 |
| 78 | 73 |
| 79 const Register MathPowIntegerDescriptor::exponent() { return x12; } | 74 const Register MathPowIntegerDescriptor::exponent() { return x12; } |
| 80 | 75 |
| 81 | 76 |
| 82 const Register GrowArrayElementsDescriptor::ObjectRegister() { return x0; } | 77 const Register GrowArrayElementsDescriptor::ObjectRegister() { return x0; } |
| 83 const Register GrowArrayElementsDescriptor::KeyRegister() { return x3; } | 78 const Register GrowArrayElementsDescriptor::KeyRegister() { return x3; } |
| 84 | 79 |
| 85 | 80 |
| 86 void FastNewClosureDescriptor::InitializePlatformSpecific( | 81 void FastNewClosureDescriptor::InitializePlatformSpecific( |
| 87 CallInterfaceDescriptorData* data) { | 82 CallInterfaceDescriptorData* data) { |
| 88 // x2: function info | 83 // x2: function info |
| 89 Register registers[] = {x2}; | 84 Register registers[] = {x2}; |
| 90 data->InitializePlatformSpecific(arraysize(registers), registers); | 85 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 91 } | 86 } |
| 92 | 87 |
| 93 | 88 |
| 94 void FastNewContextDescriptor::InitializePlatformSpecific( | 89 void FastNewContextDescriptor::InitializePlatformSpecific( |
| 95 CallInterfaceDescriptorData* data) { | 90 CallInterfaceDescriptorData* data) { |
| 96 // x1: function | 91 // x1: function |
| 97 Register registers[] = {x1}; | 92 Register registers[] = {x1}; |
| 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 // x1: function |
| 100 Register registers[] = {x1}; |
| 101 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 102 } |
| 103 |
| 104 |
| 102 void ToNumberDescriptor::InitializePlatformSpecific( | 105 void ToNumberDescriptor::InitializePlatformSpecific( |
| 103 CallInterfaceDescriptorData* data) { | 106 CallInterfaceDescriptorData* data) { |
| 104 // x0: value | 107 // x0: value |
| 105 Register registers[] = {x0}; | 108 Register registers[] = {x0}; |
| 106 data->InitializePlatformSpecific(arraysize(registers), registers); | 109 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 107 } | 110 } |
| 108 | 111 |
| 109 | 112 |
| 110 // static | 113 // static |
| 111 const Register ToLengthDescriptor::ReceiverRegister() { return x0; } | 114 const Register ToLengthDescriptor::ReceiverRegister() { return x0; } |
| (...skipping 382 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 494 x1 // the runtime function to call | 497 x1 // the runtime function to call |
| 495 }; | 498 }; |
| 496 data->InitializePlatformSpecific(arraysize(registers), registers); | 499 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 497 } | 500 } |
| 498 | 501 |
| 499 | 502 |
| 500 } // namespace internal | 503 } // namespace internal |
| 501 } // namespace v8 | 504 } // namespace v8 |
| 502 | 505 |
| 503 #endif // V8_TARGET_ARCH_ARM64 | 506 #endif // V8_TARGET_ARCH_ARM64 |
| OLD | NEW |