Index: src/compiler/schedule.h |
diff --git a/src/compiler/schedule.h b/src/compiler/schedule.h |
index 5a5a22beb24fb43f33143db995aa5257a01647df..d940e541db8f747abbe7cc86c9fdc61bbbfa1690 100644 |
--- a/src/compiler/schedule.h |
+++ b/src/compiler/schedule.h |
@@ -30,13 +30,15 @@ class BasicBlock FINAL : public ZoneObject { |
public: |
// Possible control nodes that can end a block. |
enum Control { |
- kNone, // Control not initialized yet. |
- kGoto, // Goto a single successor block. |
- kCall, // Call with continuation as first successor, exception second. |
- kBranch, // Branch if true to first successor, otherwise second. |
- kSwitch, // Table dispatch to one of the successor blocks. |
- kReturn, // Return a value from this method. |
- kThrow // Throw an exception. |
+ kNone, // Control not initialized yet. |
+ kGoto, // Goto a single successor block. |
+ kCall, // Call with continuation as first successor, exception |
+ // second. |
+ kBranch, // Branch if true to first successor, otherwise second. |
+ kSwitch, // Table dispatch to one of the successor blocks. |
+ kDeoptimize, // Return a value from this method. |
+ kReturn, // Return a value from this method. |
+ kThrow // Throw an exception. |
}; |
class Id { |
@@ -215,6 +217,9 @@ class Schedule FINAL : public ZoneObject { |
void AddSwitch(BasicBlock* block, Node* sw, BasicBlock** succ_blocks, |
size_t succ_count); |
+ // BasicBlock building: add a deoptimize at the end of {block}. |
+ void AddDeoptimize(BasicBlock* block, Node* input); |
+ |
// BasicBlock building: add a return at the end of {block}. |
void AddReturn(BasicBlock* block, Node* input); |