mi-sched: smooth out the cyclicpath heuristic.
authorAndrew Trick <atrick@apple.com>
Mon, 9 Sep 2013 22:28:08 +0000 (22:28 +0000)
committerAndrew Trick <atrick@apple.com>
Mon, 9 Sep 2013 22:28:08 +0000 (22:28 +0000)
commitee50a46026a8e131bd1b82df729d1c45f856d0ec
treed5dae87fd99ed2cefd13e68239f9310ddc57679a
parent3af4d250676623b88436b89212108eb4fff897d3
mi-sched: smooth out the cyclicpath heuristic.

Arnold's idea.

I generally try to avoid stateful heuristics because it can make
debugging harder. However, we need a way to prevent the latency
priority from dominating, and it somewhat makes sense to schedule
aggressively for latency only within an issue group.

Swift in particular likes this, and it doesn't hurt anyone else:
| Benchmarks/MiBench/consumer-lame              |  10.39% |
| Benchmarks/Misc/himenobmtxpa                  |   9.63% |

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190360 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/MachineScheduler.cpp