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 #if V8_TARGET_ARCH_MIPS | 5 #if V8_TARGET_ARCH_MIPS |
6 | 6 |
7 #include "src/interface-descriptors.h" | 7 #include "src/interface-descriptors.h" |
8 | 8 |
9 namespace v8 { | 9 namespace v8 { |
10 namespace internal { | 10 namespace internal { |
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
170 | 170 |
171 | 171 |
172 void CallTrampolineDescriptor::InitializePlatformSpecific( | 172 void CallTrampolineDescriptor::InitializePlatformSpecific( |
173 CallInterfaceDescriptorData* data) { | 173 CallInterfaceDescriptorData* data) { |
174 // a1: target | 174 // a1: target |
175 // a0: number of arguments | 175 // a0: number of arguments |
176 Register registers[] = {a1, a0}; | 176 Register registers[] = {a1, a0}; |
177 data->InitializePlatformSpecific(arraysize(registers), registers); | 177 data->InitializePlatformSpecific(arraysize(registers), registers); |
178 } | 178 } |
179 | 179 |
| 180 void CallForwardVarargsDescriptor::InitializePlatformSpecific( |
| 181 CallInterfaceDescriptorData* data) { |
| 182 // a1: the target to call |
| 183 // a2: start index (to support rest parameters) |
| 184 Register registers[] = {a1, a2}; |
| 185 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 186 } |
180 | 187 |
181 void ConstructStubDescriptor::InitializePlatformSpecific( | 188 void ConstructStubDescriptor::InitializePlatformSpecific( |
182 CallInterfaceDescriptorData* data) { | 189 CallInterfaceDescriptorData* data) { |
183 // a1: target | 190 // a1: target |
184 // a3: new target | 191 // a3: new target |
185 // a0: number of arguments | 192 // a0: number of arguments |
186 // a2: allocation site or undefined | 193 // a2: allocation site or undefined |
187 Register registers[] = {a1, a3, a0, a2}; | 194 Register registers[] = {a1, a3, a0, a2}; |
188 data->InitializePlatformSpecific(arraysize(registers), registers); | 195 data->InitializePlatformSpecific(arraysize(registers), registers); |
189 } | 196 } |
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
405 a1, // the JSGeneratorObject to resume | 412 a1, // the JSGeneratorObject to resume |
406 a2 // the resume mode (tagged) | 413 a2 // the resume mode (tagged) |
407 }; | 414 }; |
408 data->InitializePlatformSpecific(arraysize(registers), registers); | 415 data->InitializePlatformSpecific(arraysize(registers), registers); |
409 } | 416 } |
410 | 417 |
411 } // namespace internal | 418 } // namespace internal |
412 } // namespace v8 | 419 } // namespace v8 |
413 | 420 |
414 #endif // V8_TARGET_ARCH_MIPS | 421 #endif // V8_TARGET_ARCH_MIPS |
OLD | NEW |