| Index: src/ia32/stub-cache-ia32.cc
|
| diff --git a/src/ia32/stub-cache-ia32.cc b/src/ia32/stub-cache-ia32.cc
|
| index 845a4493e02f5d0f1baf9e5cf2e67bfd729939fb..3089a69473ff70da40104773507feee8d63bda23 100644
|
| --- a/src/ia32/stub-cache-ia32.cc
|
| +++ b/src/ia32/stub-cache-ia32.cc
|
| @@ -3079,7 +3079,8 @@ Handle<Code> KeyedLoadStubCompiler::CompileLoadPolymorphic(
|
|
|
| // Specialized stub for constructing objects from functions which only have only
|
| // simple assignments of the form this.x = ...; in their body.
|
| -MaybeObject* ConstructStubCompiler::CompileConstructStub(JSFunction* function) {
|
| +Handle<Code> ConstructStubCompiler::CompileConstructStub(
|
| + Handle<JSFunction> function) {
|
| // ----------- S t a t e -------------
|
| // -- eax : argc
|
| // -- edi : constructor
|
| @@ -3118,12 +3119,8 @@ MaybeObject* ConstructStubCompiler::CompileConstructStub(JSFunction* function) {
|
| // ebx: initial map
|
| __ movzx_b(ecx, FieldOperand(ebx, Map::kInstanceSizeOffset));
|
| __ shl(ecx, kPointerSizeLog2);
|
| - __ AllocateInNewSpace(ecx,
|
| - edx,
|
| - ecx,
|
| - no_reg,
|
| - &generic_stub_call,
|
| - NO_ALLOCATION_FLAGS);
|
| + __ AllocateInNewSpace(ecx, edx, ecx, no_reg,
|
| + &generic_stub_call, NO_ALLOCATION_FLAGS);
|
|
|
| // Allocated the JSObject, now initialize the fields and add the heap tag.
|
| // ebx: initial map
|
| @@ -3154,7 +3151,7 @@ MaybeObject* ConstructStubCompiler::CompileConstructStub(JSFunction* function) {
|
| // edi: undefined
|
| // Fill the initialized properties with a constant value or a passed argument
|
| // depending on the this.x = ...; assignment in the function.
|
| - SharedFunctionInfo* shared = function->shared();
|
| + Handle<SharedFunctionInfo> shared(function->shared());
|
| for (int i = 0; i < shared->this_property_assignments_count(); i++) {
|
| if (shared->IsThisPropertyAssignmentArgument(i)) {
|
| // Check if the argument assigned to the property is actually passed.
|
| @@ -3206,9 +3203,8 @@ MaybeObject* ConstructStubCompiler::CompileConstructStub(JSFunction* function) {
|
| // Jump to the generic stub in case the specialized code cannot handle the
|
| // construction.
|
| __ bind(&generic_stub_call);
|
| - Handle<Code> generic_construct_stub =
|
| - isolate()->builtins()->JSConstructStubGeneric();
|
| - __ jmp(generic_construct_stub, RelocInfo::CODE_TARGET);
|
| + Handle<Code> code = isolate()->builtins()->JSConstructStubGeneric();
|
| + __ jmp(code, RelocInfo::CODE_TARGET);
|
|
|
| // Return the generated code.
|
| return GetCode();
|
|
|