Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(150)

Unified Diff: src/ic-arm.cc

Issue 1930: Adapt to new calling convention on ARM. (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 12 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/globals.h ('k') | src/ic-ia32.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/ic-arm.cc
===================================================================
--- src/ic-arm.cc (revision 288)
+++ src/ic-arm.cc (working copy)
@@ -407,17 +407,15 @@
// -- lr: return address
// -----------------------------------
- // Setup number of arguments for EnterJSFrame.
- __ mov(r0, Operand(argc));
- // Get the receiver of the function from the stack into r1.
- __ ldr(r1, MemOperand(sp, argc * kPointerSize));
- __ EnterJSFrame(0);
- __ pop(); // remove the code slot
+ // Get the receiver of the function from the stack.
+ __ ldr(r2, MemOperand(sp, argc * kPointerSize));
+ // Get the name of the function to call from the stack.
+ __ ldr(r1, MemOperand(sp, (argc + 1) * kPointerSize));
+ __ EnterInternalFrame();
+
// Push the receiver and the name of the function.
- __ ldr(r0, MemOperand(pp, 0));
- __ mov(r2, Operand(0)); // code slot == 0
- __ stm(db_w, sp, r0.bit() | r1.bit() | r2.bit());
+ __ stm(db_w, sp, r1.bit() | r2.bit());
// Call the entry.
__ mov(r0, Operand(2));
@@ -429,7 +427,7 @@
// Move result to r1.
__ mov(r1, Operand(r0));
- __ ExitJSFrame(DO_NOT_RETURN);
+ __ ExitInternalFrame();
// Patch the function on the stack; 1 ~ receiver.
__ str(r1, MemOperand(sp, (argc + 1) * kPointerSize));
« no previous file with comments | « src/globals.h ('k') | src/ic-ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698