Skip to content

Commit 29817a9

Browse files
committed
[X86] Add test coverage for #74101
1 parent 59531cf commit 29817a9

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

llvm/test/CodeGen/X86/combine-sub.ll

+13
Original file line numberDiff line numberDiff line change
@@ -452,3 +452,16 @@ define void @PR52032_4(ptr %p, ptr %q) {
452452
store <4 x i32> %i9, ptr %p2, align 4
453453
ret void
454454
}
455+
456+
; FIXME: Failure to fold add(xor(bsr(x),-32),33) -> add(or(bsr(x),-32),33) -> add(bsr(x),1)
457+
define i32 @PR74101(i32 %a0) {
458+
; CHECK-LABEL: PR74101:
459+
; CHECK: # %bb.0:
460+
; CHECK-NEXT: bsrl %edi, %eax
461+
; CHECK-NEXT: xorl $-32, %eax
462+
; CHECK-NEXT: addl $33, %eax
463+
; CHECK-NEXT: retq
464+
%lz = call i32 @llvm.ctlz.i32(i32 %a0, i1 true)
465+
%add = sub nuw nsw i32 32, %lz
466+
ret i32 %add
467+
}

0 commit comments

Comments
 (0)