Skip to content

Commit 7e0073d

Browse files
committed
[GlobalISel] Update AMDGPU tests for G_ABS KnownBits tracking
1 parent 66cf46f commit 7e0073d

File tree

2 files changed

+7
-20
lines changed

2 files changed

+7
-20
lines changed

llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-abs.mir

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -302,11 +302,8 @@ body: |
302302
; SI-NEXT: [[ABS:%[0-9]+]]:_(s32) = G_ABS [[SEXT_INREG]]
303303
; SI-NEXT: [[SEXT_INREG1:%[0-9]+]]:_(s32) = G_SEXT_INREG [[LSHR]], 16
304304
; SI-NEXT: [[ABS1:%[0-9]+]]:_(s32) = G_ABS [[SEXT_INREG1]]
305-
; SI-NEXT: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 65535
306-
; SI-NEXT: [[AND:%[0-9]+]]:_(s32) = G_AND [[ABS]], [[C1]]
307-
; SI-NEXT: [[AND1:%[0-9]+]]:_(s32) = G_AND [[ABS1]], [[C1]]
308-
; SI-NEXT: [[SHL:%[0-9]+]]:_(s32) = G_SHL [[AND1]], [[C]](s32)
309-
; SI-NEXT: [[OR:%[0-9]+]]:_(s32) = G_OR [[AND]], [[SHL]]
305+
; SI-NEXT: [[SHL:%[0-9]+]]:_(s32) = G_SHL [[ABS1]], [[C]](s32)
306+
; SI-NEXT: [[OR:%[0-9]+]]:_(s32) = G_OR [[ABS]], [[SHL]]
310307
; SI-NEXT: [[BITCAST1:%[0-9]+]]:_(<2 x s16>) = G_BITCAST [[OR]](s32)
311308
; SI-NEXT: $vgpr0 = COPY [[BITCAST1]](<2 x s16>)
312309
;
@@ -429,16 +426,11 @@ body: |
429426
; SI-NEXT: [[ABS2:%[0-9]+]]:_(s32) = G_ABS [[SEXT_INREG2]]
430427
; SI-NEXT: [[SEXT_INREG3:%[0-9]+]]:_(s32) = G_SEXT_INREG [[LSHR1]], 16
431428
; SI-NEXT: [[ABS3:%[0-9]+]]:_(s32) = G_ABS [[SEXT_INREG3]]
432-
; SI-NEXT: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 65535
433-
; SI-NEXT: [[AND:%[0-9]+]]:_(s32) = G_AND [[ABS]], [[C1]]
434-
; SI-NEXT: [[AND1:%[0-9]+]]:_(s32) = G_AND [[ABS1]], [[C1]]
435-
; SI-NEXT: [[SHL:%[0-9]+]]:_(s32) = G_SHL [[AND1]], [[C]](s32)
436-
; SI-NEXT: [[OR:%[0-9]+]]:_(s32) = G_OR [[AND]], [[SHL]]
429+
; SI-NEXT: [[SHL:%[0-9]+]]:_(s32) = G_SHL [[ABS1]], [[C]](s32)
430+
; SI-NEXT: [[OR:%[0-9]+]]:_(s32) = G_OR [[ABS]], [[SHL]]
437431
; SI-NEXT: [[BITCAST2:%[0-9]+]]:_(<2 x s16>) = G_BITCAST [[OR]](s32)
438-
; SI-NEXT: [[AND2:%[0-9]+]]:_(s32) = G_AND [[ABS2]], [[C1]]
439-
; SI-NEXT: [[AND3:%[0-9]+]]:_(s32) = G_AND [[ABS3]], [[C1]]
440-
; SI-NEXT: [[SHL1:%[0-9]+]]:_(s32) = G_SHL [[AND3]], [[C]](s32)
441-
; SI-NEXT: [[OR1:%[0-9]+]]:_(s32) = G_OR [[AND2]], [[SHL1]]
432+
; SI-NEXT: [[SHL1:%[0-9]+]]:_(s32) = G_SHL [[ABS3]], [[C]](s32)
433+
; SI-NEXT: [[OR1:%[0-9]+]]:_(s32) = G_OR [[ABS2]], [[SHL1]]
442434
; SI-NEXT: [[BITCAST3:%[0-9]+]]:_(<2 x s16>) = G_BITCAST [[OR1]](s32)
443435
; SI-NEXT: [[CONCAT_VECTORS:%[0-9]+]]:_(<4 x s16>) = G_CONCAT_VECTORS [[BITCAST2]](<2 x s16>), [[BITCAST3]](<2 x s16>)
444436
; SI-NEXT: $vgpr0_vgpr1 = COPY [[CONCAT_VECTORS]](<4 x s16>)

llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.abs.ll

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -459,8 +459,6 @@ define amdgpu_cs <2 x i16> @abs_sgpr_v2i16(<2 x i16> inreg %arg) {
459459
; GFX8-NEXT: s_sext_i32_i16 s0, s0
460460
; GFX8-NEXT: s_abs_i32 s1, s1
461461
; GFX8-NEXT: s_abs_i32 s0, s0
462-
; GFX8-NEXT: s_and_b32 s1, 0xffff, s1
463-
; GFX8-NEXT: s_and_b32 s0, 0xffff, s0
464462
; GFX8-NEXT: s_lshl_b32 s1, s1, 16
465463
; GFX8-NEXT: s_or_b32 s0, s0, s1
466464
; GFX8-NEXT: ; return to shader part epilog
@@ -548,12 +546,9 @@ define amdgpu_cs <3 x i16> @abs_sgpr_v3i16(<3 x i16> inreg %arg) {
548546
; GFX8-NEXT: s_abs_i32 s2, s2
549547
; GFX8-NEXT: s_abs_i32 s0, s0
550548
; GFX8-NEXT: s_sext_i32_i16 s1, s1
551-
; GFX8-NEXT: s_and_b32 s2, 0xffff, s2
552-
; GFX8-NEXT: s_abs_i32 s1, s1
553-
; GFX8-NEXT: s_and_b32 s0, 0xffff, s0
554549
; GFX8-NEXT: s_lshl_b32 s2, s2, 16
550+
; GFX8-NEXT: s_abs_i32 s1, s1
555551
; GFX8-NEXT: s_or_b32 s0, s0, s2
556-
; GFX8-NEXT: s_and_b32 s1, 0xffff, s1
557552
; GFX8-NEXT: ; return to shader part epilog
558553
;
559554
; GFX10-LABEL: abs_sgpr_v3i16:

0 commit comments

Comments
 (0)