      } else if (strncmp(str, "--", 2) == 0) {
        printf("Warning: unknown flag %s.\nTry --help for options\n", str);
      } else if (strcmp(str, "-e") == 0 && i + 1 < argc) {
-@@ -3464,6 +3522,23 @@ int Shell::Main(int argc, char* argv[]) {
+@@ -3410,6 +3468,23 @@ int Shell::Main(int argc, char* argv[]) {
    isolate->SetHostInitializeImportMetaObjectCallback(
        Shell::HostInitializeImportMetaObject);
- 
+
 +  // REPRL: let parent know we are ready
 +  bool reprl_mode = true;
 +  char helo[] = "HELO";

     if (options.trace_enabled) {
       platform::tracing::TraceConfig* trace_config;
       if (options.trace_config) {
@@ -3564,8 +3653,17 @@ int Shell::Main(int argc, char* argv[]) {
     evaluation_context_.Reset();
     stringify_function_.Reset();
     CollectGarbage(isolate);

+  shmem->edges[index / 8] |= 1 << (index % 8);
+  *guard = 0;                 // if multiple threads are active, this can lead to crashes due to race conditions
+}
diff --git a/src/d8/cov.h b/src/d8/cov.h
new file mode 100644
index 0000000000..e6bdfb40b6
--- /dev/null
+++ b/src/d8/cov.h
@@ -0,0 +1,6 @@
+#ifndef V8_COV_H_
+#define V8_COV_H_
