private void clearRegisters(Instruction start,Instruction end){
  for (Instruction p=start; ; p=p.nextInstructionInCodeOrder()) {
    for (Enumeration<Operand> ops=p.getOperands(); ops.hasMoreElements(); ) {
      Operand op=ops.nextElement();
      if (op instanceof RegisterOperand) {
        RegisterOperand rOp=(RegisterOperand)op;
        clearDepGraphNodeForRegister(rOp.getRegister());
      }
    }
    if (p == end)     break;
  }
  for (Enumeration<Register> e=GenericPhysicalDefUse.enumerateAllImplicitDefUses(ir); e.hasMoreElements(); ) {
    Register r=e.nextElement();
    clearDepGraphNodeForRegister(r);
  }
}

private void clearRegisters ( Instruction start , Instruction end ) { for ( Instruction p = start ; ; p = p . nextInstructionInCodeOrder ( ) ) { for ( Enumeration < Operand > ops = p . getOperands ( ) ; ops . hasMoreElements ( ) ; ) { Operand op = ops . nextElement ( ) ; if ( op instanceof RegisterOperand ) { RegisterOperand rOp = ( RegisterOperand ) op ; clearDepGraphNodeForRegister ( rOp . getRegister ( ) ) ; } } if ( p == end ) break ; } for ( Enumeration < Register > e = GenericPhysicalDefUse . enumerateAllImplicitDefUses ( ir ) ; e . hasMoreElements ( ) ; ) { Register r = e . nextElement ( ) ; clearDepGraphNodeForRegister ( r ) ; } }
initialize ( clear ) the dnode field in register for all registers in this basic block by setting them to null . handles both explicit and implict use / defs .
