[PATCH] D155864: [AMDGPU] Allow 8,16 bit sources in calculateSrcByte

Jeffrey Byrnes via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 24 13:37:52 PDT 2023


jrbyrnes updated this revision to Diff 543685.
jrbyrnes marked 4 inline comments as done.
jrbyrnes added a comment.

Address comments + rework "hasEightBitAccesses".

hasEightBitAccesses is really just a heuristic to stop combinations of type:

s_mov mask, 0x01000504
v_perm d, v1, v0, mask

when we can instead do:

v_lshl_or d, v0, 16, v1

These will occur iff both operands have ultimate srcs that are exactly 16 bit, and they are addressed as 16 bit operands in the relevant or (that is, they havent been byte extracted / shuffled).


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D155864

Files:
  llvm/lib/Target/AMDGPU/SIISelLowering.cpp
  llvm/test/CodeGen/AMDGPU/bf16.ll
  llvm/test/CodeGen/AMDGPU/load-hi16.ll
  llvm/test/CodeGen/AMDGPU/load-lo16.ll
  llvm/test/CodeGen/AMDGPU/permute_i8.ll
  llvm/test/CodeGen/AMDGPU/trunc-combine.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D155864.543685.patch
Type: text/x-patch
Size: 17810 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230724/299c117a/attachment.bin>


More information about the llvm-commits mailing list