summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2016-11-16 20:35:23 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2016-11-16 20:35:23 +0000
commit3b36bb1d8780caeb122ee86cf2f44e397cb028ea (patch)
tree8bfac477c9af17ec001ff7b7f479d6cd7dd5e91f /llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
parent1b9560ffd61f3f4c2089c4971ebce0cfb4932adf (diff)
downloadbcm5719-llvm-3b36bb1d8780caeb122ee86cf2f44e397cb028ea.tar.gz
bcm5719-llvm-3b36bb1d8780caeb122ee86cf2f44e397cb028ea.zip
AMDGPU: Enable ConstrainCopy DAG mutation
This fixes a probably unintended divergence from the default scheduler behavior. llvm-svn: 287146
Diffstat (limited to 'llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp')
-rw-r--r--llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp b/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
index baf4d192c57..b534a4e81a1 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
@@ -104,6 +104,9 @@ createGCNMaxOccupancyMachineScheduler(MachineSchedContext *C) {
new ScheduleDAGMILive(C, make_unique<GCNMaxOccupancySchedStrategy>(C));
const SIInstrInfo *TII = static_cast<const SIInstrInfo *>(DAG->TII);
+
+ DAG->addMutation(createCopyConstrainDAGMutation(TII, DAG->TRI));
+
if (TII->enableClusterLoads())
DAG->addMutation(createLoadClusterDAGMutation(TII, DAG->TRI));
OpenPOWER on IntegriCloud