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

Unified Diff: pkg/compiler/lib/src/kernel/kernel_strategy.dart

Issue 2888413004: Add KernelCodegenWorkItem stub (Closed)
Patch Set: Add comment Created 3 years, 7 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: pkg/compiler/lib/src/kernel/kernel_strategy.dart
diff --git a/pkg/compiler/lib/src/kernel/kernel_strategy.dart b/pkg/compiler/lib/src/kernel/kernel_strategy.dart
index e7fa21ec430233540b9e5264e70c7871e53d03f5..842b3e331d653fece8ebd4932ea39353f8087775 100644
--- a/pkg/compiler/lib/src/kernel/kernel_strategy.dart
+++ b/pkg/compiler/lib/src/kernel/kernel_strategy.dart
@@ -9,7 +9,7 @@ import '../backend_strategy.dart';
import '../common.dart';
import '../common_elements.dart';
import '../common/backend_api.dart';
-import '../common/codegen.dart' show CodegenWorkItem;
+import '../common/codegen.dart' show CodegenRegistry, CodegenWorkItem;
import '../common/resolution.dart';
import '../common/tasks.dart';
import '../common/work.dart';
@@ -231,7 +231,8 @@ class MirrorsResolutionAnalysisImpl implements MirrorsResolutionAnalysis {
@override
MirrorsCodegenAnalysis close() {
- throw new UnimplementedError('MirrorsResolutionAnalysisImpl.close');
+ // TODO(johnniwinther): Implement this.
+ return new MirrorsCodegenAnalysisImpl();
}
@override
@@ -255,7 +256,6 @@ class KernelBackendStrategy implements BackendStrategy {
void convertClosures(ClosedWorldRefiner closedWorldRefiner) {
// TODO(johnniwinther,efortuna): Compute closure classes for kernel based
// elements.
- throw new UnimplementedError('KernelBackendStrategy.createClosureClasses');
}
@override
@@ -273,9 +273,35 @@ class KernelBackendStrategy implements BackendStrategy {
}
}
+class MirrorsCodegenAnalysisImpl implements MirrorsCodegenAnalysis {
+ @override
+ int get preMirrorsMethodCount {
+ throw new UnimplementedError(
+ 'MirrorsCodegenAnalysisImpl.preMirrorsMethodCount');
+ }
+
+ @override
+ void onQueueEmpty(Enqueuer enqueuer, Iterable<ClassEntity> recentClasses) {
+ throw new UnimplementedError('MirrorsCodegenAnalysisImpl.onQueueEmpty');
+ }
+}
+
class KernelCodegenWorkItemBuilder implements WorkItemBuilder {
@override
CodegenWorkItem createWorkItem(MemberEntity entity) {
- throw new UnimplementedError('KernelCodegenWorkItemBuilder.createWorkItem');
+ return new KernelCodegenWorkItem(entity);
+ }
+}
+
+class KernelCodegenWorkItem extends CodegenWorkItem {
+ final MemberEntity element;
+ final CodegenRegistry registry;
+
+ KernelCodegenWorkItem(this.element) : registry = new CodegenRegistry(element);
+
+ @override
+ WorldImpact run() {
+ // TODO(johnniwinther): Build SSA graph from kernel and run codegen on it.
+ return const WorldImpact();
}
}

Powered by Google App Engine
This is Rietveld 408576698