[PATCH] D146737: [AMDGPU] Default component broadcast store

Mateja Marjanovic via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 23 09:55:39 PDT 2023


matejam created this revision.
matejam added reviewers: foad, mbrkusanin, piotr, rampitec.
matejam added a project: LLVM.
Herald added subscribers: nlopes, kosarev, StephenFan, kerbowa, hiraditya, tpr, dstuttard, yaxunl, jvesely, kzhuravl, arsenm.
Herald added a project: All.
matejam requested review of this revision.
Herald added a subscriber: wdng.

For image and buffer stores the default behaviour on GFX11 and
older is to set all unset components to zero. So if we pass
only X component it will be the same as X000, or XY same as XY00.

This patch simplifies the passed vector of components in InstCombine
pass by removing elements from the end that are equal to zero.

For image intrinsics it also trims DMask if necessary.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D146737

Files:
  llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
  llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll
  llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-simplify-image-buffer-stores.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D146737.507777.patch
Type: text/x-patch
Size: 27783 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230323/ed68ccdc/attachment.bin>


More information about the llvm-commits mailing list