[PATCH] D34716: [AMDGPU] Add pseudo "old" and "wqm_mode" source to all DPP instructions
    Connor Abbott via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Wed Jun 28 16:45:15 PDT 2017
    
    
  
cwabbott added a comment.
In https://reviews.llvm.org/D34716#794564, @cwabbott wrote:
> One thing that strikes me is that while your definition is sufficient for WWM, it isn't for WQM -- for derivatives, GL says that we actually do have to care about the values of things in helper invocations. The program has to behave as if it's always in WQM, except for loads and stores, so just assuming that helper lanes are undefined/poison isn't valid as long as loads from memory aren't involved. I think we can just strengthen the definition of llvm.amdgcn.wqm a little, to say that helper lanes must have the correct value as if everything was computed in WQM.
Actually, scratch that -- after thinking about it some more, the "as-if" semantics should be enough for GL. You can't really observe the effects of helper invocations except for when you take a derivative, so as long as you stick a llvm.amdgcn.wqm intrinsic after every derivative, you should be fine.
https://reviews.llvm.org/D34716
    
    
More information about the llvm-commits
mailing list