From 0dba0e5408e999e9c46006a12a92155a961a574c Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Wed, 3 Dec 2008 19:32:26 +0000 Subject: [PATCH] When looking for anti-dependences on the critical path, don't bother examining non-anti-dependence edges. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60496 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/PostRASchedulerList.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/CodeGen/PostRASchedulerList.cpp b/lib/CodeGen/PostRASchedulerList.cpp index bd9783281cc..73caea96b2e 100644 --- a/lib/CodeGen/PostRASchedulerList.cpp +++ b/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; -- 2.34.1