[llvm] [ValueTracking] If overlap in unsigned and signed range is contiguous, return it (PR #144267)

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 27 13:37:57 PDT 2025


================
@@ -1412,8 +1412,7 @@ define void @interleave_deinterleave_factor3(ptr writeonly noalias %dst, ptr rea
 ; CHECK-NEXT:    [[TMP18:%.*]] = icmp eq i64 [[INDEX_NEXT]], [[N_VEC]]
 ; CHECK-NEXT:    br i1 [[TMP18]], label [[MIDDLE_BLOCK:%.*]], label [[VECTOR_BODY]], !llvm.loop [[LOOP41:![0-9]+]]
 ; CHECK:       middle.block:
-; CHECK-NEXT:    [[CMP_N:%.*]] = icmp eq i64 [[N_MOD_VF]], 0
-; CHECK-NEXT:    br i1 [[CMP_N]], label [[FOR_END:%.*]], label [[SCALAR_PH]]
+; CHECK-NEXT:    br i1 false, label [[FOR_END:%.*]], label [[SCALAR_PH]]
----------------
nikic wrote:

All of these changes look like miscompiles.

https://github.com/llvm/llvm-project/pull/144267


More information about the llvm-commits mailing list