Index: pkg/compiler/lib/src/ssa/builder.dart |
diff --git a/pkg/compiler/lib/src/ssa/builder.dart b/pkg/compiler/lib/src/ssa/builder.dart |
index d096fc1a8cc21df1cd36bdc195f636b4fc4ca544..becdaa3327037076712fb53aab1ed350720e8077 100644 |
--- a/pkg/compiler/lib/src/ssa/builder.dart |
+++ b/pkg/compiler/lib/src/ssa/builder.dart |
@@ -1009,7 +1009,7 @@ class SsaAstGraphBuilder extends ast.Visitor |
localsHandler.scopeInfo = newScopeInfo; |
if (resolvedAst.kind == ResolvedAstKind.PARSED) { |
localsHandler.enterScope( |
- closureDataLookup.getClosureAnalysisInfo(resolvedAst.node), |
+ closureDataLookup.getClosureScope(resolvedAst.node), |
forGenerativeConstructorBody: callee.isGenerativeConstructorBody); |
} |
buildInitializers(callee, constructorResolvedAsts, fieldValues); |
@@ -1365,8 +1365,7 @@ class SsaAstGraphBuilder extends ast.Visitor |
// If there are locals that escape (ie mutated in closures), we |
// pass the box to the constructor. |
// The box must be passed before any type variable. |
- ClosureAnalysisInfo scopeData = |
- closureDataLookup.getClosureAnalysisInfo(node); |
+ ClosureScope scopeData = closureDataLookup.getClosureScope(node); |
if (scopeData.requiresContextBox) { |
bodyCallInputs.add(localsHandler.readLocal(scopeData.context)); |
} |
@@ -1427,7 +1426,7 @@ class SsaAstGraphBuilder extends ast.Visitor |
localsHandler.startFunction( |
element, |
closureDataLookup.getScopeInfo(element), |
- closureDataLookup.getClosureAnalysisInfo(node), |
+ closureDataLookup.getClosureScope(node), |
parameters, |
isGenerativeConstructorBody: element.isGenerativeConstructorBody); |
close(new HGoto()).addSuccessor(block); |
@@ -1461,8 +1460,8 @@ class SsaAstGraphBuilder extends ast.Visitor |
ParameterElement parameterElement = _parameterElement; |
if (element.isGenerativeConstructorBody) { |
if (closureDataLookup |
- .getClosureAnalysisInfo(node) |
- .isCaptured(parameterElement)) { |
+ .getClosureScope(node) |
+ .isBoxed(parameterElement)) { |
// The parameter will be a field in the box passed as the |
// last parameter. So no need to have it. |
return; |
@@ -1705,7 +1704,7 @@ class SsaAstGraphBuilder extends ast.Visitor |
loopHandler.handleLoop( |
node, |
- closureDataLookup.getClosureRepresentationInfoForLoop(node), |
+ closureDataLookup.getLoopClosureScope(node), |
elements.getTargetDefinition(node), |
buildInitializer, |
buildCondition, |
@@ -1720,13 +1719,8 @@ class SsaAstGraphBuilder extends ast.Visitor |
return popBoolified(); |
} |
- loopHandler.handleLoop( |
- node, |
- closureDataLookup.getClosureRepresentationInfoForLoop(node), |
- elements.getTargetDefinition(node), |
- () {}, |
- buildCondition, |
- () {}, () { |
+ loopHandler.handleLoop(node, closureDataLookup.getLoopClosureScope(node), |
+ elements.getTargetDefinition(node), () {}, buildCondition, () {}, () { |
visit(node.body); |
}); |
} |
@@ -1734,8 +1728,7 @@ class SsaAstGraphBuilder extends ast.Visitor |
visitDoWhile(ast.DoWhile node) { |
assert(isReachable); |
LocalsHandler savedLocals = new LocalsHandler.from(localsHandler); |
- var loopClosureInfo = |
- closureDataLookup.getClosureRepresentationInfoForLoop(node); |
+ var loopClosureInfo = closureDataLookup.getLoopClosureScope(node); |
localsHandler.startLoop(loopClosureInfo); |
loopDepth++; |
JumpTarget target = elements.getTargetDefinition(node); |
@@ -5445,7 +5438,7 @@ class SsaAstGraphBuilder extends ast.Visitor |
buildProtectedByFinally(() { |
loopHandler.handleLoop( |
node, |
- closureDataLookup.getClosureRepresentationInfoForLoop(node), |
+ closureDataLookup.getLoopClosureScope(node), |
elements.getTargetDefinition(node), |
buildInitializer, |
buildCondition, |
@@ -5518,7 +5511,7 @@ class SsaAstGraphBuilder extends ast.Visitor |
loopHandler.handleLoop( |
node, |
- closureDataLookup.getClosureRepresentationInfoForLoop(node), |
+ closureDataLookup.getLoopClosureScope(node), |
elements.getTargetDefinition(node), |
buildInitializer, |
buildCondition, |
@@ -5643,7 +5636,7 @@ class SsaAstGraphBuilder extends ast.Visitor |
loopHandler.handleLoop( |
node, |
- closureDataLookup.getClosureRepresentationInfoForLoop(node), |
+ closureDataLookup.getLoopClosureScope(node), |
elements.getTargetDefinition(node), |
buildInitializer, |
buildCondition, |
@@ -5998,14 +5991,8 @@ class SsaAstGraphBuilder extends ast.Visitor |
} |
void buildLoop() { |
- loopHandler.handleLoop( |
- node, |
- closureDataLookup.getClosureRepresentationInfoForLoop(node), |
- switchTarget, |
- () {}, |
- buildCondition, |
- () {}, |
- buildSwitch); |
+ loopHandler.handleLoop(node, closureDataLookup.getLoopClosureScope(node), |
+ switchTarget, () {}, buildCondition, () {}, buildSwitch); |
} |
if (hasDefault) { |