[PATCH] D106023: [AMDGPU] Mark relevant rematerializable VOP2 instructions

Stanislav Mekhanoshin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 15 13:55:10 PDT 2021


rampitec updated this revision to Diff 359119.
rampitec marked an inline comment as done.
rampitec added a comment.

Dropped all 16 bit instructions which have VOP3 forms from the change.

Due to the encoding change in GFX10 16 bit instructions moved from VOP2 to VOP3 have changed behavior from zeroing high 16 bits of dst to preserve. A same instruction behaves differently between GFX9 and GFX10 depending on if that is a VOP2 promoted to VOP3 or a native VOP3. We cannot rematerialize instructions which merge dst.

That said, the behavior of these instructions is not properly modeled to begin with and only guarded with selection patterns forcingly clearing high 16 bits. That needs to be addressed first.


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

https://reviews.llvm.org/D106023

Files:
  llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
  llvm/lib/Target/AMDGPU/VOP2Instructions.td
  llvm/test/CodeGen/AMDGPU/remat-vop.mir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D106023.359119.patch
Type: text/x-patch
Size: 66453 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210715/21c6f408/attachment-0001.bin>


More information about the llvm-commits mailing list