Index: src/interpreter/control-flow-builders.h |
diff --git a/src/interpreter/control-flow-builders.h b/src/interpreter/control-flow-builders.h |
index 2de3887a64be0a8a45cab19fcea6f26bf1efff61..d273c2509d5cdf35c4f65c6f1e112e03832b41bb 100644 |
--- a/src/interpreter/control-flow-builders.h |
+++ b/src/interpreter/control-flow-builders.h |
@@ -166,15 +166,23 @@ class TryCatchBuilder final : public ControlFlowBuilder { |
class TryFinallyBuilder final : public ControlFlowBuilder { |
public: |
explicit TryFinallyBuilder(BytecodeArrayBuilder* builder) |
- : ControlFlowBuilder(builder), handler_id_(builder->NewHandlerEntry()) {} |
+ : ControlFlowBuilder(builder), |
+ handler_id_(builder->NewHandlerEntry()), |
+ finalization_sites_(builder->zone()) {} |
void BeginTry(Register context); |
+ void LeaveTry(); |
void EndTry(); |
+ void BeginHandler(); |
+ void BeginFinally(); |
void EndFinally(); |
private: |
int handler_id_; |
BytecodeLabel handler_; |
+ |
+ // Unbound labels that identify jumps to the finally block in the code. |
+ ZoneVector<BytecodeLabel> finalization_sites_; |
}; |
} // namespace interpreter |