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

Unified Diff: lib/compiler/implementation/ssa/builder.dart

Issue 10363003: Compute function types together with the parameters. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: lib/compiler/implementation/ssa/builder.dart
diff --git a/lib/compiler/implementation/ssa/builder.dart b/lib/compiler/implementation/ssa/builder.dart
index 965c0b5f95bdccb4253dcfc7f876687f1262fb6e..6b2ec20771e9f4d2f41c44545bbc3f95ed3ad1dc 100644
--- a/lib/compiler/implementation/ssa/builder.dart
+++ b/lib/compiler/implementation/ssa/builder.dart
@@ -303,7 +303,7 @@ class LocalsHandler {
new ClosureTranslator(builder.compiler, builder.elements);
closureData = translator.translate(node);
- FunctionParameters params = function.computeParameters(builder.compiler);
+ FunctionSignature params = function.computeSignature(builder.compiler);
params.forEachParameter((Element element) {
HParameterValue parameter = new HParameterValue(element);
builder.add(parameter);
@@ -864,7 +864,7 @@ class SsaBuilder implements Visitor {
}
int index = 0;
- FunctionParameters parameters = constructor.computeParameters(compiler);
+ FunctionSignature parameters = constructor.computeSignature(compiler);
parameters.forEachParameter((Element parameter) {
HInstruction argument = compiledArguments[index++];
localsHandler.updateLocal(parameter, argument);
@@ -963,7 +963,7 @@ class SsaBuilder implements Visitor {
openFunction(functionElement, function);
Map<Element, HInstruction> fieldValues = new Map<Element, HInstruction>();
- FunctionParameters parameters = functionElement.computeParameters(compiler);
+ FunctionSignature parameters = functionElement.computeSignature(compiler);
parameters.forEachParameter((Element element) {
if (element.kind == ElementKind.FIELD_PARAMETER) {
// If the [element] is a field-parameter (such as [:this.x:] then
@@ -1007,7 +1007,7 @@ class SsaBuilder implements Visitor {
if (body === null) continue;
List bodyCallInputs = <HInstruction>[];
bodyCallInputs.add(newObject);
- body.functionParameters.forEachParameter((parameter) {
+ body.functionSignature.forEachParameter((parameter) {
bodyCallInputs.add(localsHandler.readLocal(parameter));
});
// TODO(ahe): The constructor name is statically resolved. See
@@ -2132,7 +2132,7 @@ class SsaBuilder implements Visitor {
node: closure);
}
FunctionElement function = element;
- FunctionParameters parameters = function.computeParameters(compiler);
+ FunctionSignature parameters = function.computeSignature(compiler);
if (parameters.optionalParameterCount !== 0) {
compiler.cancel(
'JS_TO_CLOSURE does not handle closure with optional parameters',

Powered by Google App Engine
This is Rietveld 408576698