diff options
author | Dan Gohman <gohman@apple.com> | 2008-12-03 19:32:26 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2008-12-03 19:32:26 +0000 |
commit | 444baea236a9979daa0025c955a1d74fab5bfee4 (patch) | |
tree | acb5218c921bc3f82f64d1377e49a8c0c389dffd /llvm/lib/CodeGen | |
parent | 1a32dda4aa1ca008468738aedd100ac389ba6bd9 (diff) | |
download | bcm5719-llvm-444baea236a9979daa0025c955a1d74fab5bfee4.tar.gz bcm5719-llvm-444baea236a9979daa0025c955a1d74fab5bfee4.zip |
When looking for anti-dependences on the critical path, don't bother
examining non-anti-dependence edges.
llvm-svn: 60496
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r-- | llvm/lib/CodeGen/PostRASchedulerList.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/PostRASchedulerList.cpp b/llvm/lib/CodeGen/PostRASchedulerList.cpp index bd9783281cc..73caea96b2e 100644 --- a/llvm/lib/CodeGen/PostRASchedulerList.cpp +++ b/llvm/lib/CodeGen/PostRASchedulerList.cpp @@ -195,6 +195,10 @@ bool SchedulePostRATDList::BreakAntiDependencies() { SDep *Edge = CriticalPath[SU->NodeNum]; SUnit *NextSU = Edge->Dep; unsigned AntiDepReg = Edge->Reg; + // Only consider anti-dependence edges. + if (!Edge->isAntiDep) + continue; + assert(AntiDepReg != 0 && "Anti-dependence on reg0?"); // Don't break anti-dependencies on non-allocatable registers. if (!AllocatableSet.test(AntiDepReg)) continue; |