Index: sdk/lib/_internal/compiler/implementation/ssa/validate.dart |
=================================================================== |
--- sdk/lib/_internal/compiler/implementation/ssa/validate.dart (revision 23325) |
+++ sdk/lib/_internal/compiler/implementation/ssa/validate.dart (working copy) |
@@ -150,7 +150,8 @@ |
bool inBasicBlock = instruction.isInBasicBlock(); |
return everyInstruction(instruction.inputs, (input, count) { |
if (inBasicBlock) { |
- return countInstruction(input.usedBy, instruction) == count; |
+ return input.isInBasicBlock() |
+ && countInstruction(input.usedBy, instruction) == count; |
} else { |
return countInstruction(input.usedBy, instruction) == 0; |
} |
@@ -161,7 +162,8 @@ |
bool hasCorrectUses() { |
if (!instruction.isInBasicBlock()) return true; |
return everyInstruction(instruction.usedBy, (use, count) { |
- return countInstruction(use.inputs, instruction) == count; |
+ return use.isInBasicBlock() |
+ && countInstruction(use.inputs, instruction) == count; |
}); |
} |