Revision: 9020
Author: [email protected]
Date: Fri Aug 26 00:24:30 2011
Log: Landing: MIPS: Remove gp and sp from callee-saved register list.
Original code review: http://codereview.chromium.org/7740018/
Review URL: http://codereview.chromium.org/7744050
http://code.google.com/p/v8/source/detail?r=9020
Modified:
/branches/bleeding_edge/src/mips/code-stubs-mips.cc
/branches/bleeding_edge/src/mips/frames-mips.h
=======================================
--- /branches/bleeding_edge/src/mips/code-stubs-mips.cc Thu Aug 25 05:12:25
2011
+++ /branches/bleeding_edge/src/mips/code-stubs-mips.cc Fri Aug 26 00:24:30
2011
@@ -3693,10 +3693,10 @@
// args
// Save callee saved registers on the stack.
- __ MultiPush((kCalleeSaved | ra.bit()) & ~sp.bit());
+ __ MultiPush(kCalleeSaved | ra.bit());
// Load argv in s0 register.
- __ lw(s0, MemOperand(sp, kNumCalleeSaved * kPointerSize +
+ __ lw(s0, MemOperand(sp, (kNumCalleeSaved + 1) * kPointerSize +
StandardFrameConstants::kCArgsSlotsSize));
// We build an EntryFrame.
@@ -3830,7 +3830,7 @@
__ addiu(sp, sp, -EntryFrameConstants::kCallerFPOffset);
// Restore callee saved registers from the stack.
- __ MultiPop((kCalleeSaved | ra.bit()) & ~sp.bit());
+ __ MultiPop(kCalleeSaved | ra.bit());
// Return.
__ Jump(ra);
}
=======================================
--- /branches/bleeding_edge/src/mips/frames-mips.h Tue Aug 16 01:48:45 2011
+++ /branches/bleeding_edge/src/mips/frames-mips.h Fri Aug 26 00:24:30 2011
@@ -59,10 +59,10 @@
// Saved temporaries.
1 << 16 | 1 << 17 | 1 << 18 | 1 << 19 |
1 << 20 | 1 << 21 | 1 << 22 | 1 << 23 |
- // gp, sp, fp.
- 1 << 28 | 1 << 29 | 1 << 30;
-
-static const int kNumCalleeSaved = 11;
+ // fp.
+ 1 << 30;
+
+static const int kNumCalleeSaved = 9;
// Number of registers for which space is reserved in safepoints. Must be a
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev