Index: src/arm/code-stubs-arm.cc |
diff --git a/src/arm/code-stubs-arm.cc b/src/arm/code-stubs-arm.cc |
index f50e7dd2ddc5269c084f48f1506dcc00a6a3faa6..e1f39fa925c80b1f4b7055f3cbbb1a5990d56d1f 100644 |
--- a/src/arm/code-stubs-arm.cc |
+++ b/src/arm/code-stubs-arm.cc |
@@ -1856,25 +1856,15 @@ void InstanceofStub::Generate(MacroAssembler* masm) { |
void FunctionPrototypeStub::Generate(MacroAssembler* masm) { |
Label miss; |
- Register receiver; |
+ Register receiver = LoadIC::ReceiverRegister(); |
+ Register name = LoadIC::NameRegister(); |
+ |
+ ASSERT(kind() == Code::LOAD_IC || |
+ kind() == Code::KEYED_LOAD_IC); |
+ |
if (kind() == Code::KEYED_LOAD_IC) { |
- // ----------- S t a t e ------------- |
- // -- lr : return address |
- // -- r0 : key |
- // -- r1 : receiver |
- // ----------------------------------- |
- __ cmp(r0, Operand(isolate()->factory()->prototype_string())); |
+ __ cmp(name, Operand(isolate()->factory()->prototype_string())); |
__ b(ne, &miss); |
- receiver = r1; |
- } else { |
- ASSERT(kind() == Code::LOAD_IC); |
- // ----------- S t a t e ------------- |
- // -- r2 : name |
- // -- lr : return address |
- // -- r0 : receiver |
- // -- sp[0] : receiver |
- // ----------------------------------- |
- receiver = r0; |
} |
StubCompiler::GenerateLoadFunctionPrototype(masm, receiver, r3, r4, &miss); |