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

Unified Diff: runtime/vm/flow_graph_builder.h

Issue 10912094: Reapply "Remove classes Computation and BindInstr." (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years, 3 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
Index: runtime/vm/flow_graph_builder.h
diff --git a/runtime/vm/flow_graph_builder.h b/runtime/vm/flow_graph_builder.h
index 46105e63914e375b31dab0328efb32a5cb4dc9c0..b3725e039951e9a7d44950e5cb6c32923b51d96e 100644
--- a/runtime/vm/flow_graph_builder.h
+++ b/runtime/vm/flow_graph_builder.h
@@ -126,10 +126,10 @@ class EffectGraphVisitor : public AstNodeVisitor {
// Append a graph fragment to this graph. Assumes this graph is open.
void Append(const EffectGraphVisitor& other_fragment);
- // Append a computation with one use. Assumes this graph is open.
- Value* Bind(Computation* computation);
+ // Append a definition that can have uses. Assumes this graph is open.
+ Value* Bind(Definition* definition);
// Append a computation with no uses. Assumes this graph is open.
- void Do(Computation* computation);
+ void Do(Definition* definition);
// Append a single (non-Definition, non-Entry) instruction. Assumes this
// graph is open.
void AddInstruction(Instruction* instruction);
@@ -161,8 +161,8 @@ class EffectGraphVisitor : public AstNodeVisitor {
}
protected:
- Computation* BuildStoreLocal(const LocalVariable& local, Value* value);
- Computation* BuildLoadLocal(const LocalVariable& local);
+ Definition* BuildStoreLocal(const LocalVariable& local, Value* value);
+ Definition* BuildLoadLocal(const LocalVariable& local);
// Helpers for translating parts of the AST.
void TranslateArgumentList(const ArgumentListNode& node,
@@ -195,10 +195,10 @@ class EffectGraphVisitor : public AstNodeVisitor {
Value* instantiator);
// Perform a type check on the given value.
- AssertAssignableComp* BuildAssertAssignable(intptr_t token_pos,
- Value* value,
- const AbstractType& dst_type,
- const String& dst_name);
+ AssertAssignableInstr* BuildAssertAssignable(intptr_t token_pos,
+ Value* value,
+ const AbstractType& dst_type,
+ const String& dst_name);
// Perform a type check on the given value and return it.
Value* BuildAssignableValue(intptr_t token_pos,
@@ -211,8 +211,8 @@ class EffectGraphVisitor : public AstNodeVisitor {
kResultNeeded
};
- Computation* BuildStoreIndexedValues(StoreIndexedNode* node,
- bool result_is_needed);
+ Definition* BuildStoreIndexedValues(StoreIndexedNode* node,
+ bool result_is_needed);
void BuildInstanceSetterArguments(
InstanceSetterNode* node,
@@ -245,15 +245,15 @@ class EffectGraphVisitor : public AstNodeVisitor {
void BuildStaticSetter(StaticSetterNode* node, bool result_is_needed);
- ClosureCallComp* BuildClosureCall(ClosureCallNode* node);
+ ClosureCallInstr* BuildClosureCall(ClosureCallNode* node);
Value* BuildNullValue();
private:
- // Specify a computation as the final result. Adds a Do instruction to
+ // Specify a definition of the final result. Adds the definition to
// the graph, but normally overridden in subclasses.
- virtual void ReturnComputation(Computation* computation) {
- Do(computation);
+ virtual void ReturnDefinition(Definition* definition) {
+ Do(definition);
}
// Returns true if the run-time type check can be eliminated.
@@ -308,11 +308,11 @@ class ValueGraphVisitor : public EffectGraphVisitor {
// Helper to set the output state to return a Value.
virtual void ReturnValue(Value* value) { value_ = value; }
- // Specify a computation as the final result. Adds a Bind instruction to
- // the graph and returns its temporary value (i.e., set the output
+ // Specify a definition of the final result. Adds the definition to
+ // the graph and returns a use of it (i.e., set the visitor's output
// parameters).
- virtual void ReturnComputation(Computation* computation) {
- ReturnValue(Bind(computation));
+ virtual void ReturnDefinition(Definition* definition) {
+ ReturnValue(Bind(definition));
}
virtual void BuildTypeTest(ComparisonNode* node);
@@ -363,12 +363,12 @@ class TestGraphVisitor : public ValueGraphVisitor {
// Closes the fragment and sets the output parameters.
virtual void ReturnValue(Value* value);
- // Either merges the computation into BranchInstr (Comparison, BooleanNegate)
- // or adds a Bind instruction to the graph and returns its temporary value.
- virtual void ReturnComputation(Computation* computation);
+ // Either merges the definition into a BranchInstr (Comparison, BooleanNegate)
+ // or adds the definition to the graph and returns a use of its value.
+ virtual void ReturnDefinition(Definition* definition);
- void MergeBranchWithComparison(ComparisonComp* comp);
- void MergeBranchWithNegate(BooleanNegateComp* comp);
+ void MergeBranchWithComparison(ComparisonInstr* comp);
+ void MergeBranchWithNegate(BooleanNegateInstr* comp);
// Output parameters.
TargetEntryInstr** true_successor_address_;

Powered by Google App Engine
This is Rietveld 408576698