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

Side by Side Diff: pkg/compiler/lib/src/inferrer/inferrer_engine.dart

Issue 2888413004: Add KernelCodegenWorkItem stub (Closed)
Patch Set: Add comment Created 3 years, 7 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) 2017, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2017, 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 'package:kernel/ast.dart' as ir; 5 import 'package:kernel/ast.dart' as ir;
6 6
7 import '../common.dart'; 7 import '../common.dart';
8 import '../common/names.dart'; 8 import '../common/names.dart';
9 import '../compiler.dart'; 9 import '../compiler.dart';
10 import '../constants/expressions.dart'; 10 import '../constants/expressions.dart';
(...skipping 28 matching lines...) Expand all
39 39
40 /** 40 /**
41 * An inferencing engine that computes a call graph of 41 * An inferencing engine that computes a call graph of
42 * [TypeInformation] nodes by visiting the AST of the application, and 42 * [TypeInformation] nodes by visiting the AST of the application, and
43 * then does the inferencing on the graph. 43 * then does the inferencing on the graph.
44 */ 44 */
45 class InferrerEngine { 45 class InferrerEngine {
46 final Map<Element, TypeInformation> defaultTypeOfParameter = 46 final Map<Element, TypeInformation> defaultTypeOfParameter =
47 new Map<Element, TypeInformation>(); 47 new Map<Element, TypeInformation>();
48 final WorkQueue workQueue = new WorkQueue(); 48 final WorkQueue workQueue = new WorkQueue();
49 final Element mainElement; 49 final FunctionEntity mainElement;
50 final Set<Element> analyzedElements = new Set<Element>(); 50 final Set<Element> analyzedElements = new Set<Element>();
51 51
52 /// The maximum number of times we allow a node in the graph to 52 /// The maximum number of times we allow a node in the graph to
53 /// change types. If a node reaches that limit, we give up 53 /// change types. If a node reaches that limit, we give up
54 /// inferencing on it and give it the dynamic type. 54 /// inferencing on it and give it the dynamic type.
55 final int MAX_CHANGE_COUNT = 6; 55 final int MAX_CHANGE_COUNT = 6;
56 56
57 int overallRefineCount = 0; 57 int overallRefineCount = 0;
58 int addedInGraph = 0; 58 int addedInGraph = 0;
59 59
(...skipping 1024 matching lines...) Expand 10 before | Expand all | Expand 10 after
1084 /** 1084 /**
1085 * Records that the captured variable [local] is read. 1085 * Records that the captured variable [local] is read.
1086 */ 1086 */
1087 void recordCapturedLocalRead(Local local) {} 1087 void recordCapturedLocalRead(Local local) {}
1088 1088
1089 /** 1089 /**
1090 * Records that the variable [local] is being updated. 1090 * Records that the variable [local] is being updated.
1091 */ 1091 */
1092 void recordLocalUpdate(Local local, TypeInformation type) {} 1092 void recordLocalUpdate(Local local, TypeInformation type) {}
1093 } 1093 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698