| 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 "v8.h" | 5 #include "v8.h" |
| 6 | 6 |
| 7 #if V8_TARGET_ARCH_ARM64 | 7 #if V8_TARGET_ARCH_ARM64 |
| 8 | 8 |
| 9 #include "bootstrapper.h" | 9 #include "bootstrapper.h" |
| 10 #include "code-stubs.h" | 10 #include "code-stubs.h" |
| (...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 335 // x1: key | 335 // x1: key |
| 336 // x2: receiver | 336 // x2: receiver |
| 337 static Register registers[] = { x0, x3, x1, x2 }; | 337 static Register registers[] = { x0, x3, x1, x2 }; |
| 338 descriptor->register_param_count_ = sizeof(registers) / sizeof(registers[0]); | 338 descriptor->register_param_count_ = sizeof(registers) / sizeof(registers[0]); |
| 339 descriptor->register_params_ = registers; | 339 descriptor->register_params_ = registers; |
| 340 descriptor->deoptimization_handler_ = | 340 descriptor->deoptimization_handler_ = |
| 341 FUNCTION_ADDR(ElementsTransitionAndStoreIC_Miss); | 341 FUNCTION_ADDR(ElementsTransitionAndStoreIC_Miss); |
| 342 } | 342 } |
| 343 | 343 |
| 344 | 344 |
| 345 void ArrayShiftStub::InitializeInterfaceDescriptor( |
| 346 CodeStubInterfaceDescriptor* descriptor) { |
| 347 // x0: receiver |
| 348 static Register registers[] = { x0 }; |
| 349 descriptor->register_param_count_ = sizeof(registers) / sizeof(registers[0]); |
| 350 descriptor->register_params_ = registers; |
| 351 descriptor->deoptimization_handler_ = |
| 352 Builtins::c_function_address(Builtins::c_ArrayShift); |
| 353 } |
| 354 |
| 355 |
| 345 void BinaryOpICStub::InitializeInterfaceDescriptor( | 356 void BinaryOpICStub::InitializeInterfaceDescriptor( |
| 346 CodeStubInterfaceDescriptor* descriptor) { | 357 CodeStubInterfaceDescriptor* descriptor) { |
| 347 // x1: left operand | 358 // x1: left operand |
| 348 // x0: right operand | 359 // x0: right operand |
| 349 static Register registers[] = { x1, x0 }; | 360 static Register registers[] = { x1, x0 }; |
| 350 descriptor->register_param_count_ = sizeof(registers) / sizeof(registers[0]); | 361 descriptor->register_param_count_ = sizeof(registers) / sizeof(registers[0]); |
| 351 descriptor->register_params_ = registers; | 362 descriptor->register_params_ = registers; |
| 352 descriptor->deoptimization_handler_ = FUNCTION_ADDR(BinaryOpIC_Miss); | 363 descriptor->deoptimization_handler_ = FUNCTION_ADDR(BinaryOpIC_Miss); |
| 353 descriptor->SetMissHandler( | 364 descriptor->SetMissHandler( |
| 354 ExternalReference(IC_Utility(IC::kBinaryOpIC_Miss), isolate())); | 365 ExternalReference(IC_Utility(IC::kBinaryOpIC_Miss), isolate())); |
| (...skipping 5120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5475 MemOperand(fp, 6 * kPointerSize), | 5486 MemOperand(fp, 6 * kPointerSize), |
| 5476 NULL); | 5487 NULL); |
| 5477 } | 5488 } |
| 5478 | 5489 |
| 5479 | 5490 |
| 5480 #undef __ | 5491 #undef __ |
| 5481 | 5492 |
| 5482 } } // namespace v8::internal | 5493 } } // namespace v8::internal |
| 5483 | 5494 |
| 5484 #endif // V8_TARGET_ARCH_ARM64 | 5495 #endif // V8_TARGET_ARCH_ARM64 |
| OLD | NEW |