MachineScheduler/ScheduleDAG: Add support to skipping a node.
authorMatthias Braun <matze@braunis.de>
Fri, 11 Nov 2016 22:37:34 +0000 (22:37 +0000)
committerMatthias Braun <matze@braunis.de>
Fri, 11 Nov 2016 22:37:34 +0000 (22:37 +0000)
commit66ee0bfced8e10ac437cd8984685d7be6463d0d2
treeeed88023f56123e31880da297f6e8caaabf30f3b
parent40639885f50b0b23e4f958f5ab4217802c8498d1
MachineScheduler/ScheduleDAG: Add support to skipping a node.

The DAG mutators in the scheduler cannot really remove DAG nodes as
additional anlysis information such as ScheduleDAGToplogicalSort are
already computed at this point and rely on a fixed number of DAG nodes.

Alleviate the missing removal with a new flag: Setting the new skip
flag on a node ignores it during scheduling.

llvm-svn: 286655
llvm/include/llvm/CodeGen/ScheduleDAG.h
llvm/lib/CodeGen/MachineScheduler.cpp
llvm/lib/CodeGen/ScheduleDAG.cpp