[all-commits] [llvm/llvm-project] 2f3339: AMDGPU: Switch bfi pattern test to generated check...

Matt Arsenault via All-commits all-commits at lists.llvm.org
Wed Jan 26 12:07:06 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2f33396e4e5db0277d0ea328c5708b65d823d695
      https://github.com/llvm/llvm-project/commit/2f33396e4e5db0277d0ea328c5708b65d823d695
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2022-01-26 (Wed, 26 Jan 2022)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/bfi_int.ll

  Log Message:
  -----------
  AMDGPU: Switch bfi pattern test to generated checks and add gfx10


  Commit: eb88e793ff579071e03766970e46a5d60d77cf7c
      https://github.com/llvm/llvm-project/commit/eb88e793ff579071e03766970e46a5d60d77cf7c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2022-01-26 (Wed, 26 Jan 2022)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/bfi_int.ll
    A llvm/test/CodeGen/AMDGPU/bfi_int.r600.ll

  Log Message:
  -----------
  AMDGPU: Add some additional test coverage for BFI matching

Try to stress constant bus restriction enforcement since some of these
are broken for GlobalISel. Split the r600 test because some of these
cases don't compile (and all the ones using return values are
discarded).


  Commit: 09fc311af702e06fbb7a89cdee13a61face102ed
      https://github.com/llvm/llvm-project/commit/09fc311af702e06fbb7a89cdee13a61face102ed
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2022-01-26 (Wed, 26 Jan 2022)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/test/CodeGen/AMDGPU/bfi_int.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: Mostly fix BFI patterns

Most importantly, fixes constant bus errors in the 64-bit cases. It's
surprising to me these were even passing the selection test using
SReg_* sources. Also fixes pattern matching in the 32-bit cases, with
simple operands.

These patterns aren't working in a few cases, like with mixed SGPR
inputs. The patterns aren't looking through the SGPR->VGPR copies like
they need to. The vector cases also have some unmerges of build_vector
which are obscuring the inputs.


Compare: https://github.com/llvm/llvm-project/compare/632a4f882942...09fc311af702


More information about the All-commits mailing list