OPT_Instruction test = ci.test;
  private void splitCandidate(CandInfo ci, OPT_IR ir) {    OPT_BasicBlock cand = ci.candBB;    OPT_BasicBlock prev = ci.prevBB;    OPT_BasicBlock succ = ci.succBB;    OPT_Instruction test = ci.test;    OPT_BasicBlock clone = cand.copyWithoutLinks(ir);    // Redirect clone to always stay on cold path.    OPT_Instruction s = clone.lastRealInstruction();    while (s.isBranch()) {      s = s.remove();    }    clone.appendInstruction(Goto.create(GOTO, succ.makeJumpTarget()));    // inject clone in code order;     // force prev to go to clone instead of cand.    prev.redirectOuts(cand, clone, ir);    clone.recomputeNormalOut(ir);    ir.cfg.addLastInCodeOrder(clone);    clone.setInfrequent();  }