mi-sched: Load clustering is a bit to expensive to enable unconditionally.

llvm-svn: 189990
This commit is contained in:
Andrew Trick 2013-09-04 21:00:08 +00:00
parent 8c699c93b2
commit a6e877707f
2 changed files with 3 additions and 1 deletions

View File

@ -615,6 +615,8 @@ public:
return false;
}
virtual bool enableClusterLoads() const { return false; }
virtual bool shouldClusterLoads(MachineInstr *FirstLdSt,
MachineInstr *SecondLdSt,
unsigned NumLoads) const {

View File

@ -2753,7 +2753,7 @@ static ScheduleDAGInstrs *createConvergingSched(MachineSchedContext *C) {
// data and pass it to later mutations. Have a single mutation that gathers
// the interesting nodes in one pass.
DAG->addMutation(new CopyConstrain(DAG->TII, DAG->TRI));
if (EnableLoadCluster)
if (EnableLoadCluster && DAG->TII->enableClusterLoads())
DAG->addMutation(new LoadClusterMutation(DAG->TII, DAG->TRI));
if (EnableMacroFusion)
DAG->addMutation(new MacroFusion(DAG->TII));