Index: src/interpreter/bytecode-generator.h |
diff --git a/src/interpreter/bytecode-generator.h b/src/interpreter/bytecode-generator.h |
index 579365952b9fae9bd4fc51e4c902c0b8bd0c4133..1501a854c50fcc2e04776912a22e7b77b6f892fc 100644 |
--- a/src/interpreter/bytecode-generator.h |
+++ b/src/interpreter/bytecode-generator.h |
@@ -51,6 +51,7 @@ class BytecodeGenerator final : public AstVisitor<BytecodeGenerator> { |
class ExpressionResultScope; |
class EffectResultScope; |
class GlobalDeclarationsBuilder; |
+ class BlockCoverageBuilder; |
class RegisterAllocationScope; |
class TestResultScope; |
class ValueResultScope; |
@@ -178,6 +179,9 @@ class BytecodeGenerator final : public AstVisitor<BytecodeGenerator> { |
void BuildLoadPropertyKey(LiteralProperty* property, Register out_reg); |
+ int AllocateBlockCoverageSlotIfEnabled(SourceRange range); |
+ void BuildIncrementBlockCoverageCounterIfEnabled(int coverage_array_slot); |
+ |
// Visitors for obtaining expression result in the accumulator, in a |
// register, or just getting the effect. Some visitors return a TypeHint which |
// specifies the type of the result of the visited expression. |
@@ -244,6 +248,7 @@ class BytecodeGenerator final : public AstVisitor<BytecodeGenerator> { |
Scope* current_scope_; |
GlobalDeclarationsBuilder* globals_builder_; |
+ BlockCoverageBuilder* block_coverage_builder_; |
ZoneVector<GlobalDeclarationsBuilder*> global_declarations_; |
ZoneVector<std::pair<FunctionLiteral*, size_t>> function_literals_; |
ZoneVector<std::pair<NativeFunctionLiteral*, size_t>> |