| Index: src/ia32/code-stubs-ia32.cc
|
| diff --git a/src/ia32/code-stubs-ia32.cc b/src/ia32/code-stubs-ia32.cc
|
| index 2565c45d310f7b0bf5196d0065aba0a7d00a71ac..9f20169993a4103d80269e9bfaf98ff67eeb6de0 100644
|
| --- a/src/ia32/code-stubs-ia32.cc
|
| +++ b/src/ia32/code-stubs-ia32.cc
|
| @@ -1992,8 +1992,9 @@ void JSEntryStub::Generate(MacroAssembler* masm) {
|
|
|
| // Push marker in two places.
|
| int marker = type();
|
| - __ push(Immediate(Smi::FromInt(marker))); // context slot
|
| - __ push(Immediate(Smi::FromInt(marker))); // function slot
|
| + __ push(Immediate(Smi::FromInt(marker))); // marker
|
| + ExternalReference context_address(Isolate::kContextAddress, isolate());
|
| + __ push(Operand::StaticVariable(context_address)); // context
|
| // Save callee-saved registers (C calling conventions).
|
| __ push(edi);
|
| __ push(esi);
|
| @@ -3720,7 +3721,7 @@ void StubFailureTrampolineStub::Generate(MacroAssembler* masm) {
|
| CEntryStub ces(isolate(), 1, kSaveFPRegs);
|
| __ call(ces.GetCode(), RelocInfo::CODE_TARGET);
|
| int parameter_count_offset =
|
| - StubFailureTrampolineFrame::kCallerStackParameterCountFrameOffset;
|
| + StubFailureTrampolineFrameConstants::kArgumentsLengthOffset;
|
| __ mov(ebx, MemOperand(ebp, parameter_count_offset));
|
| masm->LeaveFrame(StackFrame::STUB_FAILURE_TRAMPOLINE);
|
| __ pop(ecx);
|
| @@ -4887,7 +4888,7 @@ void FastNewRestParameterStub::Generate(MacroAssembler* masm) {
|
| __ bind(&loop);
|
| __ mov(edx, Operand(edx, StandardFrameConstants::kCallerFPOffset));
|
| __ bind(&loop_entry);
|
| - __ cmp(edi, Operand(edx, StandardFrameConstants::kMarkerOffset));
|
| + __ cmp(edi, Operand(edx, StandardFrameConstants::kFunctionOffset));
|
| __ j(not_equal, &loop);
|
| }
|
|
|
| @@ -4895,7 +4896,7 @@ void FastNewRestParameterStub::Generate(MacroAssembler* masm) {
|
| // arguments adaptor frame below the function frame).
|
| Label no_rest_parameters;
|
| __ mov(ebx, Operand(edx, StandardFrameConstants::kCallerFPOffset));
|
| - __ cmp(Operand(ebx, StandardFrameConstants::kContextOffset),
|
| + __ cmp(Operand(ebx, CommonFrameConstants::kContextOrFrameTypeOffset),
|
| Immediate(Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR)));
|
| __ j(not_equal, &no_rest_parameters, Label::kNear);
|
|
|
| @@ -5038,7 +5039,7 @@ void FastNewSloppyArgumentsStub::Generate(MacroAssembler* masm) {
|
| // Check if the calling frame is an arguments adaptor frame.
|
| Label adaptor_frame, try_allocate, runtime;
|
| __ mov(ebx, Operand(ebp, StandardFrameConstants::kCallerFPOffset));
|
| - __ mov(eax, Operand(ebx, StandardFrameConstants::kContextOffset));
|
| + __ mov(eax, Operand(ebx, CommonFrameConstants::kContextOrFrameTypeOffset));
|
| __ cmp(eax, Immediate(Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR)));
|
| __ j(equal, &adaptor_frame, Label::kNear);
|
|
|
| @@ -5275,14 +5276,14 @@ void FastNewStrictArgumentsStub::Generate(MacroAssembler* masm) {
|
| __ bind(&loop);
|
| __ mov(edx, Operand(edx, StandardFrameConstants::kCallerFPOffset));
|
| __ bind(&loop_entry);
|
| - __ cmp(edi, Operand(edx, StandardFrameConstants::kMarkerOffset));
|
| + __ cmp(edi, Operand(edx, StandardFrameConstants::kFunctionOffset));
|
| __ j(not_equal, &loop);
|
| }
|
|
|
| // Check if we have an arguments adaptor frame below the function frame.
|
| Label arguments_adaptor, arguments_done;
|
| __ mov(ebx, Operand(edx, StandardFrameConstants::kCallerFPOffset));
|
| - __ cmp(Operand(ebx, StandardFrameConstants::kContextOffset),
|
| + __ cmp(Operand(ebx, CommonFrameConstants::kContextOrFrameTypeOffset),
|
| Immediate(Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR)));
|
| __ j(equal, &arguments_adaptor, Label::kNear);
|
| {
|
|
|