Index: pkg/compiler/lib/src/ssa/kernel_ast_adapter.dart |
diff --git a/pkg/compiler/lib/src/ssa/kernel_ast_adapter.dart b/pkg/compiler/lib/src/ssa/kernel_ast_adapter.dart |
index 4c2309efe2357e6b97e1e5c8e2c6f78d8745d342..3c85ff073254ae904a1e80ac34864caacfd91184 100644 |
--- a/pkg/compiler/lib/src/ssa/kernel_ast_adapter.dart |
+++ b/pkg/compiler/lib/src/ssa/kernel_ast_adapter.dart |
@@ -69,8 +69,11 @@ class KernelAstAdapter { |
Element get _target => _resolvedAst.element; |
ClosedWorld get _closedWorld => _compiler.closedWorld; |
+ GlobalTypeInferenceResults get _globalInferenceResults => |
+ _compiler.globalInference.results; |
+ |
GlobalTypeInferenceElementResult _resultOf(Element e) => |
- _compiler.globalInference.results.resultOf(e); |
+ _globalInferenceResults.resultOf(e); |
ConstantValue getConstantForSymbol(ir.SymbolLiteral node) { |
if (kernel.syntheticNodes.contains(node)) { |
@@ -133,7 +136,7 @@ class KernelAstAdapter { |
TypeMask returnTypeOf(ir.Member node) { |
return TypeMaskFactory.inferredReturnTypeForElement( |
- getElement(node), _compiler); |
+ getElement(node), _globalInferenceResults); |
} |
SideEffects getSideEffects(ir.Node node) { |
@@ -265,27 +268,29 @@ class KernelAstAdapter { |
mask.containsOnly( |
_closedWorld.backendClasses.constListImplementation) || |
mask.containsOnlyString(_closedWorld) || |
- backend.isTypedArray(mask)) { |
+ _closedWorld.commonMasks.isTypedArray(mask)) { |
return true; |
} |
return false; |
} |
TypeMask inferredIndexType(ir.ForInStatement forInStatement) { |
- return TypeMaskFactory.inferredTypeForSelector( |
- new Selector.index(), typeOfIterator(forInStatement), _compiler); |
+ return TypeMaskFactory.inferredTypeForSelector(new Selector.index(), |
+ typeOfIterator(forInStatement), _globalInferenceResults); |
} |
TypeMask inferredTypeOf(ir.Member node) { |
- return TypeMaskFactory.inferredTypeForElement(getElement(node), _compiler); |
+ return TypeMaskFactory.inferredTypeForElement( |
+ getElement(node), _globalInferenceResults); |
} |
TypeMask selectorTypeOf(Selector selector, TypeMask mask) { |
- return TypeMaskFactory.inferredTypeForSelector(selector, mask, _compiler); |
+ return TypeMaskFactory.inferredTypeForSelector( |
+ selector, mask, _globalInferenceResults); |
} |
TypeMask typeFromNativeBehavior(native.NativeBehavior nativeBehavior) { |
- return TypeMaskFactory.fromNativeBehavior(nativeBehavior, _compiler); |
+ return TypeMaskFactory.fromNativeBehavior(nativeBehavior, _closedWorld); |
} |
ConstantValue getConstantFor(ir.Node node) { |
@@ -359,7 +364,8 @@ class KernelAstAdapter { |
TypeMask get checkConcurrentModificationErrorReturnType => |
TypeMaskFactory.inferredReturnTypeForElement( |
- _backend.helpers.checkConcurrentModificationError, _compiler); |
+ _backend.helpers.checkConcurrentModificationError, |
+ _globalInferenceResults); |
ir.Procedure get checkSubtype => |
kernel.functions[_backend.helpers.checkSubtype]; |
@@ -370,16 +376,19 @@ class KernelAstAdapter { |
ir.Procedure get assertHelper => |
kernel.functions[_backend.helpers.assertHelper]; |
- TypeMask get throwTypeErrorType => TypeMaskFactory |
- .inferredReturnTypeForElement(_backend.helpers.throwTypeError, _compiler); |
+ TypeMask get throwTypeErrorType => |
+ TypeMaskFactory.inferredReturnTypeForElement( |
+ _backend.helpers.throwTypeError, _globalInferenceResults); |
- TypeMask get assertHelperReturnType => TypeMaskFactory |
- .inferredReturnTypeForElement(_backend.helpers.assertHelper, _compiler); |
+ TypeMask get assertHelperReturnType => |
+ TypeMaskFactory.inferredReturnTypeForElement( |
+ _backend.helpers.assertHelper, _globalInferenceResults); |
ir.Procedure get assertTest => kernel.functions[_backend.helpers.assertTest]; |
- TypeMask get assertTestReturnType => TypeMaskFactory |
- .inferredReturnTypeForElement(_backend.helpers.assertTest, _compiler); |
+ TypeMask get assertTestReturnType => |
+ TypeMaskFactory.inferredReturnTypeForElement( |
+ _backend.helpers.assertTest, _globalInferenceResults); |
ir.Procedure get assertThrow => |
kernel.functions[_backend.helpers.assertThrow]; |
@@ -387,8 +396,9 @@ class KernelAstAdapter { |
ir.Procedure get setRuntimeTypeInfo => |
kernel.functions[_backend.helpers.setRuntimeTypeInfo]; |
- TypeMask get assertThrowReturnType => TypeMaskFactory |
- .inferredReturnTypeForElement(_backend.helpers.assertThrow, _compiler); |
+ TypeMask get assertThrowReturnType => |
+ TypeMaskFactory.inferredReturnTypeForElement( |
+ _backend.helpers.assertThrow, _globalInferenceResults); |
ir.Procedure get runtimeTypeToString => |
kernel.functions[_backend.helpers.runtimeTypeToString]; |
@@ -398,7 +408,7 @@ class KernelAstAdapter { |
TypeMask get createRuntimeTypeReturnType => |
TypeMaskFactory.inferredReturnTypeForElement( |
- _backend.helpers.createRuntimeType, _compiler); |
+ _backend.helpers.createRuntimeType, _globalInferenceResults); |
ir.Class get objectClass => kernel.classes[_compiler.coreClasses.objectClass]; |