[PATCH] D118419: [AMDGPU] Allow scalar loads after barrier

Stanislav Mekhanoshin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 31 13:30:10 PST 2022


rampitec updated this revision to Diff 404701.
rampitec added a comment.

Further study showed that a barrier or fence not only defines the load of interest but also clobbering any other load dominating them (for the same reason). The change adds aliasing disambiguation while walking up the tree to only consider defs affecting original memory location.

- Use getClobberingMemoryAccess() in the loop with the memory location of the original load to skip any store which may not alias.
- Added more tests and generated opt metadata checks as well.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D118419/new/

https://reviews.llvm.org/D118419

Files:
  llvm/lib/Target/AMDGPU/AMDGPUAnnotateUniformValues.cpp
  llvm/test/CodeGen/AMDGPU/noclobber-barrier.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D118419.404701.patch
Type: text/x-patch
Size: 22451 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220131/01f42972/attachment.bin>


More information about the llvm-commits mailing list