[llvm] [DAG] isKnownToBeAPowerOfTwo - Power of 2 value is known to be power of 2 after BSWAP/BITREVERSE (PR #182207)
Manuel Dun via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 3 07:06:21 PST 2026
================
@@ -197,40 +197,6 @@ define i1 @pow2_srl_fail1(i32 %x, i32 %y) {
ret i1 %r
}
-define i1 @pow2_rotl(i32 %x, i32 %y) {
-; CHECK-LABEL: pow2_rotl:
-; CHECK: # %bb.0:
-; CHECK-NEXT: movl %esi, %ecx
-; CHECK-NEXT: movl $1048576, %eax # imm = 0x100000
-; CHECK-NEXT: # kill: def $cl killed $cl killed $ecx
-; CHECK-NEXT: roll %cl, %eax
-; CHECK-NEXT: testl %eax, %edi
-; CHECK-NEXT: setne %al
-; CHECK-NEXT: retq
- %d = call i32 @llvm.fshl.i32(i32 1048576, i32 1048576, i32 %y)
- %and = and i32 %x, %d
- %r = icmp eq i32 %and, %d
- ret i1 %r
-}
-
-define i1 @pow2_rotl_fail0(i32 %x, i32 %y) {
-; CHECK-LABEL: pow2_rotl_fail0:
-; CHECK: # %bb.0:
-; CHECK-NEXT: movl %esi, %ecx
-; CHECK-NEXT: movl $1048576, %eax # imm = 0x100000
-; CHECK-NEXT: movl $512, %edx # imm = 0x200
-; CHECK-NEXT: # kill: def $cl killed $cl killed $ecx
-; CHECK-NEXT: shldl %cl, %eax, %edx
-; CHECK-NEXT: notl %edi
-; CHECK-NEXT: testl %edi, %edx
-; CHECK-NEXT: sete %al
-; CHECK-NEXT: retq
- %d = call i32 @llvm.fshl.i32(i32 512, i32 1048576, i32 %y)
- %and = and i32 %x, %d
- %r = icmp eq i32 %and, %d
- ret i1 %r
-}
----------------
manueldun wrote:
sorry, I removed the wrong test, my bad
https://github.com/llvm/llvm-project/pull/182207
More information about the llvm-commits
mailing list