summaryrefslogtreecommitdiff
path: root/deps/v8/src/full-codegen/ia32/full-codegen-ia32.cc
diff options
context:
space:
mode:
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.cc19
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());