[all-commits] [llvm/llvm-project] 3b8880: [AMDGPU] Fix SDWA commuting (#106920)

Yaxun (Sam) Liu via All-commits all-commits at lists.llvm.org
Fri Oct 4 12:54:02 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 3b88805ca20018ae202afd3aea39f4fa856a8c64
      https://github.com/llvm/llvm-project/commit/3b88805ca20018ae202afd3aea39f4fa856a8c64
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    A llvm/test/CodeGen/AMDGPU/commute-op-sel.mir
    A llvm/test/CodeGen/AMDGPU/sdwa-commute.ll
    A llvm/test/CodeGen/AMDGPU/sdwa-cse.mir

  Log Message:
  -----------
  [AMDGPU] Fix SDWA commuting (#106920)

SDWA insts miss reverse opcode, which causes them to be treated as
commutable with default reverse opcode i.e. their own opcode. As a
result, SWDA F16 sub A, B and Sub B, A are merged by machine CSE. The
correct behavior is to merged sub A, B and subrev B, A instead of sub B,
A. This issues caused failures in rocFFT tests.

Another issue is that src0_sel and src1_sel are not swapped when SDWA
insts are commuted.

Verified that this fixes rocFFT tests failure.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list