Reviewers: fschneider,
Description:
MIPS: Remove gp and sp from callee-saved register list.
BUG=
TEST=
Please review this at http://codereview.chromium.org/7740018/
Affected files:
M src/mips/code-stubs-mips.cc
M src/mips/frames-mips.h
Index: src/mips/code-stubs-mips.cc
diff --git a/src/mips/code-stubs-mips.cc b/src/mips/code-stubs-mips.cc
index
d89d3e57cbe67eb3629be6203322762211ae3d2b..90e5706222b3a234fc7a4eb13893e1ef6048f5d2
100644
--- a/src/mips/code-stubs-mips.cc
+++ b/src/mips/code-stubs-mips.cc
@@ -3693,10 +3693,10 @@ void JSEntryStub::GenerateBody(MacroAssembler*
masm, bool is_construct) {
// 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.
Index: src/mips/frames-mips.h
diff --git a/src/mips/frames-mips.h b/src/mips/frames-mips.h
index
8c605a39d93ad6ec430f43ffe2cfc1465073bbf1..1899843a198d22484365dc2357bde396c918d5d4
100644
--- a/src/mips/frames-mips.h
+++ b/src/mips/frames-mips.h
@@ -59,10 +59,10 @@ static const RegList kCalleeSaved =
// 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;
+ // fp.
+ 1 << 30;
-static const int kNumCalleeSaved = 11;
+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