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

Side by Side Diff: lib/compiler/implementation/js_backend/backend.dart

Issue 11304021: Add NativeEnqueuer to work with the Enqueuer. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 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 | Annotate | Revision Log
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 typedef void Recompile(Element element); 7 typedef void Recompile(Element element);
8 8
9 class ReturnInfo { 9 class ReturnInfo {
10 HType returnType; 10 HType returnType;
(...skipping 727 matching lines...) Expand 10 before | Expand all | Expand 10 after
738 compiler.codegenWorld.addBailoutCode(work, codeBuffer); 738 compiler.codegenWorld.addBailoutCode(work, codeBuffer);
739 optimizer.prepareForSpeculativeOptimizations(work, graph); 739 optimizer.prepareForSpeculativeOptimizations(work, graph);
740 optimizer.optimize(work, graph, true); 740 optimizer.optimize(work, graph, true);
741 } 741 }
742 CodeBuffer codeBuffer = generator.generateCode(work, graph); 742 CodeBuffer codeBuffer = generator.generateCode(work, graph);
743 compiler.codegenWorld.addGeneratedCode(work, codeBuffer); 743 compiler.codegenWorld.addGeneratedCode(work, codeBuffer);
744 invalidateAfterCodegen.forEach(compiler.enqueuer.codegen.eagerRecompile); 744 invalidateAfterCodegen.forEach(compiler.enqueuer.codegen.eagerRecompile);
745 invalidateAfterCodegen.clear(); 745 invalidateAfterCodegen.clear();
746 } 746 }
747 747
748 void processNativeClasses(Enqueuer world, 748
749 Collection<LibraryElement> libraries) { 749 NativeEnqueuer nativeResolutionEnqueuer(Enqueuer world) =>
750 native.processNativeClasses(world, emitter, libraries); 750 new native.NativeResolutionEnqueuer(world, compiler);
751 } 751
752 NativeEnqueuer nativeCodegenEnqueuer(Enqueuer world) =>
753 new native.NativeCodegenEnqueuer(world, compiler, emitter);
754
755 //void processNativeClasses(Enqueuer world,
756 // Collection<LibraryElement> libraries) {
757 // native.processNativeClasses(world, emitter, libraries);
758 //}
752 759
753 void assembleProgram() { 760 void assembleProgram() {
754 emitter.assembleProgram(); 761 emitter.assembleProgram();
755 } 762 }
756 763
757 /** 764 /**
758 * Documentation wanted -- johnniwinther 765 * Documentation wanted -- johnniwinther
759 * 766 *
760 * Invariant: [element] must be a declaration element. 767 * Invariant: [element] must be a declaration element.
761 */ 768 */
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after
947 print("Inferred return types:"); 954 print("Inferred return types:");
948 print("----------------------"); 955 print("----------------------");
949 dumpReturnTypes(); 956 dumpReturnTypes();
950 print(""); 957 print("");
951 print("Inferred field types:"); 958 print("Inferred field types:");
952 print("------------------------"); 959 print("------------------------");
953 fieldTypes.dump(); 960 fieldTypes.dump();
954 print(""); 961 print("");
955 } 962 }
956 } 963 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698