summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
diff options
context:
space:
mode:
authorStanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com>2017-09-19 20:54:38 +0000
committerStanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com>2017-09-19 20:54:38 +0000
commitd4ae470d2e7a967331a5bb3ae5be29a4f0b6c764 (patch)
tree9065b407288d50bfeb20d5827ea6fb2dcbf008ca /llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
parent59a01a958a55c75af4076e35ba67e2a4a38d8dce (diff)
downloadbcm5719-llvm-d4ae470d2e7a967331a5bb3ae5be29a4f0b6c764.tar.gz
bcm5719-llvm-d4ae470d2e7a967331a5bb3ae5be29a4f0b6c764.zip
[AMDGPU] Prevent post-RA scheduler from breaking memory clauses
The pre-RA scheduler does load/store clustering, but post-RA scheduler undoes it. Add mutation to prevent it. Differential Revision: https://reviews.llvm.org/D38014 llvm-svn: 313670
Diffstat (limited to 'llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h')
-rw-r--r--llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h b/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
index c2ae2227830..7e7a09648ed 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
+++ b/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
@@ -883,6 +883,10 @@ public:
/// subtarget's specifications, or does not meet number of waves per execution
/// unit requirement.
unsigned getMaxNumVGPRs(const MachineFunction &MF) const;
+
+ void getPostRAMutations(
+ std::vector<std::unique_ptr<ScheduleDAGMutation>> &Mutations)
+ const override;
};
} // end namespace llvm
OpenPOWER on IntegriCloud