if(removedCode) { ir.cfg.compactNodeNumbering(); ir.HIRInfo.dominatorTree = null; ir.HIRInfo.dominatorsAreComputed = false; }
    private final void removeUnreachableCode(OPT_IR ir) {      OPT_BasicBlock entry = ir.cfg.entry();      ir.cfg.clearDFS();      entry.sortDFS();      for (OPT_BasicBlock node = entry; node != null;) {        // save it now before removeFromCFGAndCodeOrder nulls it out!!!        OPT_BasicBlock nextNode = (OPT_BasicBlock)node.getNext();        if (!node.dfsVisited()) {          for (OPT_BasicBlockEnumeration e = node.getOut();               e.hasMoreElements(); ) {            OPT_BasicBlock target = e.next();            if (target != node && !target.isExit() && target.dfsVisited()) {              OPT_SSA.purgeBlockFromPHIs(node, target);            }          }          ir.cfg.removeFromCFGAndCodeOrder(node);        }        node = nextNode;      }    }