| 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 75547da496dc779ee7908395b4493269eeebee09..63693bb3778341f78248442f166532f75cdd2378 100644
|
| --- a/pkg/compiler/lib/src/ssa/builder_kernel.dart
|
| +++ b/pkg/compiler/lib/src/ssa/builder_kernel.dart
|
| @@ -1869,6 +1869,14 @@ class KernelSsaGraphBuilder extends ir.Visitor
|
| open(block);
|
| localsHandler = new LocalsHandler.from(savedLocals);
|
| buildSwitchCase(switchCase);
|
| + if (!isAborted() &&
|
| + switchCase == switchCases.last &&
|
| + !isDefaultCase(switchCase)) {
|
| + // If there is no default, we will add one later to avoid
|
| + // the critical edge. So we generate a break statement to make
|
| + // sure the last case does not fall through to the default case.
|
| + jumpHandler.generateBreak();
|
| + }
|
| statements.add(
|
| new HSubGraphBlockInformation(new SubGraph(block, lastOpenedBlock)));
|
| }
|
|
|