https://alive2.llvm.org/ce/z/YjUHm- ``` define i1 @src(i64 %x) { entry: %cond = icmp ugt i64 %x, 65535 call void @llvm.assume(i1 %cond) %mask = and i64 %x, -65521 %cmp = icmp eq i64 %mask, 0 ret i1 %cmp } define i1 @tgt(i64 %x) { entry: ret i1 false } ``` See also https://github.com/dtcxzyw/llvm-tools/issues/33.