private Instruction scheduleScalarDefsEarly(Enumeration<Operand> e,Instruction earlyPos,Instruction inst){
  while (e.hasMoreElements()) {
    Operand op=e.nextElement();
    Instruction def=definingInstruction(op);
    scheduleEarly(def);
    if (def.isBranch())     def=dominanceSuccessor(def,inst);
    earlyPos=maxDominatorDepth(def,earlyPos);
  }
  return earlyPos;
}

private Instruction scheduleScalarDefsEarly ( Enumeration < Operand > e , Instruction earlyPos , Instruction inst ) { while ( e . hasMoreElements ( ) ) { Operand op = e . nextElement ( ) ; Instruction def = definingInstruction ( op ) ; scheduleEarly ( def ) ; if ( def . isBranch ( ) ) def = dominanceSuccessor ( def , inst ) ; earlyPos = maxDominatorDepth ( def , earlyPos ) ; } return earlyPos ; }
schedules an instruction as early as possible , but behind the definitions in e and behind earlypos
