Index: src/hydrogen.cc |
diff --git a/src/hydrogen.cc b/src/hydrogen.cc |
index 7100d3a97ab930e57f7b5d5cd2c186201a31da41..97489a97c0742d2ec94bba60598106cb027a3813 100644 |
--- a/src/hydrogen.cc |
+++ b/src/hydrogen.cc |
@@ -3399,7 +3399,8 @@ bool HOptimizedGraphBuilder::BuildGraph() { |
if (HasStackOverflow()) return false; |
if (current_block() != NULL) { |
- HReturn* instr = new(zone()) HReturn(graph()->GetConstantUndefined()); |
+ HReturn* instr = new(zone()) HReturn(graph()->GetConstantUndefined(), |
+ context); |
current_block()->FinishExit(instr); |
set_current_block(NULL); |
} |
@@ -4215,7 +4216,9 @@ void HOptimizedGraphBuilder::VisitReturnStatement(ReturnStatement* stmt) { |
// Not an inlined return, so an actual one. |
CHECK_ALIVE(VisitForValue(stmt->expression())); |
HValue* result = environment()->Pop(); |
- current_block()->FinishExit(new(zone()) HReturn(result)); |
+ current_block()->FinishExit(new(zone()) HReturn( |
+ result, |
+ environment()->LookupContext())); |
} else if (state->inlining_kind() == CONSTRUCT_CALL_RETURN) { |
// Return from an inlined construct call. In a test context the return value |
// will always evaluate to true, in a value context the return value needs |