Index: src/full-codegen/arm/full-codegen-arm.cc |
diff --git a/src/full-codegen/arm/full-codegen-arm.cc b/src/full-codegen/arm/full-codegen-arm.cc |
index def8c9dc45ebe43768d3a5a21d110cb4ab8e080b..6a40d661ccd4a131f8803b3f726144d589b4e544 100644 |
--- a/src/full-codegen/arm/full-codegen-arm.cc |
+++ b/src/full-codegen/arm/full-codegen-arm.cc |
@@ -1199,30 +1199,10 @@ void FullCodeGenerator::EmitLoadGlobalCheckExtensions(VariableProxy* proxy, |
} |
// If no outer scope calls eval, we do not need to check more |
// context extensions. |
- 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->is_eval_scope()) { |
- Label loop, fast; |
- if (!current.is(next)) { |
- __ Move(next, current); |
- } |
- __ bind(&loop); |
- // Terminate at native context. |
- __ ldr(temp, FieldMemOperand(next, HeapObject::kMapOffset)); |
- __ LoadRoot(ip, Heap::kNativeContextMapRootIndex); |
- __ cmp(temp, ip); |
- __ b(eq, &fast); |
- // Check that extension is "the hole". |
- __ ldr(temp, ContextMemOperand(next, Context::EXTENSION_INDEX)); |
- __ JumpIfNotRoot(temp, Heap::kTheHoleValueRootIndex, slow); |
- // Load next context in chain. |
- __ ldr(next, ContextMemOperand(next, Context::PREVIOUS_INDEX)); |
- __ b(&loop); |
- __ bind(&fast); |
- } |
- |
// All extension objects were empty and it is safe to use a normal global |
// load machinery. |
EmitGlobalVariableLoad(proxy, typeof_mode); |