| Index: src/mips64/builtins-mips64.cc
|
| diff --git a/src/mips64/builtins-mips64.cc b/src/mips64/builtins-mips64.cc
|
| index cf9d747166bac0ce902acb3646ddac0102c19a02..6a2924cdb910fe07b49528147af76de1ab97a585 100644
|
| --- a/src/mips64/builtins-mips64.cc
|
| +++ b/src/mips64/builtins-mips64.cc
|
| @@ -1463,13 +1463,12 @@ static void CompatibleReceiverCheck(MacroAssembler* masm, Register receiver,
|
|
|
| // Load the next prototype.
|
| __ bind(&next_prototype);
|
| - __ ld(receiver, FieldMemOperand(map, Map::kPrototypeOffset));
|
| - // End if the prototype is null or not hidden.
|
| - __ JumpIfRoot(receiver, Heap::kNullValueRootIndex, receiver_check_failed);
|
| - __ ld(map, FieldMemOperand(receiver, HeapObject::kMapOffset));
|
| __ lwu(scratch, FieldMemOperand(map, Map::kBitField3Offset));
|
| - __ DecodeField<Map::IsHiddenPrototype>(scratch);
|
| + __ DecodeField<Map::HasHiddenPrototype>(scratch);
|
| __ Branch(receiver_check_failed, eq, scratch, Operand(zero_reg));
|
| +
|
| + __ ld(receiver, FieldMemOperand(map, Map::kPrototypeOffset));
|
| + __ ld(map, FieldMemOperand(receiver, HeapObject::kMapOffset));
|
| // Iterate.
|
| __ Branch(&prototype_loop_start);
|
|
|
|
|