diff options
author | Matthias Braun <matze@braunis.de> | 2016-09-22 21:39:52 +0000 |
---|---|---|
committer | Matthias Braun <matze@braunis.de> | 2016-09-22 21:39:52 +0000 |
commit | 46533e614b78c538c24260f180a0b13298f198bb (patch) | |
tree | b999be6a2a535c65261897126541e10d400ab0f9 /llvm/lib/CodeGen/MachineScheduler.cpp | |
parent | c7957ef86cc4e8b87d19e746062368344c7acf7d (diff) | |
download | llvm-46533e614b78c538c24260f180a0b13298f198bb.zip llvm-46533e614b78c538c24260f180a0b13298f198bb.tar.gz llvm-46533e614b78c538c24260f180a0b13298f198bb.tar.bz2 |
MachineScheduler: Remove ineffective heuristic; NFC
Currently all nodes get added to the NextSU list when they are released,
so any candidate must be in that list, making the heuristic ineffective.
Remove it for now, we can add it back later in a working fashion if
necessary.
llvm-svn: 282200
Diffstat (limited to 'llvm/lib/CodeGen/MachineScheduler.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachineScheduler.cpp | 11 |
1 files changed, 0 insertions, 11 deletions
diff --git a/llvm/lib/CodeGen/MachineScheduler.cpp b/llvm/lib/CodeGen/MachineScheduler.cpp index fae22eb..bc1c97d 100644 --- a/llvm/lib/CodeGen/MachineScheduler.cpp +++ b/llvm/lib/CodeGen/MachineScheduler.cpp @@ -1793,7 +1793,6 @@ void SchedBoundary::reset() { Available.clear(); Pending.clear(); CheckPending = false; - NextSUs.clear(); CurrCycle = 0; CurrMOps = 0; MinReadyCycle = UINT_MAX; @@ -1994,9 +1993,6 @@ void SchedBoundary::releaseNode(SUnit *SU, unsigned ReadyCycle) { Pending.push(SU); else Available.push(SU); - - // Record this node as an immediate dependent of the scheduled node. - NextSUs.insert(SU); } void SchedBoundary::releaseTopNode(SUnit *SU) { @@ -2921,13 +2917,6 @@ void GenericScheduler::tryCandidate(SchedCandidate &Cand, !Rem.IsAcyclicLatencyLimited && tryLatency(TryCand, Cand, *Zone)) return; - // Prefer immediate defs/users of the last scheduled instruction. This is a - // local pressure avoidance strategy that also makes the machine code - // readable. - if (tryGreater(Zone->isNextSU(TryCand.SU), Zone->isNextSU(Cand.SU), - TryCand, Cand, NextDefUse)) - return; - // Fall through to original instruction order. if ((Zone->isTop() && TryCand.SU->NodeNum < Cand.SU->NodeNum) || (!Zone->isTop() && TryCand.SU->NodeNum > Cand.SU->NodeNum)) { |