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

Unified Diff: pkg/compiler/lib/src/ssa/builder_kernel.dart

Issue 2265413002: try to build Kernel IR for SSA builder (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 4 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
« no previous file with comments | « pkg/compiler/lib/src/kernel/kernel_visitor.dart ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/compiler/lib/src/ssa/builder_kernel.dart
diff --git a/pkg/compiler/lib/src/ssa/builder_kernel.dart b/pkg/compiler/lib/src/ssa/builder_kernel.dart
index 6f600c4d1db9cb546a23ad454a6be0f1bb6b9412..5c82e26af290c5a9a171d9803643963b1b098197 100644
--- a/pkg/compiler/lib/src/ssa/builder_kernel.dart
+++ b/pkg/compiler/lib/src/ssa/builder_kernel.dart
@@ -4,9 +4,12 @@
import '../common/codegen.dart' show CodegenWorkItem;
import '../common/tasks.dart' show CompilerTask;
+import '../elements/elements.dart';
import '../io/source_information.dart';
import '../js_backend/backend.dart' show JavaScriptBackend, FunctionCompiler;
-import '../elements/elements.dart';
+import '../kernel/kernel.dart';
+import '../kernel/kernel_visitor.dart';
+import '../resolution/tree_elements.dart';
import 'nodes.dart';
@@ -22,8 +25,17 @@ class SsaKernelBuilderTask extends CompilerTask {
HGraph build(CodegenWorkItem work) {
return measure(() {
- Element element = work.element.implementation;
- throw "unimplemented";
+ AstElement element = work.element.implementation;
+ TreeElements treeElements = work.resolvedAst.elements;
+ Kernel kernel = new Kernel(backend.compiler);
+ KernelVisitor visitor = new KernelVisitor(element, treeElements, kernel);
+ IrFunction function;
+ try {
+ function = visitor.buildFunction();
+ } catch(e) {
+ throw "Failed to convert to Kernel IR: $e";
+ }
+ throw "Successfully converted to Kernel IR: $function";
});
}
}
« no previous file with comments | « pkg/compiler/lib/src/kernel/kernel_visitor.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698