Skip to content

Commit 77cd774

Browse files
fishythefishCommit Queue
authored andcommitted
[dart2js] Remove legacy type test specializations.
Bug: #60327 Change-Id: Ie9b1b86c0f7695e0b9d377004a082f56f44bd57f Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/416160 Reviewed-by: Stephen Adams <[email protected]> Reviewed-by: Nate Biggs <[email protected]>
1 parent 549639d commit 77cd774

26 files changed

+21
-648
lines changed

pkg/compiler/lib/src/common/elements.dart

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1083,41 +1083,29 @@ abstract class CommonElements {
10831083

10841084
FunctionEntity get specializedAsBool => _findRtiFunction('_asBool');
10851085

1086-
FunctionEntity get specializedAsBoolLegacy => _findRtiFunction('_asBoolS');
1087-
10881086
FunctionEntity get specializedAsBoolNullable => _findRtiFunction('_asBoolQ');
10891087

10901088
FunctionEntity get specializedAsDouble => _findRtiFunction('_asDouble');
10911089

1092-
FunctionEntity get specializedAsDoubleLegacy =>
1093-
_findRtiFunction('_asDoubleS');
1094-
10951090
FunctionEntity get specializedAsDoubleNullable =>
10961091
_findRtiFunction('_asDoubleQ');
10971092

10981093
FunctionEntity get specializedIsInt => _findRtiFunction('_isInt');
10991094

11001095
FunctionEntity get specializedAsInt => _findRtiFunction('_asInt');
11011096

1102-
FunctionEntity get specializedAsIntLegacy => _findRtiFunction('_asIntS');
1103-
11041097
FunctionEntity get specializedAsIntNullable => _findRtiFunction('_asIntQ');
11051098

11061099
FunctionEntity get specializedIsNum => _findRtiFunction('_isNum');
11071100

11081101
FunctionEntity get specializedAsNum => _findRtiFunction('_asNum');
11091102

1110-
FunctionEntity get specializedAsNumLegacy => _findRtiFunction('_asNumS');
1111-
11121103
FunctionEntity get specializedAsNumNullable => _findRtiFunction('_asNumQ');
11131104

11141105
FunctionEntity get specializedIsString => _findRtiFunction('_isString');
11151106

11161107
FunctionEntity get specializedAsString => _findRtiFunction('_asString');
11171108

1118-
FunctionEntity get specializedAsStringLegacy =>
1119-
_findRtiFunction('_asStringS');
1120-
11211109
FunctionEntity get specializedAsStringNullable =>
11221110
_findRtiFunction('_asStringQ');
11231111

pkg/compiler/lib/src/js_backend/backend_impact.dart

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -559,23 +559,18 @@ class BackendImpacts {
559559
// Specialized checks.
560560
_commonElements.specializedIsBool,
561561
_commonElements.specializedAsBool,
562-
_commonElements.specializedAsBoolLegacy,
563562
_commonElements.specializedAsBoolNullable,
564563
// no specializedIsDouble.
565564
_commonElements.specializedAsDouble,
566-
_commonElements.specializedAsDoubleLegacy,
567565
_commonElements.specializedAsDoubleNullable,
568566
_commonElements.specializedIsInt,
569567
_commonElements.specializedAsInt,
570-
_commonElements.specializedAsIntLegacy,
571568
_commonElements.specializedAsIntNullable,
572569
_commonElements.specializedIsNum,
573570
_commonElements.specializedAsNum,
574-
_commonElements.specializedAsNumLegacy,
575571
_commonElements.specializedAsNumNullable,
576572
_commonElements.specializedIsString,
577573
_commonElements.specializedAsString,
578-
_commonElements.specializedAsStringLegacy,
579574
_commonElements.specializedAsStringNullable,
580575
_commonElements.specializedIsTop,
581576
_commonElements.specializedAsTop,

pkg/compiler/lib/src/js_backend/specialized_checks.dart

Lines changed: 2 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -135,26 +135,15 @@ class SpecializedChecks {
135135
static FunctionEntity? findAsCheck(
136136
DartType dartType,
137137
JCommonElements commonElements,
138-
bool useLegacySubtyping,
139138
) {
140139
if (dartType is InterfaceType) {
141140
if (dartType.typeArguments.isNotEmpty) return null;
142-
return _findAsCheck(
143-
dartType.element,
144-
commonElements,
145-
nullable: false,
146-
legacy: useLegacySubtyping,
147-
);
141+
return _findAsCheck(dartType.element, commonElements, nullable: false);
148142
}
149143
if (dartType is NullableType) {
150144
DartType baseType = dartType.baseType;
151145
if (baseType is InterfaceType && baseType.typeArguments.isEmpty) {
152-
return _findAsCheck(
153-
baseType.element,
154-
commonElements,
155-
nullable: true,
156-
legacy: false,
157-
);
146+
return _findAsCheck(baseType.element, commonElements, nullable: true);
158147
}
159148
return null;
160149
}
@@ -180,31 +169,26 @@ class SpecializedChecks {
180169
ClassEntity element,
181170
JCommonElements commonElements, {
182171
required bool nullable,
183-
required bool legacy,
184172
}) {
185173
if (element == commonElements.jsStringClass ||
186174
element == commonElements.stringClass) {
187-
if (legacy) return commonElements.specializedAsStringLegacy;
188175
if (nullable) return commonElements.specializedAsStringNullable;
189176
return commonElements.specializedAsString;
190177
}
191178

192179
if (element == commonElements.jsBoolClass ||
193180
element == commonElements.boolClass) {
194-
if (legacy) return commonElements.specializedAsBoolLegacy;
195181
if (nullable) return commonElements.specializedAsBoolNullable;
196182
return commonElements.specializedAsBool;
197183
}
198184

199185
if (element == commonElements.doubleClass) {
200-
if (legacy) return commonElements.specializedAsDoubleLegacy;
201186
if (nullable) return commonElements.specializedAsDoubleNullable;
202187
return commonElements.specializedAsDouble;
203188
}
204189

205190
if (element == commonElements.jsNumberClass ||
206191
element == commonElements.numClass) {
207-
if (legacy) return commonElements.specializedAsNumLegacy;
208192
if (nullable) return commonElements.specializedAsNumNullable;
209193
return commonElements.specializedAsNum;
210194
}
@@ -214,7 +198,6 @@ class SpecializedChecks {
214198
element == commonElements.jsUInt32Class ||
215199
element == commonElements.jsUInt31Class ||
216200
element == commonElements.jsPositiveIntClass) {
217-
if (legacy) return commonElements.specializedAsIntLegacy;
218201
if (nullable) return commonElements.specializedAsIntNullable;
219202
return commonElements.specializedAsInt;
220203
}

pkg/compiler/lib/src/ssa/optimize.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2611,7 +2611,6 @@ class SsaInstructionSimplifier extends HBaseVisitor<HInstruction>
26112611
final specializedCheck = SpecializedChecks.findAsCheck(
26122612
node.checkedTypeExpression,
26132613
_closedWorld.commonElements,
2614-
_options.useLegacySubtyping,
26152614
);
26162615
if (specializedCheck != null) {
26172616
AbstractValueWithPrecision checkedType = _abstractValueDomain

pkg/compiler/test/dump_info/data/closures.dart

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -149,20 +149,15 @@ class Class1<T> {
149149
{"id":"function/dart:_rti::_arrayInstanceType"},
150150
{"id":"function/dart:_rti::_asBool"},
151151
{"id":"function/dart:_rti::_asBoolQ"},
152-
{"id":"function/dart:_rti::_asBoolS"},
153152
{"id":"function/dart:_rti::_asDouble"},
154153
{"id":"function/dart:_rti::_asDoubleQ"},
155-
{"id":"function/dart:_rti::_asDoubleS"},
156154
{"id":"function/dart:_rti::_asInt"},
157155
{"id":"function/dart:_rti::_asIntQ"},
158-
{"id":"function/dart:_rti::_asIntS"},
159156
{"id":"function/dart:_rti::_asNum"},
160157
{"id":"function/dart:_rti::_asNumQ"},
161-
{"id":"function/dart:_rti::_asNumS"},
162158
{"id":"function/dart:_rti::_asObject"},
163159
{"id":"function/dart:_rti::_asString"},
164160
{"id":"function/dart:_rti::_asStringQ"},
165-
{"id":"function/dart:_rti::_asStringS"},
166161
{"id":"function/dart:_rti::_asTop"},
167162
{"id":"function/dart:_rti::_generalAsCheckImplementation"},
168163
{"id":"function/dart:_rti::_generalIsTestImplementation"},

pkg/compiler/test/dump_info/data_new/mixin_with_tearoff_test.dart

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -151,20 +151,15 @@ mixin Mixin {
151151
{"id":"function/dart:_rti::_arrayInstanceType"},
152152
{"id":"function/dart:_rti::_asBool"},
153153
{"id":"function/dart:_rti::_asBoolQ"},
154-
{"id":"function/dart:_rti::_asBoolS"},
155154
{"id":"function/dart:_rti::_asDouble"},
156155
{"id":"function/dart:_rti::_asDoubleQ"},
157-
{"id":"function/dart:_rti::_asDoubleS"},
158156
{"id":"function/dart:_rti::_asInt"},
159157
{"id":"function/dart:_rti::_asIntQ"},
160-
{"id":"function/dart:_rti::_asIntS"},
161158
{"id":"function/dart:_rti::_asNum"},
162159
{"id":"function/dart:_rti::_asNumQ"},
163-
{"id":"function/dart:_rti::_asNumS"},
164160
{"id":"function/dart:_rti::_asObject"},
165161
{"id":"function/dart:_rti::_asString"},
166162
{"id":"function/dart:_rti::_asStringQ"},
167-
{"id":"function/dart:_rti::_asStringS"},
168163
{"id":"function/dart:_rti::_asTop"},
169164
{"id":"function/dart:_rti::_generalAsCheckImplementation"},
170165
{"id":"function/dart:_rti::_generalIsTestImplementation"},
@@ -239,20 +234,15 @@ mixin Mixin {
239234
{"id":"function/dart:_rti::_arrayInstanceType"},
240235
{"id":"function/dart:_rti::_asBool"},
241236
{"id":"function/dart:_rti::_asBoolQ"},
242-
{"id":"function/dart:_rti::_asBoolS"},
243237
{"id":"function/dart:_rti::_asDouble"},
244238
{"id":"function/dart:_rti::_asDoubleQ"},
245-
{"id":"function/dart:_rti::_asDoubleS"},
246239
{"id":"function/dart:_rti::_asInt"},
247240
{"id":"function/dart:_rti::_asIntQ"},
248-
{"id":"function/dart:_rti::_asIntS"},
249241
{"id":"function/dart:_rti::_asNum"},
250242
{"id":"function/dart:_rti::_asNumQ"},
251-
{"id":"function/dart:_rti::_asNumS"},
252243
{"id":"function/dart:_rti::_asObject"},
253244
{"id":"function/dart:_rti::_asString"},
254245
{"id":"function/dart:_rti::_asStringQ"},
255-
{"id":"function/dart:_rti::_asStringS"},
256246
{"id":"function/dart:_rti::_asTop"},
257247
{"id":"function/dart:_rti::_generalAsCheckImplementation"},
258248
{"id":"function/dart:_rti::_generalIsTestImplementation"},

pkg/compiler/test/impact/data/as.dart

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -17,20 +17,15 @@ main() {
1717
_arrayInstanceType(1),
1818
_asBool(1),
1919
_asBoolQ(1),
20-
_asBoolS(1),
2120
_asDouble(1),
2221
_asDoubleQ(1),
23-
_asDoubleS(1),
2422
_asInt(1),
2523
_asIntQ(1),
26-
_asIntS(1),
2724
_asNum(1),
2825
_asNumQ(1),
29-
_asNumS(1),
3026
_asObject(1),
3127
_asString(1),
3228
_asStringQ(1),
33-
_asStringS(1),
3429
_asTop(1),
3530
_generalAsCheckImplementation(1),
3631
_generalIsTestImplementation(1),
@@ -68,20 +63,15 @@ explicitAs(String? i) {
6863
_arrayInstanceType(1),
6964
_asBool(1),
7065
_asBoolQ(1),
71-
_asBoolS(1),
7266
_asDouble(1),
7367
_asDoubleQ(1),
74-
_asDoubleS(1),
7568
_asInt(1),
7669
_asIntQ(1),
77-
_asIntS(1),
7870
_asNum(1),
7971
_asNumQ(1),
80-
_asNumS(1),
8172
_asObject(1),
8273
_asString(1),
8374
_asStringQ(1),
84-
_asStringS(1),
8575
_asTop(1),
8676
_generalAsCheckImplementation(1),
8777
_generalIsTestImplementation(1),
@@ -119,20 +109,15 @@ String implicitAs(String? i) {
119109
_arrayInstanceType(1),
120110
_asBool(1),
121111
_asBoolQ(1),
122-
_asBoolS(1),
123112
_asDouble(1),
124113
_asDoubleQ(1),
125-
_asDoubleS(1),
126114
_asInt(1),
127115
_asIntQ(1),
128-
_asIntS(1),
129116
_asNum(1),
130117
_asNumQ(1),
131-
_asNumS(1),
132118
_asObject(1),
133119
_asString(1),
134120
_asStringQ(1),
135-
_asStringS(1),
136121
_asTop(1),
137122
_generalAsCheckImplementation(1),
138123
_generalIsTestImplementation(1),

pkg/compiler/test/impact/data/async.dart

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -204,20 +204,15 @@ testAnonymousAsyncStar() {
204204
_arrayInstanceType(1),
205205
_asBool(1),
206206
_asBoolQ(1),
207-
_asBoolS(1),
208207
_asDouble(1),
209208
_asDoubleQ(1),
210-
_asDoubleS(1),
211209
_asInt(1),
212210
_asIntQ(1),
213-
_asIntS(1),
214211
_asNum(1),
215212
_asNumQ(1),
216-
_asNumS(1),
217213
_asObject(1),
218214
_asString(1),
219215
_asStringQ(1),
220-
_asStringS(1),
221216
_asTop(1),
222217
_asyncAwait(2),
223218
_asyncRethrow(2),
@@ -264,20 +259,15 @@ testAsyncForIn(o) async {
264259
_arrayInstanceType(1),
265260
_asBool(1),
266261
_asBoolQ(1),
267-
_asBoolS(1),
268262
_asDouble(1),
269263
_asDoubleQ(1),
270-
_asDoubleS(1),
271264
_asInt(1),
272265
_asIntQ(1),
273-
_asIntS(1),
274266
_asNum(1),
275267
_asNumQ(1),
276-
_asNumS(1),
277268
_asObject(1),
278269
_asString(1),
279270
_asStringQ(1),
280-
_asStringS(1),
281271
_asTop(1),
282272
_asyncAwait(2),
283273
_asyncRethrow(2),

pkg/compiler/test/impact/data/classes.dart

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -145,20 +145,15 @@ class ForwardingConstructorTypedSuperClass {
145145
_arrayInstanceType(1),
146146
_asBool(1),
147147
_asBoolQ(1),
148-
_asBoolS(1),
149148
_asDouble(1),
150149
_asDoubleQ(1),
151-
_asDoubleS(1),
152150
_asInt(1),
153151
_asIntQ(1),
154-
_asIntS(1),
155152
_asNum(1),
156153
_asNumQ(1),
157-
_asNumS(1),
158154
_asObject(1),
159155
_asString(1),
160156
_asStringQ(1),
161-
_asStringS(1),
162157
_asTop(1),
163158
_generalAsCheckImplementation(1),
164159
_generalIsTestImplementation(1),
@@ -201,20 +196,15 @@ class ForwardingConstructorGenericSuperClass<T> {
201196
_arrayInstanceType(1),
202197
_asBool(1),
203198
_asBoolQ(1),
204-
_asBoolS(1),
205199
_asDouble(1),
206200
_asDoubleQ(1),
207-
_asDoubleS(1),
208201
_asInt(1),
209202
_asIntQ(1),
210-
_asIntS(1),
211203
_asNum(1),
212204
_asNumQ(1),
213-
_asNumS(1),
214205
_asObject(1),
215206
_asString(1),
216207
_asStringQ(1),
217-
_asStringS(1),
218208
_asTop(1),
219209
_generalAsCheckImplementation(1),
220210
_generalIsTestImplementation(1),
@@ -285,20 +275,15 @@ testEnum() => Enum.A;
285275
_arrayInstanceType(1),
286276
_asBool(1),
287277
_asBoolQ(1),
288-
_asBoolS(1),
289278
_asDouble(1),
290279
_asDoubleQ(1),
291-
_asDoubleS(1),
292280
_asInt(1),
293281
_asIntQ(1),
294-
_asIntS(1),
295282
_asNum(1),
296283
_asNumQ(1),
297-
_asNumS(1),
298284
_asObject(1),
299285
_asString(1),
300286
_asStringQ(1),
301-
_asStringS(1),
302287
_asTop(1),
303288
_generalAsCheckImplementation(1),
304289
_generalIsTestImplementation(1),
@@ -391,20 +376,15 @@ class GenericClass<X, Y> {
391376
_arrayInstanceType(1),
392377
_asBool(1),
393378
_asBoolQ(1),
394-
_asBoolS(1),
395379
_asDouble(1),
396380
_asDoubleQ(1),
397-
_asDoubleS(1),
398381
_asInt(1),
399382
_asIntQ(1),
400-
_asIntS(1),
401383
_asNum(1),
402384
_asNumQ(1),
403-
_asNumS(1),
404385
_asObject(1),
405386
_asString(1),
406387
_asStringQ(1),
407-
_asStringS(1),
408388
_asTop(1),
409389
_generalAsCheckImplementation(1),
410390
_generalIsTestImplementation(1),

0 commit comments

Comments
 (0)