public void deleteInsns(Set<SsaInsn> deletedInsns) {
    for (SsaInsn deletedInsn : deletedInsns) {
      SsaBasicBlock block = deletedInsn.getBlock();
      ArrayList<SsaInsn> insns = block.getInsns();

      for (int i = insns.size() - 1; i >= 0; i--) {
        SsaInsn insn = insns.get(i);

        if (deletedInsn == insn) {
          onInsnRemoved(insn);
          insns.remove(i);
          break;
        }
      }

      // Check to see if we need to add a GOTO

      int insnsSz = insns.size();
      SsaInsn lastInsn = (insnsSz == 0) ? null : insns.get(insnsSz - 1);

      if (block != getExitBlock()
          && (insnsSz == 0
              || lastInsn.getOriginalRopInsn() == null
              || lastInsn.getOriginalRopInsn().getOpcode().getBranchingness() == Rop.BRANCH_NONE)) {
        // We managed to eat a throwable insn

        Insn gotoInsn =
            new PlainInsn(Rops.GOTO, SourcePosition.NO_INFO, null, RegisterSpecList.EMPTY);
        insns.add(SsaInsn.makeFromRop(gotoInsn, block));

        // Remove secondary successors from this block
        BitSet succs = block.getSuccessors();
        for (int i = succs.nextSetBit(0); i >= 0; i = succs.nextSetBit(i + 1)) {
          if (i != block.getPrimarySuccessorIndex()) {
            block.removeSuccessor(i);
          }
        }
      }
    }
  }
Deletes all insns in the set from this method.

@param deletedInsns {@code non-null;} insns to delete
android/android_framework/dex-maker/src/main/java/com/android/dx/ssa/SsaMethod.java