Index: src/interpreter/interpreter-generator.cc |
diff --git a/src/interpreter/interpreter-generator.cc b/src/interpreter/interpreter-generator.cc |
index 85a15b2389b9cff57452cd0957b7e6be093fdd1a..cea72208c4a0427a5a8c3ea2f3bd3c5b6bf039a8 100644 |
--- a/src/interpreter/interpreter-generator.cc |
+++ b/src/interpreter/interpreter-generator.cc |
@@ -3438,6 +3438,20 @@ IGNITION_HANDLER(Debugger, InterpreterAssembler) { |
DEBUG_BREAK_BYTECODE_LIST(DEBUG_BREAK); |
#undef DEBUG_BREAK |
+// IncBlockCounter <slot> |
+// |
+// Increment the execution count for the given slot. Used for block code |
+// coverage. |
+IGNITION_HANDLER(IncBlockCounter, InterpreterAssembler) { |
+ Node* closure = LoadRegister(Register::function_closure()); |
+ Node* coverage_array_slot = BytecodeOperandIdxSmi(0); |
+ Node* context = GetContext(); |
+ |
+ CallRuntime(Runtime::kIncBlockCounter, context, closure, coverage_array_slot); |
+ |
+ Dispatch(); |
+} |
+ |
class InterpreterForInPrepareAssembler : public InterpreterAssembler { |
public: |
InterpreterForInPrepareAssembler(CodeAssemblerState* state, Bytecode bytecode, |