OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #if V8_TARGET_ARCH_ARM64 | 7 #if V8_TARGET_ARCH_ARM64 |
8 | 8 |
9 #include "src/bootstrapper.h" | 9 #include "src/bootstrapper.h" |
10 #include "src/code-stubs.h" | 10 #include "src/code-stubs.h" |
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
95 // x2: length | 95 // x2: length |
96 // x1: index (of last match) | 96 // x1: index (of last match) |
97 // x0: string | 97 // x0: string |
98 Register registers[] = { x2, x1, x0 }; | 98 Register registers[] = { x2, x1, x0 }; |
99 descriptor->Initialize( | 99 descriptor->Initialize( |
100 ARRAY_SIZE(registers), registers, | 100 ARRAY_SIZE(registers), registers, |
101 Runtime::FunctionForId(Runtime::kHiddenRegExpConstructResult)->entry); | 101 Runtime::FunctionForId(Runtime::kHiddenRegExpConstructResult)->entry); |
102 } | 102 } |
103 | 103 |
104 | 104 |
105 void LoadFieldStub::InitializeInterfaceDescriptor( | |
106 CodeStubInterfaceDescriptor* descriptor) { | |
107 // x0: receiver | |
108 Register registers[] = { x0 }; | |
109 descriptor->Initialize(ARRAY_SIZE(registers), registers); | |
110 } | |
111 | |
112 | |
113 void KeyedLoadFieldStub::InitializeInterfaceDescriptor( | |
114 CodeStubInterfaceDescriptor* descriptor) { | |
115 // x1: receiver | |
116 Register registers[] = { x1 }; | |
117 descriptor->Initialize(ARRAY_SIZE(registers), registers); | |
118 } | |
119 | |
120 | |
121 void StringLengthStub::InitializeInterfaceDescriptor( | |
122 CodeStubInterfaceDescriptor* descriptor) { | |
123 Register registers[] = { x0, x2 }; | |
124 descriptor->Initialize(ARRAY_SIZE(registers), registers); | |
125 } | |
126 | |
127 | |
128 void KeyedStringLengthStub::InitializeInterfaceDescriptor( | |
129 CodeStubInterfaceDescriptor* descriptor) { | |
130 Register registers[] = { x1, x0 }; | |
131 descriptor->Initialize(ARRAY_SIZE(registers), registers); | |
132 } | |
133 | |
134 | |
135 void KeyedStoreFastElementStub::InitializeInterfaceDescriptor( | 105 void KeyedStoreFastElementStub::InitializeInterfaceDescriptor( |
136 CodeStubInterfaceDescriptor* descriptor) { | 106 CodeStubInterfaceDescriptor* descriptor) { |
137 // x2: receiver | 107 // x2: receiver |
138 // x1: key | 108 // x1: key |
139 // x0: value | 109 // x0: value |
140 Register registers[] = { x2, x1, x0 }; | 110 Register registers[] = { x2, x1, x0 }; |
141 descriptor->Initialize( | 111 descriptor->Initialize( |
142 ARRAY_SIZE(registers), registers, | 112 ARRAY_SIZE(registers), registers, |
143 FUNCTION_ADDR(KeyedStoreIC_MissFromStubFailure)); | 113 FUNCTION_ADDR(KeyedStoreIC_MissFromStubFailure)); |
144 } | 114 } |
(...skipping 5324 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5469 MemOperand(fp, 6 * kPointerSize), | 5439 MemOperand(fp, 6 * kPointerSize), |
5470 NULL); | 5440 NULL); |
5471 } | 5441 } |
5472 | 5442 |
5473 | 5443 |
5474 #undef __ | 5444 #undef __ |
5475 | 5445 |
5476 } } // namespace v8::internal | 5446 } } // namespace v8::internal |
5477 | 5447 |
5478 #endif // V8_TARGET_ARCH_ARM64 | 5448 #endif // V8_TARGET_ARCH_ARM64 |
OLD | NEW |