misched: Allow subtargets to enable misched and dependent options.
authorAndrew Trick <atrick@apple.com>
Tue, 13 Nov 2012 08:47:29 +0000 (08:47 +0000)
committerAndrew Trick <atrick@apple.com>
Tue, 13 Nov 2012 08:47:29 +0000 (08:47 +0000)
commitad1cc1d1bfc0accd3f1af5c02ac367ff46a4bfdf
tree7e6931fc7c328f60aee2caa419f95ee78dc1b62e
parent265058d9239e6867d06dc8aa40db5f33390abd17
misched: Allow subtargets to enable misched and dependent options.

This allows me to begin enabling (or backing out) misched by default
for one subtarget at a time. To run misched we typically want to:
- Disable SelectionDAG scheduling (use the source order scheduler)
- Enable more aggressive coalescing (until we decide to always run the coalescer this way)
- Enable MachineScheduler pass itself.

Disabling PostRA sched may follow for some subtargets.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167826 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Target/TargetSubtargetInfo.h
lib/CodeGen/MachineScheduler.cpp
lib/CodeGen/Passes.cpp
lib/CodeGen/RegisterCoalescer.cpp
lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
lib/Target/TargetSubtargetInfo.cpp