if (VM.VerifyAssertions) VM.assert(s.getNumberOfDefs() == 1);
if (VM.VerifyAssertions) VM._assert(s.getNumberOfDefs() == 1);
  private void rewriteWithTemporaries(OPT_Instruction[] set, OPT_IR ir) {    // Maintain a mapping holding the new name for each register    HashMap map = new HashMap();    for (int i=0; i<set.length; i++) {      OPT_Instruction s = set[i];      // rewrite the uses to use the new names      for (Enumeration e = s.getUses(); e.hasMoreElements(); ) {        OPT_Operand use = (OPT_Operand)e.nextElement();        if (use != null && use.isRegister()) {          OPT_Register r = use.asRegister().register;          OPT_Register temp = (OPT_Register)map.get(r);          if (temp != null) {            use.asRegister().register = temp;          }        }      }      if (VM.VerifyAssertions) VM.assert(s.getNumberOfDefs() == 1);      OPT_Operand def = (OPT_Operand)s.getDefs().nextElement();      OPT_RegisterOperand rDef = def.asRegister();      OPT_RegisterOperand temp = ir.regpool.makeTemp(rDef);      map.put(rDef.register,temp.register);      s.replaceOperand(def,temp);    }  }