| Index: src/mips/builtins-mips.cc
|
| diff --git a/src/mips/builtins-mips.cc b/src/mips/builtins-mips.cc
|
| index f32b779578fa906d105b9f56259e82c17db9c0e9..75c459f405c7ff6e5213123aabffa93c1bcea4ed 100644
|
| --- a/src/mips/builtins-mips.cc
|
| +++ b/src/mips/builtins-mips.cc
|
| @@ -1072,9 +1072,13 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm,
|
|
|
| // If the type of the result (stored in its map) is less than
|
| // FIRST_SPEC_OBJECT_TYPE, it is not an object in the ECMA sense.
|
| - __ GetObjectType(v0, a3, a3);
|
| + __ GetObjectType(v0, a1, a3);
|
| __ Branch(&exit, greater_equal, a3, Operand(FIRST_SPEC_OBJECT_TYPE));
|
|
|
| + // Symbols are "objects".
|
| + __ lbu(a3, FieldMemOperand(a1, Map::kInstanceTypeOffset));
|
| + __ Branch(&exit, eq, a3, Operand(SYMBOL_TYPE));
|
| +
|
| // Throw away the result of the constructor invocation and use the
|
| // on-stack receiver as the result.
|
| __ bind(&use_receiver);
|
|
|