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

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

Issue 1322973007: Use memory compiler in compiler_helper.dart. (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Update cf. comments. Created 5 years, 3 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) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 const VERBOSE_OPTIMIZER_HINTS = false; 7 const VERBOSE_OPTIMIZER_HINTS = false;
8 8
9 class JavaScriptItemCompilationContext extends ItemCompilationContext { 9 class JavaScriptItemCompilationContext extends ItemCompilationContext {
10 final Set<HInstruction> boundsChecked = new Set<HInstruction>(); 10 final Set<HInstruction> boundsChecked = new Set<HInstruction>();
(...skipping 1483 matching lines...) Expand 10 before | Expand all | Expand 10 after
1494 ClassElement defaultSuperclass(ClassElement element) { 1494 ClassElement defaultSuperclass(ClassElement element) {
1495 // Native classes inherit from Interceptor. 1495 // Native classes inherit from Interceptor.
1496 return element.isNative ? jsInterceptorClass : compiler.objectClass; 1496 return element.isNative ? jsInterceptorClass : compiler.objectClass;
1497 } 1497 }
1498 1498
1499 /** 1499 /**
1500 * Unit test hook that returns code of an element as a String. 1500 * Unit test hook that returns code of an element as a String.
1501 * 1501 *
1502 * Invariant: [element] must be a declaration element. 1502 * Invariant: [element] must be a declaration element.
1503 */ 1503 */
1504 String assembleCode(Element element) { 1504 String getGeneratedCode(Element element) {
1505 assert(invariant(element, element.isDeclaration)); 1505 assert(invariant(element, element.isDeclaration));
1506 var code = generatedCode[element];
1507 if (namer is jsAst.TokenFinalizer) {
1508 jsAst.TokenCounter counter = new jsAst.TokenCounter();
1509 counter.countTokens(code);
1510 // Avoid a warning.
1511 var finalizer = namer;
1512 finalizer.finalizeTokens();
1513 }
1514 return jsAst.prettyPrint(generatedCode[element], compiler).getText(); 1506 return jsAst.prettyPrint(generatedCode[element], compiler).getText();
1515 } 1507 }
1516 1508
1517 int assembleProgram() { 1509 int assembleProgram() {
1518 int programSize = emitter.assembleProgram(); 1510 int programSize = emitter.assembleProgram();
1519 noSuchMethodRegistry.emitDiagnostic(); 1511 noSuchMethodRegistry.emitDiagnostic();
1520 int totalMethodCount = generatedCode.length; 1512 int totalMethodCount = generatedCode.length;
1521 if (totalMethodCount != preMirrorsMethodCount) { 1513 if (totalMethodCount != preMirrorsMethodCount) {
1522 int mirrorCount = totalMethodCount - preMirrorsMethodCount; 1514 int mirrorCount = totalMethodCount - preMirrorsMethodCount;
1523 double percentage = (mirrorCount / totalMethodCount) * 100; 1515 double percentage = (mirrorCount / totalMethodCount) * 100;
(...skipping 1610 matching lines...) Expand 10 before | Expand all | Expand 10 after
3134 } 3126 }
3135 } 3127 }
3136 3128
3137 /// Records that [constant] is used by the element behind [registry]. 3129 /// Records that [constant] is used by the element behind [registry].
3138 class Dependency { 3130 class Dependency {
3139 final ConstantValue constant; 3131 final ConstantValue constant;
3140 final Element annotatedElement; 3132 final Element annotatedElement;
3141 3133
3142 const Dependency(this.constant, this.annotatedElement); 3134 const Dependency(this.constant, this.annotatedElement);
3143 } 3135 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/helpers/trace.dart ('k') | pkg/compiler/lib/src/js_backend/namer_names.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698