Index: src/full-codegen/x87/full-codegen-x87.cc |
diff --git a/src/full-codegen/x87/full-codegen-x87.cc b/src/full-codegen/x87/full-codegen-x87.cc |
index 9f05ee29ecc57800fda7dc8f1240e3860310c138..11b8be5f558819b68a246702c783693d62302a2b 100644 |
--- a/src/full-codegen/x87/full-codegen-x87.cc |
+++ b/src/full-codegen/x87/full-codegen-x87.cc |
@@ -1116,31 +1116,10 @@ void FullCodeGenerator::EmitLoadGlobalCheckExtensions(VariableProxy* proxy, |
// If no outer scope calls eval, we do not need to check more |
// context extensions. If we have reached an eval scope, we check |
// all extensions from this point. |
- if (!s->outer_scope_calls_sloppy_eval() || s->is_eval_scope()) break; |
+ if (!s->outer_scope_calls_sloppy_eval()) break; |
s = s->outer_scope(); |
} |
- if (s != NULL && s->is_eval_scope()) { |
- // Loop up the context chain. There is no frame effect so it is |
- // safe to use raw labels here. |
- Label next, fast; |
- if (!context.is(temp)) { |
- __ mov(temp, context); |
- } |
- __ bind(&next); |
- // Terminate at native context. |
- __ cmp(FieldOperand(temp, HeapObject::kMapOffset), |
- Immediate(isolate()->factory()->native_context_map())); |
- __ j(equal, &fast, Label::kNear); |
- // Check that extension is "the hole". |
- __ JumpIfNotRoot(ContextOperand(temp, Context::EXTENSION_INDEX), |
- Heap::kTheHoleValueRootIndex, slow); |
- // Load next context in chain. |
- __ mov(temp, ContextOperand(temp, Context::PREVIOUS_INDEX)); |
- __ jmp(&next); |
- __ bind(&fast); |
- } |
- |
// All extension objects were empty and it is safe to use a normal global |
// load machinery. |
EmitGlobalVariableLoad(proxy, typeof_mode); |