[PATCH] D114999: [AMDGPU] Kill def when folding immediate in two-addr pass

Stanislav Mekhanoshin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 2 14:29:04 PST 2021


rampitec created this revision.
rampitec added reviewers: arsenm, foad.
Herald added subscribers: kerbowa, hiraditya, t-tye, tpr, dstuttard, yaxunl, nhaehnle, jvesely, kzhuravl.
rampitec requested review of this revision.
Herald added a subscriber: wdng.
Herald added a project: LLVM.

Two-address pass works right before RA and if an immediate
was folded into an instruction there is nothing to remove
the dead def. We end up with something like:

  v_mov_b32_e32 v14, 0xc1700000
  v_mov_b32_e32 v14, 0x41200000
  v_fmaak_f32 v51, s67, v19, 0xc1700000
  v_fmaak_f32 v38, v51, v19, 0x4120000

The patch kills the dead move instruction right in the folding.


https://reviews.llvm.org/D114999

Files:
  llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
  llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
  llvm/test/CodeGen/AMDGPU/twoaddr-fma.mir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D114999.391463.patch
Type: text/x-patch
Size: 8192 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20211202/a3c087e5/attachment-0001.bin>


More information about the llvm-commits mailing list