| Index: src/arm/interface-descriptors-arm.cc
|
| diff --git a/src/arm/interface-descriptors-arm.cc b/src/arm/interface-descriptors-arm.cc
|
| index 3b0e54d895b7abe8b0ba5503f277399f00d60f35..9bbc1f58c12860581ccb0f20c19e98eb72194b0e 100644
|
| --- a/src/arm/interface-descriptors-arm.cc
|
| +++ b/src/arm/interface-descriptors-arm.cc
|
| @@ -18,17 +18,9 @@ const Register LoadDescriptor::ReceiverRegister() { return r1; }
|
| const Register LoadDescriptor::NameRegister() { return r2; }
|
|
|
|
|
| -const Register VectorLoadICDescriptor::ReceiverRegister() {
|
| - return LoadDescriptor::ReceiverRegister();
|
| -}
|
| -
|
| -
|
| -const Register VectorLoadICDescriptor::NameRegister() {
|
| - return LoadDescriptor::NameRegister();
|
| -}
|
| +const Register VectorLoadICTrampolineDescriptor::SlotRegister() { return r0; }
|
|
|
|
|
| -const Register VectorLoadICDescriptor::SlotRegister() { return r0; }
|
| const Register VectorLoadICDescriptor::VectorRegister() { return r3; }
|
|
|
|
|
| @@ -37,26 +29,26 @@ const Register StoreDescriptor::NameRegister() { return r2; }
|
| const Register StoreDescriptor::ValueRegister() { return r0; }
|
|
|
|
|
| -const Register ElementTransitionAndStoreDescriptor::ReceiverRegister() {
|
| - return StoreDescriptor::ReceiverRegister();
|
| -}
|
| +const Register ElementTransitionAndStoreDescriptor::MapRegister() { return r3; }
|
|
|
|
|
| -const Register ElementTransitionAndStoreDescriptor::NameRegister() {
|
| - return StoreDescriptor::NameRegister();
|
| -}
|
| +const Register InstanceofDescriptor::left() { return r0; }
|
| +const Register InstanceofDescriptor::right() { return r1; }
|
|
|
|
|
| -const Register ElementTransitionAndStoreDescriptor::ValueRegister() {
|
| - return StoreDescriptor::ValueRegister();
|
| -}
|
| +const Register ArgumentsAccessReadDescriptor::index() { return r1; }
|
| +const Register ArgumentsAccessReadDescriptor::parameter_count() { return r0; }
|
|
|
|
|
| -const Register ElementTransitionAndStoreDescriptor::MapRegister() { return r3; }
|
| +const Register ApiGetterDescriptor::function_address() { return r2; }
|
|
|
|
|
| -const Register InstanceofDescriptor::left() { return r0; }
|
| -const Register InstanceofDescriptor::right() { return r1; }
|
| +const Register MathPowTaggedDescriptor::exponent() { return r2; }
|
| +
|
| +
|
| +const Register MathPowIntegerDescriptor::exponent() {
|
| + return MathPowTaggedDescriptor::exponent();
|
| +}
|
|
|
|
|
| void FastNewClosureDescriptor::Initialize(CallInterfaceDescriptorData* data) {
|
| @@ -107,12 +99,29 @@ void CreateAllocationSiteDescriptor::Initialize(
|
| }
|
|
|
|
|
| +void StoreArrayLiteralElementDescriptor::Initialize(
|
| + CallInterfaceDescriptorData* data) {
|
| + Register registers[] = {cp, r3, r0};
|
| + data->Initialize(arraysize(registers), registers, NULL);
|
| +}
|
| +
|
| +
|
| void CallFunctionDescriptor::Initialize(CallInterfaceDescriptorData* data) {
|
| Register registers[] = {cp, r1};
|
| data->Initialize(arraysize(registers), registers, NULL);
|
| }
|
|
|
|
|
| +void CallFunctionWithFeedbackDescriptor::Initialize(
|
| + CallInterfaceDescriptorData* data) {
|
| + Register registers[] = {cp, r1, r3};
|
| + Representation representations[] = {Representation::Tagged(),
|
| + Representation::Tagged(),
|
| + Representation::Smi()};
|
| + data->Initialize(arraysize(registers), registers, representations);
|
| +}
|
| +
|
| +
|
| void CallConstructDescriptor::Initialize(CallInterfaceDescriptorData* data) {
|
| // r0 : number of arguments
|
| // r1 : the function to call
|
|
|