| 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 297 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 308 } | 308 } |
| 309 | 309 |
| 310 void StringAddDescriptor::InitializePlatformSpecific( | 310 void StringAddDescriptor::InitializePlatformSpecific( |
| 311 CallInterfaceDescriptorData* data) { | 311 CallInterfaceDescriptorData* data) { |
| 312 // x1: left operand | 312 // x1: left operand |
| 313 // x0: right operand | 313 // x0: right operand |
| 314 Register registers[] = {x1, x0}; | 314 Register registers[] = {x1, x0}; |
| 315 data->InitializePlatformSpecific(arraysize(registers), registers); | 315 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 316 } | 316 } |
| 317 | 317 |
| 318 | |
| 319 void KeyedDescriptor::InitializePlatformSpecific( | |
| 320 CallInterfaceDescriptorData* data) { | |
| 321 static PlatformInterfaceDescriptor noInlineDescriptor = | |
| 322 PlatformInterfaceDescriptor(NEVER_INLINE_TARGET_ADDRESS); | |
| 323 | |
| 324 Register registers[] = { | |
| 325 x2, // key | |
| 326 }; | |
| 327 data->InitializePlatformSpecific(arraysize(registers), registers, | |
| 328 &noInlineDescriptor); | |
| 329 } | |
| 330 | |
| 331 | |
| 332 void NamedDescriptor::InitializePlatformSpecific( | |
| 333 CallInterfaceDescriptorData* data) { | |
| 334 static PlatformInterfaceDescriptor noInlineDescriptor = | |
| 335 PlatformInterfaceDescriptor(NEVER_INLINE_TARGET_ADDRESS); | |
| 336 | |
| 337 Register registers[] = { | |
| 338 x2, // name | |
| 339 }; | |
| 340 data->InitializePlatformSpecific(arraysize(registers), registers, | |
| 341 &noInlineDescriptor); | |
| 342 } | |
| 343 | |
| 344 | |
| 345 void CallHandlerDescriptor::InitializePlatformSpecific( | |
| 346 CallInterfaceDescriptorData* data) { | |
| 347 static PlatformInterfaceDescriptor default_descriptor = | |
| 348 PlatformInterfaceDescriptor(CAN_INLINE_TARGET_ADDRESS); | |
| 349 | |
| 350 Register registers[] = { | |
| 351 x0, // receiver | |
| 352 }; | |
| 353 data->InitializePlatformSpecific(arraysize(registers), registers, | |
| 354 &default_descriptor); | |
| 355 } | |
| 356 | |
| 357 | |
| 358 void ArgumentAdaptorDescriptor::InitializePlatformSpecific( | 318 void ArgumentAdaptorDescriptor::InitializePlatformSpecific( |
| 359 CallInterfaceDescriptorData* data) { | 319 CallInterfaceDescriptorData* data) { |
| 360 static PlatformInterfaceDescriptor default_descriptor = | 320 static PlatformInterfaceDescriptor default_descriptor = |
| 361 PlatformInterfaceDescriptor(CAN_INLINE_TARGET_ADDRESS); | 321 PlatformInterfaceDescriptor(CAN_INLINE_TARGET_ADDRESS); |
| 362 | 322 |
| 363 Register registers[] = { | 323 Register registers[] = { |
| 364 x1, // JSFunction | 324 x1, // JSFunction |
| 365 x3, // the new target | 325 x3, // the new target |
| 366 x0, // actual number of arguments | 326 x0, // actual number of arguments |
| 367 x2, // expected number of arguments | 327 x2, // expected number of arguments |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 452 Register registers[] = { | 412 Register registers[] = { |
| 453 x1, // loaded new FP | 413 x1, // loaded new FP |
| 454 }; | 414 }; |
| 455 data->InitializePlatformSpecific(arraysize(registers), registers); | 415 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 456 } | 416 } |
| 457 | 417 |
| 458 } // namespace internal | 418 } // namespace internal |
| 459 } // namespace v8 | 419 } // namespace v8 |
| 460 | 420 |
| 461 #endif // V8_TARGET_ARCH_ARM64 | 421 #endif // V8_TARGET_ARCH_ARM64 |
| OLD | NEW |