 Chromium Code Reviews
 Chromium Code Reviews Issue 395943003:
  Support allocation sinking for compound objects.  (Closed) 
  Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
    
  
    Issue 395943003:
  Support allocation sinking for compound objects.  (Closed) 
  Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart| Index: runtime/vm/compiler.cc | 
| diff --git a/runtime/vm/compiler.cc b/runtime/vm/compiler.cc | 
| index 60a66aba9969e7fa3b68b3671c19774e6d2a5275..557d61ce86758dd8d5caa7388953b656bdcfa90f 100644 | 
| --- a/runtime/vm/compiler.cc | 
| +++ b/runtime/vm/compiler.cc | 
| @@ -479,6 +479,10 @@ static bool CompileParsedFunctionHelper(ParsedFunction* parsed_function, | 
| DeadCodeElimination::EliminateDeadPhis(flow_graph); | 
| DEBUG_ASSERT(flow_graph->VerifyUseLists()); | 
| + if (optimizer.Canonicalize()) { | 
| + optimizer.Canonicalize(); | 
| 
srdjan
2014/07/17 23:08:14
Why another canonicalization?
 
Vyacheslav Egorov (Google)
2014/07/18 11:25:08
When writing tests I noticed that we often arrive
 | 
| + } | 
| + | 
| // Attempt to sink allocations of temporary non-escaping objects to | 
| // the deoptimization path. | 
| AllocationSinking* sinking = NULL; |