[all-commits] [llvm/llvm-project] 676cfc: [AMDGPU] Fix printing hasInitWholeWave in mir

Stanislav Mekhanoshin via All-commits all-commits at lists.llvm.org
Fri Jan 17 01:29:32 PST 2025


  Branch: refs/heads/users/rampitec/01-15-_amdgpu_disable_valu_sinking_and_hoisting_with_wwm
  Home:   https://github.com/llvm/llvm-project
  Commit: 676cfcbf4b131436e4bdf47a6afa604e26d8936a
      https://github.com/llvm/llvm-project/commit/676cfcbf4b131436e4bdf47a6afa604e26d8936a
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2025-01-17 (Fri, 17 Jan 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    A llvm/test/CodeGen/MIR/AMDGPU/init-whole.wave.ll

  Log Message:
  -----------
  [AMDGPU] Fix printing hasInitWholeWave in mir


  Commit: 7501423b29230f37273094e1b15e8bca0fcc90bd
      https://github.com/llvm/llvm-project/commit/7501423b29230f37273094e1b15e8bca0fcc90bd
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2025-01-17 (Fri, 17 Jan 2025)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/licm-wwm.mir

  Log Message:
  -----------
  [AMDGPU] Add test for VALU hoisiting from WWM region. NFC.

The test demonstraits a suboptimal VALU hoisting from a WWM
region. As a result we have 2 WWM regions instead of one.


  Commit: 22d28d844d4c4c339c8d38812079dc75a92cc10d
      https://github.com/llvm/llvm-project/commit/22d28d844d4c4c339c8d38812079dc75a92cc10d
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2025-01-17 (Fri, 17 Jan 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
    M llvm/test/CodeGen/AMDGPU/cse-convergent.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
    M llvm/test/CodeGen/AMDGPU/licm-wwm.mir
    M llvm/test/CodeGen/AMDGPU/set-inactive-wwm-overwrite.ll
    M llvm/test/CodeGen/AMDGPU/should-not-hoist-set-inactive.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
    M llvm/test/CodeGen/MIR/AMDGPU/init-whole.wave.ll

  Log Message:
  -----------
  [AMDGPU] Disable VALU sinking and hoisting with WWM

Machine LICM can hoist a VALU instruction from a WWM region.
In this case WQM pass will have to create yet another WWM region
around the hoisted instruction, which is not desired.

Unfortunatelly we cannot tell if an instruction is in the WWM
region, so this patch disables hoisting if WWM is used in the
function.

This works around the bug SWDEV-502411.


Compare: https://github.com/llvm/llvm-project/compare/f7558c193ff1...22d28d844d4c

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