Chromium Code Reviews| Index: runtime/vm/flow_graph_builder.cc |
| =================================================================== |
| --- runtime/vm/flow_graph_builder.cc (revision 19647) |
| +++ runtime/vm/flow_graph_builder.cc (working copy) |
| @@ -2720,18 +2720,20 @@ |
| if (super_function->IsNull()) { |
| // Could not resolve super operator. Generate call noSuchMethod() of the |
| // super class instead. |
| - if (result_is_needed) { |
| // Even though noSuchMethod most likely does not return, |
| // we save the stored value if the result is needed. |
|
hausner
2013/03/07 21:53:59
Can you adjust the comment to match the removed if
srdjan
2013/03/07 21:58:08
Done.
|
| - ValueGraphVisitor for_value(owner(), temp_index()); |
| - node->value()->Visit(&for_value); |
| - Append(for_value); |
| - Bind(BuildStoreExprTemp(for_value.value())); |
| - } |
| + ValueGraphVisitor for_value(owner(), temp_index()); |
| + node->value()->Visit(&for_value); |
| + Append(for_value); |
| + Do(BuildStoreExprTemp(for_value.value())); |
| + |
| + const LocalVariable* temp = |
| + owner()->parsed_function().expression_temp_var(); |
| + AstNode* value = new LoadLocalNode(node->token_pos(), temp); |
| ArgumentListNode* arguments = new ArgumentListNode(node->token_pos()); |
| arguments->Add(node->array()); |
| arguments->Add(node->index_expr()); |
| - arguments->Add(node->value()); |
| + arguments->Add(value); |
| StaticCallInstr* call = |
| BuildStaticNoSuchMethodCall(node->super_class(), |
| node->array(), |