diff options
author | Hal Finkel <hfinkel@anl.gov> | 2014-10-10 17:06:20 +0000 |
---|---|---|
committer | Hal Finkel <hfinkel@anl.gov> | 2014-10-10 17:06:20 +0000 |
commit | 7a87f8a6700c2184254eb2e8d8c9048975ad3b62 (patch) | |
tree | 69735d86525c97b17f1aed81506740d997c0a1dd /llvm/lib/CodeGen/MachineScheduler.cpp | |
parent | 12f9488e3375e5254226befb423b888b65410ee0 (diff) | |
download | bcm5719-llvm-7a87f8a6700c2184254eb2e8d8c9048975ad3b62.tar.gz bcm5719-llvm-7a87f8a6700c2184254eb2e8d8c9048975ad3b62.zip |
[MiSched] Fix a logic error in tryPressure()
Fixes a logic error in the MachineScheduler found by Steve Montgomery (and
confirmed by Andy). This has gone unfixed for months because the fix has been
found to introduce some small performance regressions. However, Andy has
recommended that, at this point, we fix this to avoid further dependence on the
incorrect behavior (and then follow-up separately on any regressions), and I
agree.
Fixes PR18883.
llvm-svn: 219512
Diffstat (limited to 'llvm/lib/CodeGen/MachineScheduler.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachineScheduler.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/CodeGen/MachineScheduler.cpp b/llvm/lib/CodeGen/MachineScheduler.cpp index 7e3c33bb9fb..b140fc6d7e9 100644 --- a/llvm/lib/CodeGen/MachineScheduler.cpp +++ b/llvm/lib/CodeGen/MachineScheduler.cpp @@ -2495,8 +2495,8 @@ static bool tryPressure(const PressureChange &TryP, } // If one candidate decreases and the other increases, go with it. // Invalid candidates have UnitInc==0. - if (tryLess(TryP.getUnitInc() < 0, CandP.getUnitInc() < 0, TryCand, Cand, - Reason)) { + if (tryGreater(TryP.getUnitInc() < 0, CandP.getUnitInc() < 0, TryCand, Cand, + Reason)) { return true; } // If the candidates are decreasing pressure, reverse priority. |