| Index: runtime/vm/intermediate_language.h
|
| diff --git a/runtime/vm/intermediate_language.h b/runtime/vm/intermediate_language.h
|
| index 103f7490ed1757ce76141e079d3bfdc80bd0010d..8df33ee0dc622f68cdd65f99e2bcec317959044e 100644
|
| --- a/runtime/vm/intermediate_language.h
|
| +++ b/runtime/vm/intermediate_language.h
|
| @@ -1688,15 +1688,14 @@ FOR_EACH_COMPUTATION(DEFINE_PREDICATE)
|
| M(GraphEntry) \
|
| M(JoinEntry) \
|
| M(TargetEntry) \
|
| - M(Phi) \
|
| M(Bind) \
|
| - M(Parameter) \
|
| - M(ParallelMove) \
|
| + M(Phi) \
|
| M(Return) \
|
| M(Throw) \
|
| M(ReThrow) \
|
| - M(Goto) \
|
| M(Branch) \
|
| + M(ParallelMove) \
|
| + M(Parameter)
|
|
|
|
|
| // Forward declarations for Instruction classes.
|
| @@ -1768,7 +1767,6 @@ class Instruction : public ZoneAllocated {
|
| ASSERT(!IsReturn());
|
| ASSERT(!IsBranch());
|
| ASSERT(!IsPhi());
|
| - ASSERT(instr == NULL || !instr->IsBlockEntry());
|
| // TODO(fschneider): Also add Throw and ReThrow to the list of instructions
|
| // that do not have a successor. Currently, the graph builder will continue
|
| // to append instruction in case of a Throw inside an expression. This
|
| @@ -1782,8 +1780,6 @@ class Instruction : public ZoneAllocated {
|
| virtual intptr_t SuccessorCount() const;
|
| virtual BlockEntryInstr* SuccessorAt(intptr_t index) const;
|
|
|
| - void Goto(JoinEntryInstr* entry);
|
| -
|
| // Discover basic-block structure by performing a recursive depth first
|
| // traversal of the instruction graph reachable from this instruction. As
|
| // a side effect, the block entry instructions in the graph are assigned
|
| @@ -1862,7 +1858,8 @@ FOR_EACH_INSTRUCTION(INSTRUCTION_TYPE_CHECK)
|
|
|
| class InstructionWithInputs : public Instruction {
|
| public:
|
| - InstructionWithInputs() : locs_(NULL) { }
|
| + InstructionWithInputs() : locs_(NULL) {
|
| + }
|
|
|
| virtual LocationSummary* locs() {
|
| if (locs_ == NULL) {
|
| @@ -2295,26 +2292,6 @@ class ReThrowInstr : public InstructionWithInputs {
|
| };
|
|
|
|
|
| -class GotoInstr : public InstructionWithInputs {
|
| - public:
|
| - explicit GotoInstr(JoinEntryInstr* entry) : successor_(entry) { }
|
| -
|
| - DECLARE_INSTRUCTION(Goto)
|
| -
|
| - JoinEntryInstr* successor() const { return successor_; }
|
| - void set_successor(JoinEntryInstr* successor) { successor_ = successor; }
|
| - virtual intptr_t SuccessorCount() const;
|
| - virtual BlockEntryInstr* SuccessorAt(intptr_t index) const;
|
| -
|
| - virtual LocationSummary* MakeLocationSummary() const;
|
| -
|
| - virtual void EmitNativeCode(FlowGraphCompiler* compiler);
|
| -
|
| - private:
|
| - JoinEntryInstr* successor_;
|
| -};
|
| -
|
| -
|
| class BranchInstr : public InstructionWithInputs {
|
| public:
|
| explicit BranchInstr(Value* value)
|
|
|