Index: src/full-codegen/ia32/full-codegen-ia32.cc |
diff --git a/src/full-codegen/ia32/full-codegen-ia32.cc b/src/full-codegen/ia32/full-codegen-ia32.cc |
index aa35e49f605a0aa32761336ce4792cb660afe1eb..a6f43e070c8ec1314c4dc10fc17b21f16d32f6ac 100644 |
--- a/src/full-codegen/ia32/full-codegen-ia32.cc |
+++ b/src/full-codegen/ia32/full-codegen-ia32.cc |
@@ -750,15 +750,8 @@ void FullCodeGenerator::VisitVariableDeclaration( |
__ push(Immediate(variable->name())); |
// VariableDeclaration nodes are always introduced in one of four modes. |
DCHECK(IsDeclaredVariableMode(mode)); |
- // Push initial value, if any. |
- // Note: For variables we must not push an initial value (such as |
- // 'undefined') because we may have a (legal) redeclaration and we |
- // must not destroy the current value. |
- if (hole_init) { |
- __ push(Immediate(isolate()->factory()->the_hole_value())); |
- } else { |
- __ push(Immediate(Smi::FromInt(0))); // Indicates no initial value. |
- } |
+ DCHECK(!hole_init); |
+ __ push(Immediate(Smi::FromInt(0))); // Indicates no initial value. |
__ push( |
Immediate(Smi::FromInt(variable->DeclarationPropertyAttributes()))); |
__ CallRuntime(Runtime::kDeclareLookupSlot); |