Index: src/full-codegen/mips/full-codegen-mips.cc |
diff --git a/src/full-codegen/mips/full-codegen-mips.cc b/src/full-codegen/mips/full-codegen-mips.cc |
index d921226a483496933388a34d8d55b8b4438a9264..ad018aa49814d41b7968b849bd9b57b59b03fedd 100644 |
--- a/src/full-codegen/mips/full-codegen-mips.cc |
+++ b/src/full-codegen/mips/full-codegen-mips.cc |
@@ -797,15 +797,11 @@ void FullCodeGenerator::VisitVariableDeclaration( |
case VariableLocation::LOOKUP: { |
Comment cmnt(masm_, "[ VariableDeclaration"); |
- __ li(a2, Operand(variable->name())); |
- // Declaration nodes are always introduced in one of four modes. |
- DCHECK(IsDeclaredVariableMode(mode)); |
+ DCHECK_EQ(VAR, mode); |
DCHECK(!hole_init); |
- DCHECK(Smi::FromInt(0) == 0); |
- __ mov(a0, zero_reg); // Smi::FromInt(0) indicates no initial value. |
- __ Push(a2, a0); |
- __ Push(Smi::FromInt(variable->DeclarationPropertyAttributes())); |
- __ CallRuntime(Runtime::kDeclareLookupSlot); |
+ __ li(a2, Operand(variable->name())); |
+ __ Push(a2); |
+ __ CallRuntime(Runtime::kDeclareEvalVar); |
PrepareForBailoutForId(proxy->id(), BailoutState::NO_REGISTERS); |
break; |
} |
@@ -862,8 +858,7 @@ void FullCodeGenerator::VisitFunctionDeclaration( |
PushOperand(a2); |
// Push initial value for function declaration. |
VisitForStackValue(declaration->fun()); |
- PushOperand(Smi::FromInt(variable->DeclarationPropertyAttributes())); |
- CallRuntimeWithOperands(Runtime::kDeclareLookupSlot); |
+ CallRuntimeWithOperands(Runtime::kDeclareEvalFunction); |
PrepareForBailoutForId(proxy->id(), BailoutState::NO_REGISTERS); |
break; |
} |