| Index: src/mips/lithium-codegen-mips.cc
|
| ===================================================================
|
| --- src/mips/lithium-codegen-mips.cc (revision 11886)
|
| +++ src/mips/lithium-codegen-mips.cc (working copy)
|
| @@ -2338,15 +2338,14 @@
|
| } else {
|
| // Negative lookup.
|
| // Check prototypes.
|
| - HeapObject* current = HeapObject::cast((*type)->prototype());
|
| + Handle<HeapObject> current(HeapObject::cast((*type)->prototype()));
|
| Heap* heap = type->GetHeap();
|
| - while (current != heap->null_value()) {
|
| - Handle<HeapObject> link(current);
|
| - __ LoadHeapObject(result, link);
|
| + while (*current != heap->null_value()) {
|
| + __ LoadHeapObject(result, current);
|
| __ lw(result, FieldMemOperand(result, HeapObject::kMapOffset));
|
| - DeoptimizeIf(ne, env,
|
| - result, Operand(Handle<Map>(JSObject::cast(current)->map())));
|
| - current = HeapObject::cast(current->map()->prototype());
|
| + DeoptimizeIf(ne, env, result, Operand(Handle<Map>(current->map())));
|
| + current =
|
| + Handle<HeapObject>(HeapObject::cast(current->map()->prototype()));
|
| }
|
| __ LoadRoot(result, Heap::kUndefinedValueRootIndex);
|
| }
|
|
|