diff options
| author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2017-11-29 00:55:57 +0000 |
|---|---|---|
| committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2017-11-29 00:55:57 +0000 |
| commit | 3f71c0e3ee5be2cf0b1d9e37e8e1ade5bb7bdbe6 (patch) | |
| tree | d4cf261c267dc8e08f62918193770b07d6b81be3 /llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp | |
| parent | ba874ad83ed7c482e5da51385a6df0647f3b5c1a (diff) | |
| download | bcm5719-llvm-3f71c0e3ee5be2cf0b1d9e37e8e1ade5bb7bdbe6.tar.gz bcm5719-llvm-3f71c0e3ee5be2cf0b1d9e37e8e1ade5bb7bdbe6.zip | |
AMDGPU: Select DS insts without m0 initialization
GFX9 stopped using m0 for most DS instructions. Select
a different instruction without the use. I think this will
be less error prone than trying to manually maintain m0
uses as needed.
llvm-svn: 319270
Diffstat (limited to 'llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp')
| -rw-r--r-- | llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp b/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp index b6449b9f282..836c70609c0 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp @@ -337,7 +337,8 @@ const TargetRegisterClass *AMDGPUDAGToDAGISel::getOperandRegClass(SDNode *N, } SDNode *AMDGPUDAGToDAGISel::glueCopyToM0(SDNode *N) const { - if (cast<MemSDNode>(N)->getAddressSpace() != AMDGPUASI.LOCAL_ADDRESS) + if (cast<MemSDNode>(N)->getAddressSpace() != AMDGPUASI.LOCAL_ADDRESS || + !Subtarget->ldsRequiresM0Init()) return N; const SITargetLowering& Lowering = |

