[PATCH] D141030: [WIP][AMDGPU] Legalize soffset of buffer instruction. Use Waterfall loop logic.

krishna chaitanya sankisa via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 4 21:48:10 PST 2023


skc7 created this revision.
Herald added subscribers: kosarev, foad, kerbowa, hiraditya, tpr, dstuttard, yaxunl, jvesely, kzhuravl, arsenm.
Herald added a project: All.
skc7 requested review of this revision.
Herald added subscribers: llvm-commits, wdng.
Herald added a project: LLVM.

Legalize soffset of buffer instructions. If vgpr is assigned to soffset, use waterfall loop logic to legalize.

Waterfall loop is implemented in three steps:
Prologue: This step figures out the active lanes and lanes that have same values so that they can run simultaneously.
Payload: This is the actual work that needs to be done by the those lanes figured out in the previous step.
Epilogue: Set the exec with remaining lanes, previously executed lanes are masked out. If the exec is not zero, proceed to execute the remaining lanes


https://reviews.llvm.org/D141030

Files:
  llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
  llvm/test/CodeGen/AMDGPU/legalize-soffset-mbuf.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D141030.486468.patch
Type: text/x-patch
Size: 46838 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230105/a4ebdc9f/attachment-0001.bin>


More information about the llvm-commits mailing list