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

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

Issue 2954463002: Refactoring to prepare for kernel based jump targets (Closed)
Patch Set: 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.dart ('k') | pkg/compiler/lib/src/resolution/members.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..a6b8d6e57becafa4b090b269a55abdc077caed00 100644
--- a/pkg/compiler/lib/src/kernel/kernel_backend_strategy.dart
+++ b/pkg/compiler/lib/src/kernel/kernel_backend_strategy.dart
@@ -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(johnniwinther): Support do statement as jump target.
Siggi Cherem (dart-lang) 2017/06/23 19:25:59 null vs throw is based on whether hello-world hits
Johnni Winther 2017/06/26 07:57:36 Used TODO(redemption) in all such places instead.
+ 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(johnniwinther): Support for statement as jump target.
+ return null;
+ }
+
+ @override
+ JumpTarget getJumpTargetForForIn(ir.ForInStatement node) {
+ // TODO(johnniwinther): Support for-in statement as jump target.
+ return null;
+ }
+
+ @override
+ JumpTarget getJumpTargetForWhile(ir.WhileStatement node) {
+ // TODO(johnniwinther): Support while statement as jump target.
return null;
}
« no previous file with comments | « pkg/compiler/lib/src/kernel/element_map.dart ('k') | pkg/compiler/lib/src/resolution/members.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698