Index: src/interpreter/bytecode-generator.h |
diff --git a/src/interpreter/bytecode-generator.h b/src/interpreter/bytecode-generator.h |
index f15829dea82514ca6f8fb7ebbebbcd16e3afdaa7..51111b443d27562b4ac00e3f5bc2ac99ec66675a 100644 |
--- a/src/interpreter/bytecode-generator.h |
+++ b/src/interpreter/bytecode-generator.h |
@@ -164,6 +164,27 @@ class BytecodeGenerator final : public AstVisitor<BytecodeGenerator> { |
void VisitForTest(Expression* expr, BytecodeLabels* then_labels, |
BytecodeLabels* else_labels, TestFallthrough fallthrough); |
+ void BuildYield(int yield_id, Yield::OnException on_exception, Register value, |
+ int position); |
+ void BuildAwait(int yield_id, Yield::OnException on_exception, Register value, |
+ int position); |
+ void BuildYieldResumePoint(int yield_id, Yield::OnException on_exception, |
+ int position); |
+ |
+ void BuildTryCatch(HandlerTable::CatchPrediction catch_prediction, |
+ std::function<void()> build_try, |
+ std::function<void(Register context)> build_catch); |
+ void BuildTryFinally(std::function<void()> build_try, |
+ std::function<void()> build_finally); |
+ void BuildTryCatchFinally(HandlerTable::CatchPrediction catch_prediction, |
+ std::function<void()> build_try, |
+ std::function<void(Register context)> build_catch, |
+ std::function<void()> build_finally); |
+ |
+ // If FLAG_trace is enabled, invoke Runtime::kTraceExit with the return value |
+ // in the accumulator. The return value is restored on exit. |
+ void BuildTraceExit(); |
+ |
// Returns the runtime function id for a store to super for the function's |
// language mode. |
inline Runtime::FunctionId StoreToSuperRuntimeId(); |
@@ -219,7 +240,10 @@ class BytecodeGenerator final : public AstVisitor<BytecodeGenerator> { |
ZoneVector<BytecodeLabel> generator_resume_points_; |
Register generator_state_; |
+ Register generator_object_; |
+ Register promise_; |
int loop_depth_; |
+ HandlerTable::CatchPrediction catch_prediction_; |
Handle<Name> home_object_symbol_; |
Handle<Name> iterator_symbol_; |