public void process(){
  block.forEachInsn(this);
  updateSuccessorPhis();
  ArrayList<SsaInsn> insns=block.getInsns();
  int szInsns=insns.size();
  for (int i=szInsns - 1; i >= 0; i--) {
    SsaInsn insn=insns.get(i);
    SsaInsn replaceInsn;
    replaceInsn=insnsToReplace.get(insn);
    if (replaceInsn != null) {
      insns.set(i,replaceInsn);
    }
 else     if (insn.isNormalMoveInsn() && !movesToKeep.contains(insn)) {
      insns.remove(i);
    }
  }
  boolean first=true;
  for (  SsaBasicBlock child : block.getDomChildren()) {
    if (child != block) {
      RegisterSpec[] childStart=first ? currentMapping : dupArray(currentMapping);
      startsForBlocks[child.getIndex()]=childStart;
      first=false;
    }
  }
}

public void process ( ) { block . forEachInsn ( this ) ; updateSuccessorPhis ( ) ; ArrayList < SsaInsn > insns = block . getInsns ( ) ; int szInsns = insns . size ( ) ; for ( int i = szInsns - 1 ; i >= 0 ; i -- ) { SsaInsn insn = insns . get ( i ) ; SsaInsn replaceInsn ; replaceInsn = insnsToReplace . get ( insn ) ; if ( replaceInsn != null ) { insns . set ( i , replaceInsn ) ; } else if ( insn . isNormalMoveInsn ( ) && ! movesToKeep . contains ( insn ) ) { insns . remove ( i ) ; } } boolean first = true ; for ( SsaBasicBlock child : block . getDomChildren ( ) ) { if ( child != block ) { RegisterSpec [ ] childStart = first ? currentMapping : dupArray ( currentMapping ) ; startsForBlocks [ child . getIndex ( ) ] = childStart ; first = false ; } } }
renames all the variables in this block and inserts appriopriate phis in successor blocks .
