Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(179)

Side by Side Diff: pkg/compiler/lib/src/js_backend/backend.dart

Issue 1642493002: Add type info to JSArray. (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 part of js_backend; 5 part of js_backend;
6 6
7 const VERBOSE_OPTIMIZER_HINTS = false; 7 const VERBOSE_OPTIMIZER_HINTS = false;
8 8
9 class JavaScriptItemCompilationContext extends ItemCompilationContext { 9 class JavaScriptItemCompilationContext extends ItemCompilationContext {
10 final Set<HInstruction> boundsChecked = new Set<HInstruction>(); 10 final Set<HInstruction> boundsChecked = new Set<HInstruction>();
(...skipping 1232 matching lines...) Expand 10 before | Expand all | Expand 10 after
1243 } else if (cls == coreClasses.listClass || 1243 } else if (cls == coreClasses.listClass ||
1244 cls == helpers.jsArrayClass || 1244 cls == helpers.jsArrayClass ||
1245 cls == helpers.jsFixedArrayClass || 1245 cls == helpers.jsFixedArrayClass ||
1246 cls == helpers.jsExtendableArrayClass || 1246 cls == helpers.jsExtendableArrayClass ||
1247 cls == helpers.jsUnmodifiableArrayClass) { 1247 cls == helpers.jsUnmodifiableArrayClass) {
1248 addInterceptors(helpers.jsArrayClass, enqueuer, registry); 1248 addInterceptors(helpers.jsArrayClass, enqueuer, registry);
1249 addInterceptors(helpers.jsMutableArrayClass, enqueuer, registry); 1249 addInterceptors(helpers.jsMutableArrayClass, enqueuer, registry);
1250 addInterceptors(helpers.jsFixedArrayClass, enqueuer, registry); 1250 addInterceptors(helpers.jsFixedArrayClass, enqueuer, registry);
1251 addInterceptors(helpers.jsExtendableArrayClass, enqueuer, registry); 1251 addInterceptors(helpers.jsExtendableArrayClass, enqueuer, registry);
1252 addInterceptors(helpers.jsUnmodifiableArrayClass, enqueuer, registry); 1252 addInterceptors(helpers.jsUnmodifiableArrayClass, enqueuer, registry);
1253 // Literal lists can be translated into calls to these functions:
1254 enqueueInResolution(helpers.jsArrayTypedConstructor, registry);
1255 enqueueInResolution(helpers.setRuntimeTypeInfo, registry);
1256 enqueueInResolution(helpers.getTypeArgumentByIndex, registry);
1253 } else if (cls == coreClasses.intClass || 1257 } else if (cls == coreClasses.intClass ||
1254 cls == helpers.jsIntClass) { 1258 cls == helpers.jsIntClass) {
1255 addInterceptors(helpers.jsIntClass, enqueuer, registry); 1259 addInterceptors(helpers.jsIntClass, enqueuer, registry);
1256 addInterceptors(helpers.jsPositiveIntClass, enqueuer, registry); 1260 addInterceptors(helpers.jsPositiveIntClass, enqueuer, registry);
1257 addInterceptors(helpers.jsUInt32Class, enqueuer, registry); 1261 addInterceptors(helpers.jsUInt32Class, enqueuer, registry);
1258 addInterceptors(helpers.jsUInt31Class, enqueuer, registry); 1262 addInterceptors(helpers.jsUInt31Class, enqueuer, registry);
1259 addInterceptors(helpers.jsNumberClass, enqueuer, registry); 1263 addInterceptors(helpers.jsNumberClass, enqueuer, registry);
1260 } else if (cls == coreClasses.doubleClass || 1264 } else if (cls == coreClasses.doubleClass ||
1261 cls == helpers.jsDoubleClass) { 1265 cls == helpers.jsDoubleClass) {
1262 addInterceptors(helpers.jsDoubleClass, enqueuer, registry); 1266 addInterceptors(helpers.jsDoubleClass, enqueuer, registry);
(...skipping 1905 matching lines...) Expand 10 before | Expand all | Expand 10 after
3168 } 3172 }
3169 } 3173 }
3170 3174
3171 @override 3175 @override
3172 void onImpactUsed(ImpactUseCase impactUse) { 3176 void onImpactUsed(ImpactUseCase impactUse) {
3173 if (impactUse == DeferredLoadTask.IMPACT_USE) { 3177 if (impactUse == DeferredLoadTask.IMPACT_USE) {
3174 resolution.emptyCache(); 3178 resolution.emptyCache();
3175 } 3179 }
3176 } 3180 }
3177 } 3181 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart ('k') | pkg/compiler/lib/src/js_backend/backend_impact.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698