diff options
| author | David Goodwin <david_goodwin@apple.com> | 2009-10-26 19:32:42 +0000 |
|---|---|---|
| committer | David Goodwin <david_goodwin@apple.com> | 2009-10-26 19:32:42 +0000 |
| commit | de11f36ab76d32fcec53c163c5006ce9b573579c (patch) | |
| tree | 9ca18b3c7d5a65c697ed360cc425469e192fef7e /llvm/lib/CodeGen/PostRASchedulerList.cpp | |
| parent | 6a1d9eace94f9e96a0003bd4b97559c3d1ea879d (diff) | |
| download | llvm-de11f36ab76d32fcec53c163c5006ce9b573579c.zip llvm-de11f36ab76d32fcec53c163c5006ce9b573579c.tar.gz llvm-de11f36ab76d32fcec53c163c5006ce9b573579c.tar.bz2 | |
Add aggressive anti-dependence breaker. Currently it is not the default for any target. Enable with -break-anti-dependencies=all.
llvm-svn: 85145
Diffstat (limited to 'llvm/lib/CodeGen/PostRASchedulerList.cpp')
| -rw-r--r-- | llvm/lib/CodeGen/PostRASchedulerList.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/CodeGen/PostRASchedulerList.cpp b/llvm/lib/CodeGen/PostRASchedulerList.cpp index ea66f02..4ee97e7 100644 --- a/llvm/lib/CodeGen/PostRASchedulerList.cpp +++ b/llvm/lib/CodeGen/PostRASchedulerList.cpp @@ -19,6 +19,7 @@ //===----------------------------------------------------------------------===// #define DEBUG_TYPE "post-RA-sched" +#include "AggressiveAntiDepBreaker.h" #include "CriticalAntiDepBreaker.h" #include "ExactHazardRecognizer.h" #include "SimpleHazardRecognizer.h" @@ -236,9 +237,10 @@ bool PostRAScheduler::runOnMachineFunction(MachineFunction &Fn) { (ScheduleHazardRecognizer *)new ExactHazardRecognizer(InstrItins) : (ScheduleHazardRecognizer *)new SimpleHazardRecognizer(); AntiDepBreaker *ADB = - (AntiDepMode == TargetSubtarget::ANTIDEP_ALL) ? NULL /* FIXME */ : - (AntiDepMode == TargetSubtarget::ANTIDEP_CRITICAL) ? - new CriticalAntiDepBreaker(Fn) : NULL; + ((AntiDepMode == TargetSubtarget::ANTIDEP_ALL) ? + (AntiDepBreaker *)new AggressiveAntiDepBreaker(Fn) : + ((AntiDepMode == TargetSubtarget::ANTIDEP_CRITICAL) ? + (AntiDepBreaker *)new CriticalAntiDepBreaker(Fn) : NULL)); SchedulePostRATDList Scheduler(Fn, MLI, MDT, HR, ADB, AA); |
