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

Side by Side Diff: pkg/compiler/lib/src/js_backend/checked_mode_helpers.dart

Issue 1413213004: Move remaining helpers to BackendHelpers (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 5 years, 1 month 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) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 part of js_backend; 5 part of js_backend;
6 6
7 class CheckedModeHelper { 7 class CheckedModeHelper {
8 final String name; 8 final String name;
9 9
10 const CheckedModeHelper(String this.name); 10 const CheckedModeHelper(String this.name);
11 11
12 Element getElement(Compiler compiler) { 12 Element getElement(Compiler compiler) {
13 JavaScriptBackend backend = compiler.backend; 13 JavaScriptBackend backend = compiler.backend;
14 return backend.findHelper(name); 14 return backend.helpers.findHelper(name);
15 } 15 }
16 16
17 jsAst.Expression generateCall(SsaCodeGenerator codegen, 17 jsAst.Expression generateCall(SsaCodeGenerator codegen,
18 HTypeConversion node) { 18 HTypeConversion node) {
19 Element helperElement = getElement(codegen.compiler); 19 Element helperElement = getElement(codegen.compiler);
20 codegen.registry.registerStaticUse(helperElement); 20 codegen.registry.registerStaticUse(helperElement);
21 List<jsAst.Expression> arguments = <jsAst.Expression>[]; 21 List<jsAst.Expression> arguments = <jsAst.Expression>[];
22 codegen.use(node.checkedInput); 22 codegen.use(node.checkedInput);
23 arguments.add(codegen.pop()); 23 arguments.add(codegen.pop());
24 generateAdditionalArguments(codegen, node, arguments); 24 generateAdditionalArguments(codegen, node, arguments);
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
114 DartType type = node.typeExpression; 114 DartType type = node.typeExpression;
115 Element element = type.element; 115 Element element = type.element;
116 jsAst.Name isField = codegen.backend.namer.operatorIs(element); 116 jsAst.Name isField = codegen.backend.namer.operatorIs(element);
117 arguments.add(js.quoteName(isField)); 117 arguments.add(js.quoteName(isField));
118 codegen.use(node.typeRepresentation); 118 codegen.use(node.typeRepresentation);
119 arguments.add(codegen.pop()); 119 arguments.add(codegen.pop());
120 jsAst.Name asField = codegen.backend.namer.substitutionName(element); 120 jsAst.Name asField = codegen.backend.namer.substitutionName(element);
121 arguments.add(js.quoteName(asField)); 121 arguments.add(js.quoteName(asField));
122 } 122 }
123 } 123 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/js_backend/backend_impact.dart ('k') | pkg/compiler/lib/src/js_backend/codegen/glue.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698