Commit 6a91645a authored by palfia@homejinni.com's avatar palfia@homejinni.com

MIPS: Fix stack frame reconstruction for generators with formal arguments.

Port r15230 (e2bbe01)

Original commit message:
The formal parameter count was always being treated as an untagged
integer, but it is actually a Smi on ia32 and arm.

BUG=v8:2355
TEST=mjsunit/harmony/generators-iteration

Review URL: https://codereview.chromium.org/17261028
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15250 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent c7b3ef0e
...@@ -2142,7 +2142,7 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator, ...@@ -2142,7 +2142,7 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator,
__ LoadRoot(a2, Heap::kTheHoleValueRootIndex); __ LoadRoot(a2, Heap::kTheHoleValueRootIndex);
Label push_argument_holes, push_frame; Label push_argument_holes, push_frame;
__ bind(&push_argument_holes); __ bind(&push_argument_holes);
__ Subu(a3, a3, Operand(1)); __ Subu(a3, a3, Operand(Smi::FromInt(1)));
__ Branch(&push_frame, lt, a3, Operand(zero_reg)); __ Branch(&push_frame, lt, a3, Operand(zero_reg));
__ push(a2); __ push(a2);
__ jmp(&push_argument_holes); __ jmp(&push_argument_holes);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment