<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/122602>122602</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [LoopVectorize] Miscompilation
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            miscompilation,
            loopoptim,
            vectorizers
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          dtcxzyw
      </td>
    </tr>
</table>

<pre>
    Reproducer: https://alive2.llvm.org/ce/z/PASME7
```
; bin/opt -passes=loop-vectorize reduced.ll -S -o opt.ll
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

@e = global [1 x [4 x i16]] zeroinitializer
@crc32_tab = global [256 x i32] zeroinitializer

define i32 @src() {
entry:
  store i32 1, ptr @crc32_tab, align 4
  br label %for.cond4.preheader.outer.i.i.split

for.cond4.preheader.outer.i.i.split: ; preds = %for.cond4.preheader.outer.i.i.split, %entry
  %0 = phi i64 [ %1, %for.cond4.preheader.outer.i.i.split ], [ 3, %entry ]
 %indvars.iv.i.i23 = phi i64 [ %indvars.iv.next.i.i, %for.cond4.preheader.outer.i.i.split ], [ 2, %entry ]
  %arrayidx9.i.i = getelementptr i16, ptr @e, i64 %0
  store i16 1, ptr %arrayidx9.i.i, align 2
  %indvars.iv.next.i.i = add i64 %indvars.iv.i.i23, -1
  %tobool7.not.i.i = icmp eq i64 %indvars.iv.next.i.i, 0
  %1 = add i64 %indvars.iv.next.i.i, 1
  br i1 %tobool7.not.i.i, label %for.end.thread.i.i.1, label %for.cond4.preheader.outer.i.i.split

for.end.thread.i.i.1: ; preds = %for.cond4.preheader.outer.i.i.split
 %arrayidx947.i.i = getelementptr i16, ptr @e, i64 %1
  store i16 0, ptr %arrayidx947.i.i, align 2
  br label %for.body3

for.body3: ; preds = %for.body3, %for.end.thread.i.i.1
 %indvars.iv = phi i64 [ 0, %for.end.thread.i.i.1 ], [ %indvars.iv.next, %for.body3 ]
  %xor2.i70.i.i1718 = phi i32 [ 0, %for.end.thread.i.i.1 ], [ %3, %for.body3 ]
  %arrayidx5 = getelementptr i16, ptr @e, i64 %indvars.iv
 %2 = load i16, ptr %arrayidx5, align 2
  %conv = zext i16 %2 to i64
 %idxprom.i.i.i = and i64 %conv, 1
  %arrayidx.i.i.i = getelementptr i32, ptr @crc32_tab, i64 %idxprom.i.i.i
  %3 = load i32, ptr %arrayidx.i.i.i, align 4
  %indvars.iv.next = add i64 %indvars.iv, 1
  %exitcond.not = icmp eq i64 %indvars.iv.next, 4
  br i1 %exitcond.not, label %for.end8, label %for.body3

for.end8:                                         ; preds = %for.body3
  ret i32 %xor2.i70.i.i1718
}
```
```
> bin/lli reduced.ll
> echo $?
0
> bin/lli opt.ll
> echo $?
1
```
llvm version: ab9a80a3ad78f611fd06cd6f7215bd828809310c
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJycVk2P4jgQ_TXmYiWyy_niwCE9DKcdabUj7XXkxAa8a-KsYxi6f_2qEgIh0K2eQQgSp-o9V70qp2TXmV2j9YqkLyRdL-Qx7J1fqVCf315_LiqnXld_6dY7day1J6Kk-xDajoiSwIbARlpz0hBbezrEzu8IbGpNYPNGYPNn-f3b15ywkmTs8mUlES-0Mg2BjWsDjVrZdbojYm2da6OTroPz5k1Tr5FPxdbS6DuNHHVtiK0lrAzS73SgSgZp5as7BkrEmhIAHR2IKHXUQs6IKAX0P3jL72_xKkv6n8hcLzgURJQcimhbsMtV0y9lo3uWRN_RDOC2j-BNa_W4h3OR_ciS6Nj827ifTWRNczxHu-Y4uOA3YYPxzrpKWkrSF07P-JfQMzU8I-mapGv6pr0zjQlGWvOm_eBZ-1rAjyCrGQKkGToLeMeTlUpvTaPRhJKEdb4mGMaSkvyFsFI3wb-ioqyktAvOD5acwBfaBk-n1Lgmrdk1NOnNK0-trLSlBNKt83HtGpXErdd7LZX2sTsG7WMTm7hrrQnDdj5jKEqKtdJ6rbpLej9FAF_QcggJN0ggZb1_uzfUZAkmDBf5xfITmBRFQev0hYopQf-AlXhvGnWSvovNCf1APKOc2DT6HNDw9zYBzzaBC9J7-WrUeYl-Q5XooK0-6CagklhgN1E1Xvf7g5RNxefZRPwZ6q0AYGR9ElfPLZUa4efpQZSIjwDBVc7ZPG7czdnUh5bq_54ATHPHRgj-AePUgY9Va_gTZrS4K2fdqDjsvZaqV4I_GHy63h-QfrfAh3q7apLkv6w1n2nNnmk94M7Vnrc7vh_ELcjh9r3Ihqe3in9IybyVHpqIfeA9bZBH_SeO_TamXXN2HmKTM8ThOS9utHhe_hqt-IhoTG76S3LdIrkkCHp366S685rgP2nS2jVDPt_0OfSy90jBIc2YeXVuvTv0gV1auLk2FALcOmjCNjGfhSTgvVfIGNqUcMQVk_AmCHPC-ZvoUfP3j4S7OPTZBGw6PAQ-cfSgb3J_ikwRnh0hxcPirG96G1HSz34-aC_cmNdhqN3H2kbOfD0fyu4GtK-XAc1aM5nDLo90vXeUQELEhrDy0eE6pz0a8xkTzoz0pH1nXIPBy2opCyaFVHmxzTjfKpbVKtvmwNNKFVAUbCk4qxdqJdRSLOVCr3gusownOeOL_aqSFRdFlcCy2hZK5bpiy7rOIZN5lS8ztTArYJAyzjnP0gJ4nAu9TTlnQi4zJQuOnXeQxl7n2YXpuqNecYCMwaKXsOtHZYCD6Wp3aI2VAQMArFQCgIOsa4M5XFeuU63vcC1dL_wK8aPquOtIwqzpQndjDCbYfhz_w7n279EXR7tvd4yLo7er-2F8Z8L-WMW1O_RqnMa_qPXuH10HAps-no7A5hLSaQX_BwAA__-JbIbj">