diff options
Diffstat (limited to 'deps/v8/src/full-codegen/ia32/full-codegen-ia32.cc')
-rw-r--r-- | deps/v8/src/full-codegen/ia32/full-codegen-ia32.cc | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/deps/v8/src/full-codegen/ia32/full-codegen-ia32.cc b/deps/v8/src/full-codegen/ia32/full-codegen-ia32.cc index e4d4284d9c..0af067c81d 100644 --- a/deps/v8/src/full-codegen/ia32/full-codegen-ia32.cc +++ b/deps/v8/src/full-codegen/ia32/full-codegen-ia32.cc @@ -961,7 +961,7 @@ void FullCodeGenerator::VisitForInStatement(ForInStatement* stmt) { __ j(equal, &no_descriptors); __ LoadInstanceDescriptors(eax, ecx); - __ mov(ecx, FieldOperand(ecx, DescriptorArray::kEnumCacheOffset)); + __ mov(ecx, FieldOperand(ecx, DescriptorArray::kEnumCacheBridgeOffset)); __ mov(ecx, FieldOperand(ecx, DescriptorArray::kEnumCacheBridgeCacheOffset)); // Set up the four remaining stack slots. @@ -1154,8 +1154,7 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) { __ mov(ebx, Immediate(SmiFromSlot(expr->literal_slot()))); __ mov(ecx, Immediate(constant_properties)); __ mov(edx, Immediate(Smi::FromInt(flags))); - Callable callable = CodeFactory::FastCloneShallowObject( - isolate(), expr->properties_count()); + Callable callable = CodeFactory::FastCloneShallowObject(isolate()); __ Call(callable.code(), RelocInfo::CODE_TARGET); RestoreContext(); } @@ -1686,12 +1685,6 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, Token::Value op, // Assignment to var or initializing assignment to let/const in harmony // mode. MemOperand location = VarOperand(var, ecx); - if (FLAG_debug_code && var->mode() == LET && op == Token::INIT) { - // Check for an uninitialized let binding. - __ mov(edx, location); - __ cmp(edx, isolate()->factory()->the_hole_value()); - __ Check(equal, kLetBindingReInitialization); - } EmitStoreToStackLocalOrContextSlot(var, location); } } @@ -2157,9 +2150,8 @@ void FullCodeGenerator::VisitUnaryOperation(UnaryOperation* expr) { if (property != NULL) { VisitForStackValue(property->obj()); VisitForStackValue(property->key()); - CallRuntimeWithOperands(is_strict(language_mode()) - ? Runtime::kDeleteProperty_Strict - : Runtime::kDeleteProperty_Sloppy); + PushOperand(Smi::FromInt(language_mode())); + CallRuntimeWithOperands(Runtime::kDeleteProperty); context()->Plug(eax); } else if (proxy != NULL) { Variable* var = proxy->var(); @@ -2171,7 +2163,8 @@ void FullCodeGenerator::VisitUnaryOperation(UnaryOperation* expr) { __ mov(eax, NativeContextOperand()); __ push(ContextOperand(eax, Context::EXTENSION_INDEX)); __ push(Immediate(var->name())); - __ CallRuntime(Runtime::kDeleteProperty_Sloppy); + __ Push(Smi::FromInt(SLOPPY)); + __ CallRuntime(Runtime::kDeleteProperty); context()->Plug(eax); } else { DCHECK(!var->IsLookupSlot()); |