diff options
author | Tom Stellard <thomas.stellard@amd.com> | 2015-03-27 17:37:47 +0000 |
---|---|---|
committer | Tom Stellard <thomas.stellard@amd.com> | 2015-03-27 17:41:46 +0000 |
commit | 11a8738d716fa9f67da9fce2892c30352780e89b (patch) | |
tree | 3381b3954d0cb91ae3721a9fa7a26d2332c86d14 | |
parent | b08f2e3be487f399b04363972bfd5dfc05652673 (diff) |
R600/SI: Disable register pressure tracking in the schedulersched-perf-Mar-27-2015
-rw-r--r-- | lib/Target/R600/AMDGPUSubtarget.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/Target/R600/AMDGPUSubtarget.cpp b/lib/Target/R600/AMDGPUSubtarget.cpp index 0ead65209e1..15def380a48 100644 --- a/lib/Target/R600/AMDGPUSubtarget.cpp +++ b/lib/Target/R600/AMDGPUSubtarget.cpp @@ -119,10 +119,10 @@ void AMDGPUSubtarget::overrideSchedPolicy(MachineSchedPolicy &Policy, unsigned NumRegionInstrs) const { if (getGeneration() >= SOUTHERN_ISLANDS) { - // Track register pressure so the scheduler can try to decrease - // pressure once register usage is above the threshold defined by - // SIRegisterInfo::getRegPressureSetLimit() - Policy.ShouldTrackPressure = true; + // FIXME: Register pressure tracking seems to lead to worse code. + // I think part of the issue is that our RegPressureSet limits are too + // low, so we are almost always in REG-CRITICAL state. + Policy.ShouldTrackPressure = false; // Enabling both top down and bottom up scheduling seems to give us less // register spills than just using one of these approaches on its own. |