[PATCH] D87936: [GISel] Add new combines for G_ADD
Matt Arsenault via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 18 16:10:33 PDT 2020
arsenm added inline comments.
================
Comment at: llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i128.ll:54-62
+; GFX9-NEXT: s_lshl_b32 s1, s0, 1
+; GFX9-NEXT: s_set_gpr_idx_on s1, gpr_idx(SRC0)
; GFX9-NEXT: s_waitcnt vmcnt(0)
; GFX9-NEXT: v_mov_b32_e32 v0, v2
; GFX9-NEXT: v_mov_b32_e32 v1, v3
+; GFX9-NEXT: s_set_gpr_idx_off
+; GFX9-NEXT: s_or_b32 s0, s0, 1
----------------
mkitzan wrote:
> arsenm wrote:
> > This is a much more interesting regression
> I noticed regressions in this test file too. The combine causing them is the: `G_ADD(x, y)` -> `G_OR(x, y)` (iff x and y share no common bits). That combine rule is the cause of nearly all the AMDGPU test changes (with the exception of three or four tests).
So we need the equivalent utility for SelectionDAG::isBaseWithConstantOffset(
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D87936/new/
https://reviews.llvm.org/D87936
More information about the llvm-commits
mailing list