This fixes a problem where a load from global+idx generated incorrect
code on <=gfx7 when the index is divergent.
Change-Id: Ib4d177d6254b1dd3f8ec0203fdddec94bd8bc5ed
| Paths 
 |  Differential  D47383  
[AMDGPU] Avoid using divergent value in mubuf addr64 descriptor ClosedPublic Authored by tpr on May 25 2018, 11:33 AM. 
Details Summary This fixes a problem where a load from global+idx generated incorrect Change-Id: Ib4d177d6254b1dd3f8ec0203fdddec94bd8bc5ed 
Diff Detail 
 Event TimelineHerald added subscribers: llvm-commits, t-tye, dstuttard and 5 others.  ·  View Herald TranscriptMay 25 2018, 11:33 AM Comment Actions The test seems pretty lacking. There are a lot more combinations of divergent and non-divergent changed here that aren't tested 
 
 Comment Actions Thanks. I feel like some of this could perhaps be improved with a computeKnownBits if there is a 64-bit uniform base and a 32-bit non-uniform offset, but that doesn't have to be part of this change. 
 
 
 This revision is now accepted and ready to land.Jul 31 2018, 3:25 AM Closed by commit rL338779: [AMDGPU] Avoid using divergent value in mubuf addr64 descriptor (authored by tpr).  ·  Explain WhyAug 2 2018, 3:54 PM This revision was automatically updated to reflect the committed changes. 
Revision Contents 
 
Diff 158855 llvm/trunk/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
 llvm/trunk/test/CodeGen/AMDGPU/legalize-fp-load-invariant.ll
 llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.implicitarg.ptr.ll
 llvm/trunk/test/CodeGen/AMDGPU/llvm.log.f16.ll
 llvm/trunk/test/CodeGen/AMDGPU/llvm.log10.f16.ll
 llvm/trunk/test/CodeGen/AMDGPU/shader-addr64-nonuniform.ll
 llvm/trunk/test/CodeGen/AMDGPU/valu-i1.ll
 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||