[llvm] [ValueTracking] Use `SimplifyQuery` in `isKnownNonEqual` (PR #124942)
Yingwei Zheng via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 30 18:54:55 PST 2025
================
@@ -1609,17 +1609,13 @@ if.else:
ret i16 0
}
-; TODO: %cmp always evaluates to false
-
define i1 @test_simplify_icmp2(double %x) {
; CHECK-LABEL: @test_simplify_icmp2(
; CHECK-NEXT: [[ABS:%.*]] = tail call double @llvm.fabs.f64(double [[X:%.*]])
; CHECK-NEXT: [[COND:%.*]] = fcmp oeq double [[ABS]], 0x7FF0000000000000
; CHECK-NEXT: br i1 [[COND]], label [[IF_THEN:%.*]], label [[IF_ELSE:%.*]]
; CHECK: if.then:
-; CHECK-NEXT: [[CAST:%.*]] = bitcast double [[X]] to i64
-; CHECK-NEXT: [[CMP:%.*]] = icmp eq i64 [[CAST]], 3458764513820540928
-; CHECK-NEXT: ret i1 [[CMP]]
+; CHECK-NEXT: ret i1 false
----------------
dtcxzyw wrote:
With DC we will have a more precise KnownBits: https://github.com/llvm/llvm-project/blob/8af24ce51630e4811a68201e863ea496196586ac/llvm/lib/Analysis/ValueTracking.cpp#L3830-L3840
https://github.com/llvm/llvm-project/pull/124942
More information about the llvm-commits
mailing list