[all-commits] [llvm/llvm-project] 94e48d: [AMDGPU] Switch to backwards scavenging in non-spi...

Jay Foad via All-commits all-commits at lists.llvm.org
Wed May 24 07:05:44 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 94e48d433d7a5d8e3e5e1ccefabe71bee18eeaeb
      https://github.com/llvm/llvm-project/commit/94e48d433d7a5d8e3e5e1ccefabe71bee18eeaeb
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/CodeGen/AMDGPU/accvgpr-copy.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.i8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.ll

  Log Message:
  -----------
  [AMDGPU] Switch to backwards scavenging in non-spill cases

When the scavenger is not allowed to spill, the only difference between
forward and backward should be the heuristics used to pick an available
register. Forwards scavenging tries to pick a register that can be used
again later in the BB; backwards scavenging tries to pick one that can
be used earlier.

Backwards scavenging is preferred because it does not rely on accurate
kill flags.

Differential Revision: https://reviews.llvm.org/D151323




More information about the All-commits mailing list