| Index: src/ia32/codegen-ia32.cc
|
| diff --git a/src/ia32/codegen-ia32.cc b/src/ia32/codegen-ia32.cc
|
| index 20f513884e1c3b30106754fe830c1258619fd049..2190531b435d575c8b331fa57985b37dc18e88ba 100644
|
| --- a/src/ia32/codegen-ia32.cc
|
| +++ b/src/ia32/codegen-ia32.cc
|
| @@ -704,6 +704,7 @@ void ElementsTransitionGenerator::GenerateDoubleToObject(
|
| __ cmp(edi, Immediate(masm->isolate()->factory()->empty_fixed_array()));
|
| __ j(equal, &only_change_map);
|
|
|
| + __ push(esi);
|
| __ push(eax);
|
| __ push(edx);
|
| __ push(ebx);
|
| @@ -753,10 +754,10 @@ void ElementsTransitionGenerator::GenerateDoubleToObject(
|
|
|
| // Call into runtime if GC is required.
|
| __ bind(&gc_required);
|
| - __ mov(esi, Operand(ebp, StandardFrameConstants::kContextOffset));
|
| __ pop(ebx);
|
| __ pop(edx);
|
| __ pop(eax);
|
| + __ pop(esi);
|
| __ jmp(fail);
|
|
|
| // Box doubles into heap numbers.
|
| @@ -818,7 +819,7 @@ void ElementsTransitionGenerator::GenerateDoubleToObject(
|
|
|
| // Restore registers.
|
| __ pop(eax);
|
| - __ mov(esi, Operand(ebp, StandardFrameConstants::kContextOffset));
|
| + __ pop(esi);
|
|
|
| __ bind(&success);
|
| }
|
|
|