| Index: src/x64/lithium-codegen-x64.cc
|
| ===================================================================
|
| --- src/x64/lithium-codegen-x64.cc (revision 10356)
|
| +++ src/x64/lithium-codegen-x64.cc (working copy)
|
| @@ -1892,9 +1892,10 @@
|
| Register map = ToRegister(instr->TempAt(0));
|
| __ movq(map, FieldOperand(object, HeapObject::kMapOffset));
|
| __ bind(deferred->map_check()); // Label for calculating code patching.
|
| - __ movq(kScratchRegister, factory()->the_hole_value(),
|
| - RelocInfo::EMBEDDED_OBJECT);
|
| - __ cmpq(map, kScratchRegister); // Patched to cached map.
|
| + Handle<JSGlobalPropertyCell> cache_cell =
|
| + factory()->NewJSGlobalPropertyCell(factory()->the_hole_value());
|
| + __ movq(kScratchRegister, cache_cell, RelocInfo::GLOBAL_PROPERTY_CELL);
|
| + __ cmpq(map, Operand(kScratchRegister, 0));
|
| __ j(not_equal, &cache_miss, Label::kNear);
|
| // Patched to load either true or false.
|
| __ LoadRoot(ToRegister(instr->result()), Heap::kTheHoleValueRootIndex);
|
|
|