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

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

Issue 2954463002: Refactoring to prepare for kernel based jump targets (Closed)
Patch Set: Updated cf. comments Created 3 years, 6 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/element_map_impl.dart ('k') | pkg/compiler/lib/src/kernel/kernel_strategy.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/compiler/lib/src/kernel/kernel_backend_strategy.dart
diff --git a/pkg/compiler/lib/src/kernel/kernel_backend_strategy.dart b/pkg/compiler/lib/src/kernel/kernel_backend_strategy.dart
index 316108f604e6a52e4117a3238f12e2f0efc76014..594dd3faf8daf861995a37252e91d965c180620d 100644
--- a/pkg/compiler/lib/src/kernel/kernel_backend_strategy.dart
+++ b/pkg/compiler/lib/src/kernel/kernel_backend_strategy.dart
@@ -44,7 +44,7 @@ abstract class KernelBackendStrategy implements BackendStrategy {
}
/// Backend strategy that uses the kernel elements as the backend model.
-// TODO(johnniwinther): Replace this with a strategy based on the J-element
+// TODO(redemption): Replace this with a strategy based on the J-element
// model.
class KernelBackendStrategyImpl implements KernelBackendStrategy {
final Compiler _compiler;
@@ -173,7 +173,7 @@ class KernelSsaBuilder implements SsaBuilder {
_compiler.codegenWorldBuilder,
work.registry,
_compiler.backendStrategy.closureDataLookup,
- // TODO(johnniwinther): Support these:
+ // TODO(redemption): Support these:
const SourceInformationBuilder(),
null, // Function node used as capture scope id.
targetIsConstructorBody: false);
@@ -298,8 +298,54 @@ class KernelToLocalsMapImpl implements KernelToLocalsMap {
}
@override
- JumpTarget getJumpTarget(ir.TreeNode node, {bool isContinueTarget: false}) {
- // TODO(johnniwinther): Support jump targets.
+ JumpTarget getJumpTargetForBreak(ir.BreakStatement node) {
+ throw new UnimplementedError('KernelToLocalsMapImpl.getJumpTargetForBreak');
+ }
+
+ @override
+ JumpTarget getJumpTargetForContinueSwitch(ir.ContinueSwitchStatement node) {
+ throw new UnimplementedError(
+ 'KernelToLocalsMapImpl.getJumpTargetForContinueSwitch');
+ }
+
+ @override
+ JumpTarget getJumpTargetForSwitchCase(ir.SwitchCase node) {
+ throw new UnimplementedError(
+ 'KernelToLocalsMapImpl.getJumpTargetForSwitchCase');
+ }
+
+ @override
+ JumpTarget getJumpTargetForDo(ir.DoStatement node) {
+ // TODO(redemption): Support do statement as jump target.
+ return null;
+ }
+
+ @override
+ JumpTarget getJumpTargetForLabel(ir.LabeledStatement node) {
+ throw new UnimplementedError('KernelToLocalsMapImpl.getJumpTargetForLabel');
+ }
+
+ @override
+ JumpTarget getJumpTargetForSwitch(ir.SwitchStatement node) {
+ throw new UnimplementedError(
+ 'KernelToLocalsMapImpl.getJumpTargetForSwitch');
+ }
+
+ @override
+ JumpTarget getJumpTargetForFor(ir.ForStatement node) {
+ // TODO(redemption): Support for statement as jump target.
+ return null;
+ }
+
+ @override
+ JumpTarget getJumpTargetForForIn(ir.ForInStatement node) {
+ // TODO(redemption): Support for-in statement as jump target.
+ return null;
+ }
+
+ @override
+ JumpTarget getJumpTargetForWhile(ir.WhileStatement node) {
+ // TODO(redemption): Support while statement as jump target.
return null;
}
« no previous file with comments | « pkg/compiler/lib/src/kernel/element_map_impl.dart ('k') | pkg/compiler/lib/src/kernel/kernel_strategy.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698