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

Side by Side Diff: pkg/compiler/lib/src/ssa/builder.dart

Issue 2984183002: dart2js-kernel: Recognize some List constructors. (Closed)
Patch Set: Created 3 years, 4 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 import 'dart:collection'; 5 import 'dart:collection';
6 6
7 import 'package:js_runtime/shared/embedded_names.dart'; 7 import 'package:js_runtime/shared/embedded_names.dart';
8 8
9 import '../closure.dart'; 9 import '../closure.dart';
10 import '../common.dart'; 10 import '../common.dart';
(...skipping 2383 matching lines...) Expand 10 before | Expand all | Expand 10 after
2394 } 2394 }
2395 } 2395 }
2396 2396
2397 HInstruction invokeInterceptor(HInstruction receiver) { 2397 HInstruction invokeInterceptor(HInstruction receiver) {
2398 HInterceptor interceptor = 2398 HInterceptor interceptor =
2399 new HInterceptor(receiver, commonMasks.nonNullType); 2399 new HInterceptor(receiver, commonMasks.nonNullType);
2400 add(interceptor); 2400 add(interceptor);
2401 return interceptor; 2401 return interceptor;
2402 } 2402 }
2403 2403
2404 HLiteralList buildLiteralList(List<HInstruction> inputs) {
2405 return new HLiteralList(inputs, commonMasks.extendableArrayType);
2406 }
2407
2408 @override 2404 @override
2409 void visitAs(ast.Send node, ast.Node expression, ResolutionDartType type, _) { 2405 void visitAs(ast.Send node, ast.Node expression, ResolutionDartType type, _) {
2410 HInstruction expressionInstruction = visitAndPop(expression); 2406 HInstruction expressionInstruction = visitAndPop(expression);
2411 if (type.isMalformed) { 2407 if (type.isMalformed) {
2412 if (type is MalformedType) { 2408 if (type is MalformedType) {
2413 ErroneousElement element = type.element; 2409 ErroneousElement element = type.element;
2414 generateTypeError(node, element.message); 2410 generateTypeError(node, element.message);
2415 } else { 2411 } else {
2416 assert(type is MethodTypeVariableType); 2412 assert(type is MethodTypeVariableType);
2417 stack.add(expressionInstruction); 2413 stack.add(expressionInstruction);
(...skipping 4425 matching lines...) Expand 10 before | Expand all | Expand 10 after
6843 this.oldReturnLocal, 6839 this.oldReturnLocal,
6844 this.oldReturnType, 6840 this.oldReturnType,
6845 this.oldResolvedAst, 6841 this.oldResolvedAst,
6846 this.oldStack, 6842 this.oldStack,
6847 this.oldLocalsHandler, 6843 this.oldLocalsHandler,
6848 this.inTryStatement, 6844 this.inTryStatement,
6849 this.allFunctionsCalledOnce, 6845 this.allFunctionsCalledOnce,
6850 this.oldElementInferenceResults) 6846 this.oldElementInferenceResults)
6851 : super(function); 6847 : super(function);
6852 } 6848 }
OLDNEW
« no previous file with comments | « no previous file | pkg/compiler/lib/src/ssa/builder_kernel.dart » ('j') | pkg/compiler/lib/src/ssa/builder_kernel.dart » ('J')

Powered by Google App Engine
This is Rietveld 408576698