Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(804)

Unified Diff: runtime/vm/flow_graph_optimizer.h

Issue 10700123: Remove the instruction pointer from computations. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | runtime/vm/flow_graph_optimizer.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/flow_graph_optimizer.h
diff --git a/runtime/vm/flow_graph_optimizer.h b/runtime/vm/flow_graph_optimizer.h
index 820ff5d1754e2474ae96300c71f7a20c7964cb5a..fe1a77951d7f943f09b16ab87cd6254ea8459f04 100644
--- a/runtime/vm/flow_graph_optimizer.h
+++ b/runtime/vm/flow_graph_optimizer.h
@@ -19,28 +19,34 @@ class FlowGraphOptimizer : public FlowGraphVisitor {
void ApplyICData();
- virtual void VisitStaticCall(StaticCallComp* comp);
- virtual void VisitInstanceCall(InstanceCallComp* comp);
- virtual void VisitInstanceSetter(InstanceSetterComp* comp);
- virtual void VisitLoadIndexed(LoadIndexedComp* comp);
- virtual void VisitStoreIndexed(StoreIndexedComp* comp);
- virtual void VisitRelationalOp(RelationalOpComp* comp);
+ virtual void VisitStaticCall(StaticCallComp* comp, BindInstr* instr);
+ virtual void VisitInstanceCall(InstanceCallComp* comp, BindInstr* instr);
+ virtual void VisitInstanceSetter(InstanceSetterComp* comp, BindInstr* instr);
+ virtual void VisitLoadIndexed(LoadIndexedComp* comp, BindInstr* instr);
+ virtual void VisitStoreIndexed(StoreIndexedComp* comp, BindInstr* instr);
+ virtual void VisitRelationalOp(RelationalOpComp* comp, BindInstr* instr);
- virtual void VisitStrictCompare(StrictCompareComp* comp);
- virtual void VisitEqualityCompare(EqualityCompareComp* comp);
+ virtual void VisitStrictCompare(StrictCompareComp* comp, BindInstr* instr);
+ virtual void VisitEqualityCompare(EqualityCompareComp* comp,
+ BindInstr* instr);
virtual void VisitBind(BindInstr* instr);
private:
void VisitBlocks();
- bool TryReplaceWithBinaryOp(InstanceCallComp* comp, Token::Kind op_kind);
- bool TryReplaceWithUnaryOp(InstanceCallComp* comp, Token::Kind op_kind);
+ bool TryReplaceWithBinaryOp(BindInstr* instr,
+ InstanceCallComp* comp,
+ Token::Kind op_kind);
+ bool TryReplaceWithUnaryOp(BindInstr* instr,
+ InstanceCallComp* comp,
+ Token::Kind op_kind);
- bool TryInlineInstanceGetter(InstanceCallComp* comp);
- bool TryInlineInstanceSetter(InstanceSetterComp* comp);
+ bool TryInlineInstanceGetter(BindInstr* instr,
+ InstanceCallComp* comp);
+ bool TryInlineInstanceSetter(BindInstr* instr, InstanceSetterComp* comp);
- bool TryInlineInstanceMethod(InstanceCallComp* comp);
+ bool TryInlineInstanceMethod(BindInstr* instr, InstanceCallComp* comp);
DISALLOW_COPY_AND_ASSIGN(FlowGraphOptimizer);
};
« no previous file with comments | « no previous file | runtime/vm/flow_graph_optimizer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698