OSDN Git Service

[AMDGPU] Avoid using divergent value in mubuf addr64 descriptor
authorTim Renouf <tpr.llvm@botech.co.uk>
Thu, 2 Aug 2018 22:53:57 +0000 (22:53 +0000)
committerTim Renouf <tpr.llvm@botech.co.uk>
Thu, 2 Aug 2018 22:53:57 +0000 (22:53 +0000)
commit5e96e38d9651242b6cbf513b1fd3fc362438abf6
tree9e45621a10b4c36d937b8f328ffb976d3943dfbd
parentf1aa92e7028a7a85620eff549c5b78c279c3dc45
[AMDGPU] Avoid using divergent value in mubuf addr64 descriptor

Summary:
This fixes a problem where a load from global+idx generated incorrect
code on <=gfx7 when the index is divergent.

Subscribers: arsenm, kzhuravl, wdng, nhaehnle, yaxunl, dstuttard, t-tye, llvm-commits

Differential Revision: https://reviews.llvm.org/D47383

Change-Id: Ib4d177d6254b1dd3f8ec0203fdddec94bd8bc5ed

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@338779 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
test/CodeGen/AMDGPU/legalize-fp-load-invariant.ll
test/CodeGen/AMDGPU/llvm.amdgcn.implicitarg.ptr.ll
test/CodeGen/AMDGPU/llvm.log.f16.ll
test/CodeGen/AMDGPU/llvm.log10.f16.ll
test/CodeGen/AMDGPU/shader-addr64-nonuniform.ll [new file with mode: 0644]
test/CodeGen/AMDGPU/valu-i1.ll