| Index: src/arm/full-codegen-arm.cc
|
| ===================================================================
|
| --- src/arm/full-codegen-arm.cc (revision 4501)
|
| +++ src/arm/full-codegen-arm.cc (working copy)
|
| @@ -125,7 +125,7 @@
|
| __ add(r2, fp,
|
| Operand(StandardFrameConstants::kCallerSPOffset + offset));
|
| __ mov(r1, Operand(Smi::FromInt(scope()->num_parameters())));
|
| - __ stm(db_w, sp, r3.bit() | r2.bit() | r1.bit());
|
| + __ Push(r3, r2, r1);
|
|
|
| // Arguments to ArgumentsAccessStub:
|
| // function, receiver address, parameter count.
|
| @@ -696,8 +696,8 @@
|
| Comment cmnt(masm_, "Global variable");
|
| // Use inline caching. Variable name is passed in r2 and the global
|
| // object on the stack.
|
| - __ ldr(ip, CodeGenerator::GlobalObject());
|
| - __ push(ip);
|
| + __ ldr(r0, CodeGenerator::GlobalObject());
|
| + __ push(r0);
|
| __ mov(r2, Operand(var->name()));
|
| Handle<Code> ic(Builtins::builtin(Builtins::LoadIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET_CONTEXT);
|
| @@ -739,7 +739,7 @@
|
| __ mov(r1, Operand(key_literal->handle()));
|
|
|
| // Push both as arguments to ic.
|
| - __ stm(db_w, sp, r2.bit() | r1.bit());
|
| + __ Push(r2, r1);
|
|
|
| // Do a keyed property load.
|
| Handle<Code> ic(Builtins::builtin(Builtins::KeyedLoadIC_Initialize));
|
| @@ -771,7 +771,7 @@
|
| __ mov(r3, Operand(Smi::FromInt(expr->literal_index())));
|
| __ mov(r2, Operand(expr->pattern()));
|
| __ mov(r1, Operand(expr->flags()));
|
| - __ stm(db_w, sp, r4.bit() | r3.bit() | r2.bit() | r1.bit());
|
| + __ Push(r4, r3, r2, r1);
|
| __ CallRuntime(Runtime::kMaterializeRegExpLiteral, 4);
|
| __ bind(&done);
|
| Apply(context_, r0);
|
| @@ -785,7 +785,7 @@
|
| __ mov(r2, Operand(Smi::FromInt(expr->literal_index())));
|
| __ mov(r1, Operand(expr->constant_properties()));
|
| __ mov(r0, Operand(Smi::FromInt(expr->fast_elements() ? 1 : 0)));
|
| - __ stm(db_w, sp, r3.bit() | r2.bit() | r1.bit() | r0.bit());
|
| + __ Push(r3, r2, r1, r0);
|
| if (expr->depth() > 1) {
|
| __ CallRuntime(Runtime::kCreateObjectLiteral, 4);
|
| } else {
|
| @@ -860,7 +860,7 @@
|
| __ ldr(r3, FieldMemOperand(r3, JSFunction::kLiteralsOffset));
|
| __ mov(r2, Operand(Smi::FromInt(expr->literal_index())));
|
| __ mov(r1, Operand(expr->constant_elements()));
|
| - __ stm(db_w, sp, r3.bit() | r2.bit() | r1.bit());
|
| + __ Push(r3, r2, r1);
|
| if (expr->depth() > 1) {
|
| __ CallRuntime(Runtime::kCreateArrayLiteral, 3);
|
| } else {
|
| @@ -997,6 +997,7 @@
|
| SetSourcePosition(prop->position());
|
| Literal* key = prop->key()->AsLiteral();
|
| __ mov(r2, Operand(key->handle()));
|
| + __ ldr(r0, MemOperand(sp, 0));
|
| Handle<Code> ic(Builtins::builtin(Builtins::LoadIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
| }
|
|
|