Question about Instruction Schedule


  Recently, I am reading the code of Instruction schedule in llvm.
But it is confused me, because I found llvm have two classes named ScheduleDAGSDNodes and ScheuleDAGInstrs. The first one is used for scheduling SDNode-based DAG, the other is used for MachineInst.
  But could we use ScheuleDAGInstrs directly?

   Thanks in advance\.

Best Regards