| Index: src/ia32/code-stubs-ia32.cc
|
| diff --git a/src/ia32/code-stubs-ia32.cc b/src/ia32/code-stubs-ia32.cc
|
| index 325e9b78a457d760baf1b3b4bed98e4588c4c7c2..d260d370cc6a12a7e039ceac24bdfc429fc4c145 100644
|
| --- a/src/ia32/code-stubs-ia32.cc
|
| +++ b/src/ia32/code-stubs-ia32.cc
|
| @@ -3327,6 +3327,8 @@ void ArgumentsAccessStub::GenerateNewNonStrictSlow(MacroAssembler* masm) {
|
|
|
|
|
| void ArgumentsAccessStub::GenerateNewNonStrictFast(MacroAssembler* masm) {
|
| + Isolate* isolate = masm->isolate();
|
| +
|
| // esp[0] : return address
|
| // esp[4] : number of parameters (tagged)
|
| // esp[8] : receiver displacement
|
| @@ -3458,7 +3460,7 @@ void ArgumentsAccessStub::GenerateNewNonStrictFast(MacroAssembler* masm) {
|
| __ j(zero, &skip_parameter_map);
|
|
|
| __ mov(FieldOperand(edi, FixedArray::kMapOffset),
|
| - Immediate(FACTORY->non_strict_arguments_elements_map()));
|
| + Immediate(isolate->factory()->non_strict_arguments_elements_map()));
|
| __ lea(eax, Operand(ebx, reinterpret_cast<intptr_t>(Smi::FromInt(2))));
|
| __ mov(FieldOperand(edi, FixedArray::kLengthOffset), eax);
|
| __ mov(FieldOperand(edi, FixedArray::kHeaderSize + 0 * kPointerSize), esi);
|
| @@ -3479,7 +3481,7 @@ void ArgumentsAccessStub::GenerateNewNonStrictFast(MacroAssembler* masm) {
|
| __ mov(ebx, Immediate(Smi::FromInt(Context::MIN_CONTEXT_SLOTS)));
|
| __ add(ebx, Operand(esp, 4 * kPointerSize));
|
| __ sub(ebx, eax);
|
| - __ mov(ecx, FACTORY->the_hole_value());
|
| + __ mov(ecx, isolate->factory()->the_hole_value());
|
| __ mov(edx, edi);
|
| __ lea(edi, Operand(edi, eax, times_2, kParameterMapHeaderSize));
|
| // eax = loop variable (tagged)
|
| @@ -3514,7 +3516,7 @@ void ArgumentsAccessStub::GenerateNewNonStrictFast(MacroAssembler* masm) {
|
| // esp[16] = address of receiver argument
|
| // Copy arguments header and remaining slots (if there are any).
|
| __ mov(FieldOperand(edi, FixedArray::kMapOffset),
|
| - Immediate(FACTORY->fixed_array_map()));
|
| + Immediate(isolate->factory()->fixed_array_map()));
|
| __ mov(FieldOperand(edi, FixedArray::kLengthOffset), ecx);
|
|
|
| Label arguments_loop, arguments_test;
|
| @@ -3550,6 +3552,8 @@ void ArgumentsAccessStub::GenerateNewNonStrictFast(MacroAssembler* masm) {
|
|
|
|
|
| void ArgumentsAccessStub::GenerateNewStrict(MacroAssembler* masm) {
|
| + Isolate* isolate = masm->isolate();
|
| +
|
| // esp[0] : return address
|
| // esp[4] : number of parameters
|
| // esp[8] : receiver displacement
|
| @@ -3620,7 +3624,7 @@ void ArgumentsAccessStub::GenerateNewStrict(MacroAssembler* masm) {
|
| __ lea(edi, Operand(eax, Heap::kArgumentsObjectSizeStrict));
|
| __ mov(FieldOperand(eax, JSObject::kElementsOffset), edi);
|
| __ mov(FieldOperand(edi, FixedArray::kMapOffset),
|
| - Immediate(FACTORY->fixed_array_map()));
|
| + Immediate(isolate->factory()->fixed_array_map()));
|
|
|
| __ mov(FieldOperand(edi, FixedArray::kLengthOffset), ecx);
|
| // Untag the length for the loop below.
|
|
|