| Index: src/interface-descriptors.cc
|
| diff --git a/src/interface-descriptors.cc b/src/interface-descriptors.cc
|
| index cfb88672c69e7fa3a4ffbf36a8a3ce99bcbfd280..d4faf5215b5afbbc02937dcac8112ddacc3bc88e 100644
|
| --- a/src/interface-descriptors.cc
|
| +++ b/src/interface-descriptors.cc
|
| @@ -90,6 +90,21 @@ void LoadDescriptor::InitializePlatformSpecific(
|
| data->InitializePlatformSpecific(arraysize(registers), registers);
|
| }
|
|
|
| +void LoadFieldDescriptor::InitializePlatformIndependent(
|
| + CallInterfaceDescriptorData* data) {
|
| + // kReceiver, kSmiHandler
|
| + MachineType machine_types[] = {MachineType::AnyTagged(),
|
| + MachineType::AnyTagged()};
|
| + data->InitializePlatformIndependent(arraysize(machine_types), 0,
|
| + machine_types);
|
| +}
|
| +
|
| +void LoadFieldDescriptor::InitializePlatformSpecific(
|
| + CallInterfaceDescriptorData* data) {
|
| + Register registers[] = {ReceiverRegister(), SmiHandlerRegister()};
|
| + data->InitializePlatformSpecific(arraysize(registers), registers);
|
| +}
|
| +
|
| void LoadGlobalDescriptor::InitializePlatformIndependent(
|
| CallInterfaceDescriptorData* data) {
|
| // kName, kSlot
|
| @@ -237,6 +252,19 @@ void MathPowIntegerDescriptor::InitializePlatformSpecific(
|
| data->InitializePlatformSpecific(arraysize(registers), registers);
|
| }
|
|
|
| +const Register LoadFieldDescriptor::ReceiverRegister() {
|
| + // Reuse the register from the LoadDescriptor, since given the
|
| + // LoadFieldDescriptor's usage, it doesn't matter exactly which registers are
|
| + // used to pass parameters in.
|
| + return LoadDescriptor::ReceiverRegister();
|
| +}
|
| +const Register LoadFieldDescriptor::SmiHandlerRegister() {
|
| + // Reuse the register from the LoadDescriptor, since given the
|
| + // LoadFieldDescriptor's usage, it doesn't matter exactly which registers are
|
| + // used to pass parameters in.
|
| + return LoadDescriptor::NameRegister();
|
| +}
|
| +
|
| void LoadWithVectorDescriptor::InitializePlatformIndependent(
|
| CallInterfaceDescriptorData* data) {
|
| // kReceiver, kName, kSlot, kVector
|
|
|