[all-commits] [llvm/llvm-project] 209094: AMDGPU/GlobalISel: Start matching s_lshlN_add_u32 ...

Matt Arsenault via All-commits all-commits at lists.llvm.org
Mon Mar 9 12:37:05 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 209094eeb6c64cf515e24844f7420f93083e5dd4
      https://github.com/llvm/llvm-project/commit/209094eeb6c64cf515e24844f7420f93083e5dd4
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2020-03-09 (Mon, 09 Mar 2020)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SOPInstructions.td
    A llvm/test/CodeGen/AMDGPU/GlobalISel/shlN_add.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: Start matching s_lshlN_add_u32 instructions

Use a hack to only enable this for GlobalISel.

Technically this also works with SelectionDAG, but the divergence
selection isn't reliable enough and a few cases fail, but I have no
desire to spend time writing the manual expansion code for it. The DAG
actually does a better job since it catches using v_add_lshl_u32 in
the mixed SGPR/VGPR cases.




More information about the All-commits mailing list