| 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/interface-descriptors.h" | 5 #include "src/interface-descriptors.h" |
| 6 | 6 |
| 7 namespace v8 { | 7 namespace v8 { |
| 8 namespace internal { | 8 namespace internal { |
| 9 | 9 |
| 10 | 10 |
| (...skipping 443 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 454 | 454 |
| 455 void ConstructTrampolineDescriptor::InitializePlatformIndependent( | 455 void ConstructTrampolineDescriptor::InitializePlatformIndependent( |
| 456 CallInterfaceDescriptorData* data) { | 456 CallInterfaceDescriptorData* data) { |
| 457 // kFunction, kNewTarget, kActualArgumentsCount | 457 // kFunction, kNewTarget, kActualArgumentsCount |
| 458 MachineType machine_types[] = { | 458 MachineType machine_types[] = { |
| 459 MachineType::AnyTagged(), MachineType::AnyTagged(), MachineType::Int32()}; | 459 MachineType::AnyTagged(), MachineType::AnyTagged(), MachineType::Int32()}; |
| 460 data->InitializePlatformIndependent(arraysize(machine_types), 0, | 460 data->InitializePlatformIndependent(arraysize(machine_types), 0, |
| 461 machine_types); | 461 machine_types); |
| 462 } | 462 } |
| 463 | 463 |
| 464 void CallFunctionWithFeedbackDescriptor::InitializePlatformIndependent( | 464 void CallICDescriptor::InitializePlatformIndependent( |
| 465 CallInterfaceDescriptorData* data) { | 465 CallInterfaceDescriptorData* data) { |
| 466 // kFunction, kActualArgumentsCount, kSlot | 466 // kTarget, kActualArgumentsCount, kSlot, kVector |
| 467 MachineType machine_types[] = {MachineType::AnyTagged(), MachineType::Int32(), | 467 MachineType machine_types[] = {MachineType::AnyTagged(), MachineType::Int32(), |
| 468 MachineType::Int32(), |
| 468 MachineType::AnyTagged()}; | 469 MachineType::AnyTagged()}; |
| 469 data->InitializePlatformIndependent(arraysize(machine_types), 0, | 470 data->InitializePlatformIndependent(arraysize(machine_types), 0, |
| 470 machine_types); | 471 machine_types); |
| 471 } | 472 } |
| 472 | 473 |
| 473 void CallFunctionWithFeedbackAndVectorDescriptor::InitializePlatformIndependent( | 474 void CallICTrampolineDescriptor::InitializePlatformIndependent( |
| 474 CallInterfaceDescriptorData* data) { | 475 CallInterfaceDescriptorData* data) { |
| 475 // kFunction, kActualArgumentsCount, kSlot, kVector | 476 // kTarget, kActualArgumentsCount, kSlot |
| 476 MachineType machine_types[] = {MachineType::AnyTagged(), MachineType::Int32(), | 477 MachineType machine_types[] = {MachineType::AnyTagged(), MachineType::Int32(), |
| 477 MachineType::AnyTagged(), | 478 MachineType::Int32()}; |
| 478 MachineType::AnyTagged()}; | |
| 479 data->InitializePlatformIndependent(arraysize(machine_types), 0, | 479 data->InitializePlatformIndependent(arraysize(machine_types), 0, |
| 480 machine_types); | 480 machine_types); |
| 481 } | 481 } |
| 482 | 482 |
| 483 void BuiltinDescriptor::InitializePlatformIndependent( | 483 void BuiltinDescriptor::InitializePlatformIndependent( |
| 484 CallInterfaceDescriptorData* data) { | 484 CallInterfaceDescriptorData* data) { |
| 485 // kTarget, kNewTarget, kArgumentsCount | 485 // kTarget, kNewTarget, kArgumentsCount |
| 486 MachineType machine_types[] = { | 486 MachineType machine_types[] = { |
| 487 MachineType::AnyTagged(), MachineType::AnyTagged(), MachineType::Int32()}; | 487 MachineType::AnyTagged(), MachineType::AnyTagged(), MachineType::Int32()}; |
| 488 data->InitializePlatformIndependent(arraysize(machine_types), 0, | 488 data->InitializePlatformIndependent(arraysize(machine_types), 0, |
| (...skipping 11 matching lines...) Expand all Loading... |
| 500 return kJavaScriptCallArgCountRegister; | 500 return kJavaScriptCallArgCountRegister; |
| 501 } | 501 } |
| 502 const Register BuiltinDescriptor::NewTargetRegister() { | 502 const Register BuiltinDescriptor::NewTargetRegister() { |
| 503 return kJavaScriptCallNewTargetRegister; | 503 return kJavaScriptCallNewTargetRegister; |
| 504 } | 504 } |
| 505 | 505 |
| 506 const Register BuiltinDescriptor::TargetRegister() { | 506 const Register BuiltinDescriptor::TargetRegister() { |
| 507 return kJSFunctionRegister; | 507 return kJSFunctionRegister; |
| 508 } | 508 } |
| 509 | 509 |
| 510 void ArrayConstructorDescriptor::InitializePlatformIndependent( |
| 511 CallInterfaceDescriptorData* data) { |
| 512 // kTarget, kNewTarget, kActualArgumentsCount, kAllocationSite |
| 513 MachineType machine_types[] = {MachineType::AnyTagged(), |
| 514 MachineType::AnyTagged(), MachineType::Int32(), |
| 515 MachineType::AnyTagged()}; |
| 516 data->InitializePlatformIndependent(arraysize(machine_types), 0, |
| 517 machine_types); |
| 518 } |
| 519 |
| 510 void ArrayNoArgumentConstructorDescriptor::InitializePlatformIndependent( | 520 void ArrayNoArgumentConstructorDescriptor::InitializePlatformIndependent( |
| 511 CallInterfaceDescriptorData* data) { | 521 CallInterfaceDescriptorData* data) { |
| 512 // kFunction, kAllocationSite, kActualArgumentsCount, kFunctionParameter | 522 // kFunction, kAllocationSite, kActualArgumentsCount, kFunctionParameter |
| 513 MachineType machine_types[] = {MachineType::TaggedPointer(), | 523 MachineType machine_types[] = {MachineType::TaggedPointer(), |
| 514 MachineType::AnyTagged(), MachineType::Int32(), | 524 MachineType::AnyTagged(), MachineType::Int32(), |
| 515 MachineType::AnyTagged()}; | 525 MachineType::AnyTagged()}; |
| 516 data->InitializePlatformIndependent(arraysize(machine_types), 0, | 526 data->InitializePlatformIndependent(arraysize(machine_types), 0, |
| 517 machine_types); | 527 machine_types); |
| 518 } | 528 } |
| 519 | 529 |
| 520 void ArraySingleArgumentConstructorDescriptor::InitializePlatformIndependent( | 530 void ArraySingleArgumentConstructorDescriptor::InitializePlatformIndependent( |
| 521 CallInterfaceDescriptorData* data) { | 531 CallInterfaceDescriptorData* data) { |
| 522 // kFunction, kAllocationSite, kActualArgumentsCount, kFunctionParameter, | 532 // kFunction, kAllocationSite, kActualArgumentsCount, kFunctionParameter, |
| 523 // kArraySizeSmiParameter | 533 // kArraySizeSmiParameter |
| 524 MachineType machine_types[] = { | 534 MachineType machine_types[] = { |
| 525 MachineType::TaggedPointer(), MachineType::AnyTagged(), | 535 MachineType::TaggedPointer(), MachineType::AnyTagged(), |
| 526 MachineType::Int32(), MachineType::AnyTagged(), MachineType::AnyTagged()}; | 536 MachineType::Int32(), MachineType::AnyTagged(), MachineType::AnyTagged()}; |
| 527 data->InitializePlatformIndependent(arraysize(machine_types), 0, | 537 data->InitializePlatformIndependent(arraysize(machine_types), 0, |
| 528 machine_types); | 538 machine_types); |
| 529 } | 539 } |
| 530 | 540 |
| 531 void ArrayNArgumentsConstructorDescriptor::InitializePlatformIndependent( | 541 void ArrayNArgumentsConstructorDescriptor::InitializePlatformIndependent( |
| 532 CallInterfaceDescriptorData* data) { | 542 CallInterfaceDescriptorData* data) { |
| 533 // kFunction, kAllocationSite, kActualArgumentsCount | 543 // kFunction, kAllocationSite, kActualArgumentsCount |
| 534 MachineType machine_types[] = {MachineType::TaggedPointer(), | 544 MachineType machine_types[] = { |
| 535 MachineType::AnyTagged(), | 545 MachineType::AnyTagged(), MachineType::AnyTagged(), MachineType::Int32()}; |
| 536 MachineType::Int32()}; | |
| 537 data->InitializePlatformIndependent(arraysize(machine_types), 0, | 546 data->InitializePlatformIndependent(arraysize(machine_types), 0, |
| 538 machine_types); | 547 machine_types); |
| 539 } | 548 } |
| 540 | 549 |
| 541 void ArgumentAdaptorDescriptor::InitializePlatformIndependent( | 550 void ArgumentAdaptorDescriptor::InitializePlatformIndependent( |
| 542 CallInterfaceDescriptorData* data) { | 551 CallInterfaceDescriptorData* data) { |
| 543 // kFunction, kNewTarget, kActualArgumentsCount, kExpectedArgumentsCount | 552 // kFunction, kNewTarget, kActualArgumentsCount, kExpectedArgumentsCount |
| 544 MachineType machine_types[] = {MachineType::TaggedPointer(), | 553 MachineType machine_types[] = {MachineType::TaggedPointer(), |
| 545 MachineType::AnyTagged(), MachineType::Int32(), | 554 MachineType::AnyTagged(), MachineType::Int32(), |
| 546 MachineType::Int32()}; | 555 MachineType::Int32()}; |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 610 void FrameDropperTrampolineDescriptor::InitializePlatformIndependent( | 619 void FrameDropperTrampolineDescriptor::InitializePlatformIndependent( |
| 611 CallInterfaceDescriptorData* data) { | 620 CallInterfaceDescriptorData* data) { |
| 612 // New FP value. | 621 // New FP value. |
| 613 MachineType machine_types[] = {MachineType::Pointer()}; | 622 MachineType machine_types[] = {MachineType::Pointer()}; |
| 614 data->InitializePlatformIndependent(arraysize(machine_types), 0, | 623 data->InitializePlatformIndependent(arraysize(machine_types), 0, |
| 615 machine_types); | 624 machine_types); |
| 616 } | 625 } |
| 617 | 626 |
| 618 } // namespace internal | 627 } // namespace internal |
| 619 } // namespace v8 | 628 } // namespace v8 |
| OLD | NEW |