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 278 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
289 void ArraySingleArgumentConstructorDescriptor::InitializePlatformSpecific( | 289 void ArraySingleArgumentConstructorDescriptor::InitializePlatformSpecific( |
290 CallInterfaceDescriptorData* data) { | 290 CallInterfaceDescriptorData* data) { |
291 // register state | 291 // register state |
292 // x0: number of arguments | 292 // x0: number of arguments |
293 // x1: function | 293 // x1: function |
294 // x2: allocation site with elements kind | 294 // x2: allocation site with elements kind |
295 Register registers[] = {x1, x2, x0}; | 295 Register registers[] = {x1, x2, x0}; |
296 data->InitializePlatformSpecific(arraysize(registers), registers, NULL); | 296 data->InitializePlatformSpecific(arraysize(registers), registers, NULL); |
297 } | 297 } |
298 | 298 |
299 void ArrayConstructorDescriptor::InitializePlatformSpecific( | 299 void ArrayNArgumentsConstructorDescriptor::InitializePlatformSpecific( |
300 CallInterfaceDescriptorData* data) { | 300 CallInterfaceDescriptorData* data) { |
301 // stack param count needs (constructor pointer, and single argument) | 301 // stack param count needs (constructor pointer, and single argument) |
302 Register registers[] = {x1, x2, x0}; | 302 Register registers[] = {x1, x2, x0}; |
303 data->InitializePlatformSpecific(arraysize(registers), registers); | 303 data->InitializePlatformSpecific(arraysize(registers), registers); |
304 } | 304 } |
305 | 305 |
306 | |
307 void InternalArrayConstructorDescriptor::InitializePlatformSpecific( | |
308 CallInterfaceDescriptorData* data) { | |
309 // stack param count needs (constructor pointer, and single argument) | |
310 Register registers[] = {x1, x0}; | |
311 data->InitializePlatformSpecific(arraysize(registers), registers); | |
312 } | |
313 | |
314 void VarArgFunctionDescriptor::InitializePlatformSpecific( | 306 void VarArgFunctionDescriptor::InitializePlatformSpecific( |
315 CallInterfaceDescriptorData* data) { | 307 CallInterfaceDescriptorData* data) { |
316 // stack param count needs (arg count) | 308 // stack param count needs (arg count) |
317 Register registers[] = {x0}; | 309 Register registers[] = {x0}; |
318 data->InitializePlatformSpecific(arraysize(registers), registers); | 310 data->InitializePlatformSpecific(arraysize(registers), registers); |
319 } | 311 } |
320 | 312 |
321 void CompareDescriptor::InitializePlatformSpecific( | 313 void CompareDescriptor::InitializePlatformSpecific( |
322 CallInterfaceDescriptorData* data) { | 314 CallInterfaceDescriptorData* data) { |
323 // x1: left operand | 315 // x1: left operand |
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
475 x1, // the JSGeneratorObject to resume | 467 x1, // the JSGeneratorObject to resume |
476 x2 // the resume mode (tagged) | 468 x2 // the resume mode (tagged) |
477 }; | 469 }; |
478 data->InitializePlatformSpecific(arraysize(registers), registers); | 470 data->InitializePlatformSpecific(arraysize(registers), registers); |
479 } | 471 } |
480 | 472 |
481 } // namespace internal | 473 } // namespace internal |
482 } // namespace v8 | 474 } // namespace v8 |
483 | 475 |
484 #endif // V8_TARGET_ARCH_ARM64 | 476 #endif // V8_TARGET_ARCH_ARM64 |
OLD | NEW |