diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8c27cf3..90a0b28 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,10 @@
+## 2.0.0-dev.64.2
+
+### Dart VM
+
+Restore various flags for the VM that are needed by internal users:
+https://dart.googlesource.com/sdk/+/544358304d9c49f739c9853256be5135811cdd9d
+
 ## 2.0.0-dev.64.1
 
 ### Language
diff --git a/runtime/bin/main_options.cc b/runtime/bin/main_options.cc
index e162713..cf88c86 100644
--- a/runtime/bin/main_options.cc
+++ b/runtime/bin/main_options.cc
@@ -356,7 +356,6 @@
       if ((strncmp(argv[i], kChecked, strlen(kChecked)) == 0) ||
           (strncmp(argv[i], kCheckedFull, strlen(kCheckedFull)) == 0)) {
         checked_set = true;
-        vm_options->AddArgument(kCheckedFull);
         i++;
         continue;  // '-c' is not a VM flag so don't add to vm options.
       } else if (!OptionProcessor::IsValidFlag(argv[i], kPrefix, kPrefixLen)) {
@@ -449,9 +448,11 @@
         " run using a snapshot is invalid.\n");
     return -1;
   }
-  if (checked_set && Options::preview_dart_2()) {
-    Log::PrintErr("Flags --checked and --preview-dart-2 are not compatible.\n");
-    return -1;
+  if (checked_set) {
+    vm_options->AddArgument("--enable-asserts");
+    if (Options::no_preview_dart_2()) {
+      vm_options->AddArgument("--enable-type-checks");
+    }
   }
 
   // If --snapshot is given without --snapshot-kind, default to script snapshot.
diff --git a/runtime/bin/main_options.h b/runtime/bin/main_options.h
index 0592ffa..54ad3c8 100644
--- a/runtime/bin/main_options.h
+++ b/runtime/bin/main_options.h
@@ -43,7 +43,8 @@
   V(short_socket_read, short_socket_read)                                      \
   V(short_socket_write, short_socket_write)                                    \
   V(disable_exit, exit_disabled)                                               \
-  V(no_preview_dart_2, no_preview_dart_2)
+  V(no_preview_dart_2, no_preview_dart_2)                                      \
+  V(preview_dart_2, nop_option)
 
 // Boolean flags that have a short form.
 #define SHORT_BOOL_OPTIONS_LIST(V)                                             \
diff --git a/tools/VERSION b/tools/VERSION
index c3f1dcf..d2d951e 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -28,4 +28,4 @@
 MINOR 0
 PATCH 0
 PRERELEASE 64
-PRERELEASE_PATCH 1
+PRERELEASE_PATCH 2
