private void removePhiFunctions(){
  ArrayList<SsaBasicBlock> blocks=ssaMeth.getBlocks();
  for (  SsaBasicBlock block : blocks) {
    block.forEachPhiInsn(new PhiVisitor(blocks));
    block.removeAllPhiInsns();
  }
  for (  SsaBasicBlock block : blocks) {
    block.scheduleMovesFromPhis();
  }
}

private void removePhiFunctions ( ) { ArrayList < SsaBasicBlock > blocks = ssaMeth . getBlocks ( ) ; for ( SsaBasicBlock block : blocks ) { block . forEachPhiInsn ( new PhiVisitor ( blocks ) ) ; block . removeAllPhiInsns ( ) ; } for ( SsaBasicBlock block : blocks ) { block . scheduleMovesFromPhis ( ) ; } }
see appel 19 . 6 . to remove the phi instructions in an edge - split ssa representation we know we can always insert a move in a predecessor block .
