[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));
}
}