| 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_;
|
|
|