anchor.diff:      super.visitBasicBlock(block);
     }
   
  -  /// Returns how often [instruction] is contained in [instructions].
  -  static int countInstruction(
  -      List<HInstruction> instructions, HInstruction instruction) {
  +  /// Verifies [instruction] is contained in [instructions] [count] times.
  +  static bool checkInstructionCount(
  +      List<HInstruction> instructions, HInstruction instruction, int count) {
       int result = 0;
       for (int i = 0; i < instructions.length; i++) {
         if (identical(instructions[i], instruction)) result++;
       }
  -    return result;
  +    return result == count;
     }
   
     /// Returns true if the predicate returns true for every instruction in the
  
positive.code:       if (!instruction.isInBasicBlock()) return true;
        return everyInstruction(instruction.usedBy, (use, count) {
          return use.isInBasicBlock() &&
              countInstruction(use.inputs, instruction) == count;
        });
      }
  
  
negative.code:       return everyInstruction(instruction.inputs, (input, count) {
          if (inBasicBlock) {
            return input.isInBasicBlock() &&
                checkInstructionCount(input.usedBy, instruction, count);
          } else {
            return checkInstructionCount(input.usedBy, instruction, 0);
          }
        });
      }
  