Index: src/ppc/builtins-ppc.cc |
diff --git a/src/ppc/builtins-ppc.cc b/src/ppc/builtins-ppc.cc |
index 62845ae5b0252675b06bce6b6de20417ed9bc19a..88bc143761eb20115af4e229e806c38dddfa2c6b 100644 |
--- a/src/ppc/builtins-ppc.cc |
+++ b/src/ppc/builtins-ppc.cc |
@@ -1469,13 +1469,12 @@ void CompatibleReceiverCheck(MacroAssembler* masm, Register receiver, |
// Load the next prototype. |
__ bind(&next_prototype); |
- __ LoadP(receiver, FieldMemOperand(map, Map::kPrototypeOffset)); |
- // End if the prototype is null or not hidden. |
- __ JumpIfRoot(receiver, Heap::kNullValueRootIndex, receiver_check_failed); |
- __ LoadP(map, FieldMemOperand(receiver, HeapObject::kMapOffset)); |
__ lwz(scratch, FieldMemOperand(map, Map::kBitField3Offset)); |
__ DecodeField<Map::IsHiddenPrototype>(scratch, SetRC); |
__ beq(receiver_check_failed, cr0); |
+ |
+ __ LoadP(receiver, FieldMemOperand(map, Map::kPrototypeOffset)); |
+ __ LoadP(map, FieldMemOperand(receiver, HeapObject::kMapOffset)); |
// Iterate. |
__ b(&prototype_loop_start); |