[dart2wasm] Remove some redundant type checks when converting strings to externrefs

Change-Id: I9fc381016369e76f9e6c718abc90a5631182a06a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/417261
Commit-Queue: Ömer Ağacan <omersa@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
diff --git a/sdk/lib/_internal/wasm/lib/js_helper.dart b/sdk/lib/_internal/wasm/lib/js_helper.dart
index 2dc82e2..dcccd19 100644
--- a/sdk/lib/_internal/wasm/lib/js_helper.dart
+++ b/sdk/lib/_internal/wasm/lib/js_helper.dart
@@ -345,10 +345,7 @@
   if (o is bool) return toJSBoolean(o);
   if (o is num) return toJSNumber(o.toDouble());
   if (o is JSValue) return o.toExternRef;
-  if (o is String) {
-    if (o is JSStringImpl) return o.toExternRef;
-    return jsStringFromDartString(o).toExternRef;
-  }
+  if (o is String) return jsStringFromDartString(o).toExternRef;
   if (o is js_types.JSArrayBase) {
     if (o is js_types.JSInt8ArrayImpl) return o.toJSArrayExternRef();
     if (o is js_types.JSUint8ArrayImpl) return o.toJSArrayExternRef();
diff --git a/sdk/lib/_internal/wasm/lib/js_interop_patch.dart b/sdk/lib/_internal/wasm/lib/js_interop_patch.dart
index bb8caec..8a2e8e1 100644
--- a/sdk/lib/_internal/wasm/lib/js_interop_patch.dart
+++ b/sdk/lib/_internal/wasm/lib/js_interop_patch.dart
@@ -571,9 +571,7 @@
   @patch
   JSString get toJS {
     final t = this;
-    return JSString._(
-      JSValue((t is JSStringImpl ? t : jsStringFromDartString(t)).toExternRef),
-    );
+    return JSString._(JSValue(jsStringFromDartString(t).toExternRef));
   }
 }