| Index: src/hydrogen.cc | 
| diff --git a/src/hydrogen.cc b/src/hydrogen.cc | 
| index 46e1b18aa6afe466a94cbc6d8aca7532bfe36168..c2656f3b52e8522d32b086eb6cbe41717f8856bb 100644 | 
| --- a/src/hydrogen.cc | 
| +++ b/src/hydrogen.cc | 
| @@ -10374,14 +10374,23 @@ void HOptimizedGraphBuilder::GenerateSetValueOf(CallRuntime* call) { | 
| Add<HStoreNamedField>(object, | 
| HObjectAccess::ForObservableJSObjectOffset(JSValue::kValueOffset), | 
| value); | 
| +    if (!ast_context()->IsEffect()) { | 
| +      Push(value); | 
| +    } | 
| Add<HSimulate>(call->id(), FIXED_SIMULATE); | 
| } | 
| if_objectisvalue.Else(); | 
| { | 
| // Nothing to do in this case. | 
| +    if (!ast_context()->IsEffect()) { | 
| +      Push(value); | 
| +    } | 
| Add<HSimulate>(call->id(), FIXED_SIMULATE); | 
| } | 
| if_objectisvalue.End(); | 
| +  if (!ast_context()->IsEffect()) { | 
| +    Drop(1); | 
| +  } | 
| return ast_context()->ReturnValue(value); | 
| } | 
|  | 
|  |