| OLD | NEW | 
|    1 // Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file |    1 // Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file | 
|    2 // for details. All rights reserved. Use of this source code is governed by a |    2 // for details. All rights reserved. Use of this source code is governed by a | 
|    3 // BSD-style license that can be found in the LICENSE file. |    3 // BSD-style license that can be found in the LICENSE file. | 
|    4  |    4  | 
|    5 #ifndef VM_FLOW_GRAPH_OPTIMIZER_H_ |    5 #ifndef VM_FLOW_GRAPH_OPTIMIZER_H_ | 
|    6 #define VM_FLOW_GRAPH_OPTIMIZER_H_ |    6 #define VM_FLOW_GRAPH_OPTIMIZER_H_ | 
|    7  |    7  | 
|    8 #include "vm/intermediate_language.h" |    8 #include "vm/intermediate_language.h" | 
|    9 #include "vm/flow_graph.h" |    9 #include "vm/flow_graph.h" | 
|   10  |   10  | 
| (...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  253   void TryMergeTruncDivMod(GrowableArray<BinarySmiOpInstr*>* merge_candidates); |  253   void TryMergeTruncDivMod(GrowableArray<BinarySmiOpInstr*>* merge_candidates); | 
|  254   void TryMergeMathUnary(GrowableArray<MathUnaryInstr*>* merge_candidates); |  254   void TryMergeMathUnary(GrowableArray<MathUnaryInstr*>* merge_candidates); | 
|  255  |  255  | 
|  256   void AppendLoadIndexedForMerged(Definition* instr, intptr_t ix, intptr_t cid); |  256   void AppendLoadIndexedForMerged(Definition* instr, intptr_t ix, intptr_t cid); | 
|  257   void AppendExtractNthOutputForMerged(Definition* instr, intptr_t ix, |  257   void AppendExtractNthOutputForMerged(Definition* instr, intptr_t ix, | 
|  258                                        Representation rep, intptr_t cid); |  258                                        Representation rep, intptr_t cid); | 
|  259   bool TryStringLengthOneEquality(InstanceCallInstr* call, Token::Kind op_kind); |  259   bool TryStringLengthOneEquality(InstanceCallInstr* call, Token::Kind op_kind); | 
|  260  |  260  | 
|  261   void InstanceCallNoopt(InstanceCallInstr* instr); |  261   void InstanceCallNoopt(InstanceCallInstr* instr); | 
|  262  |  262  | 
 |  263   RawField* GetField(intptr_t class_id, const String& field_name); | 
 |  264  | 
|  263   Thread* thread() const { return flow_graph_->thread(); } |  265   Thread* thread() const { return flow_graph_->thread(); } | 
|  264   Isolate* isolate() const { return flow_graph_->isolate(); } |  266   Isolate* isolate() const { return flow_graph_->isolate(); } | 
|  265   Zone* zone() const { return flow_graph_->zone(); } |  267   Zone* zone() const { return flow_graph_->zone(); } | 
|  266  |  268  | 
|  267   const Function& function() const { return flow_graph_->function(); } |  269   const Function& function() const { return flow_graph_->function(); } | 
|  268  |  270  | 
|  269   FlowGraph* flow_graph_; |  271   FlowGraph* flow_graph_; | 
|  270  |  272  | 
|  271   DISALLOW_COPY_AND_ASSIGN(FlowGraphOptimizer); |  273   DISALLOW_COPY_AND_ASSIGN(FlowGraphOptimizer); | 
|  272 }; |  274 }; | 
| (...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  436 // Optimize spill stores inside try-blocks by identifying values that always |  438 // Optimize spill stores inside try-blocks by identifying values that always | 
|  437 // contain a single known constant at catch block entry. |  439 // contain a single known constant at catch block entry. | 
|  438 class TryCatchAnalyzer : public AllStatic { |  440 class TryCatchAnalyzer : public AllStatic { | 
|  439  public: |  441  public: | 
|  440   static void Optimize(FlowGraph* flow_graph); |  442   static void Optimize(FlowGraph* flow_graph); | 
|  441 }; |  443 }; | 
|  442  |  444  | 
|  443 }  // namespace dart |  445 }  // namespace dart | 
|  444  |  446  | 
|  445 #endif  // VM_FLOW_GRAPH_OPTIMIZER_H_ |  447 #endif  // VM_FLOW_GRAPH_OPTIMIZER_H_ | 
| OLD | NEW |