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

    <tr>
        <th>Summary</th>
        <td>
            [SLPVectorizer] Assertion `I >= 0 && I < (NumOpElts * 2) && "Out-of-bounds shuffle mask element"' failed
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

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

    <tr>
      <th>Reporter</th>
      <td>
          aleks-tmb
      </td>
    </tr>
</table>

<pre>
    After 279b1ea65f8403aa6d49e7aafa7e40dc906be4bf we got a regression in the form of a filed assertion, specified in the title.
The reduced test is:
```
define i32 @test() {
bb:
  br label %bb1

bb1:                                              ; preds = %bb3, %bb
  %phi = phi i32 [ %or, %bb3 ], [ 0, %bb ]
  %phi2 = phi i32 [ %add, %bb3 ], [ 0, %bb ]
  br i1 false, label %bb4, label %bb3

bb3:                                              ; preds = %bb1
  %or = or i32 0, %phi
  %add = add i32 0, 0
  br label %bb1

bb4:                                              ; preds = %bb1
  %phi5 = phi i32 [ %phi2, %bb1 ]
  %phi6 = phi i32 [ %phi2, %bb1 ]
  %phi7 = phi i32 [ %phi2, %bb1 ]
  %phi8 = phi i32 [ %phi2, %bb1 ]
  %phi9 = phi i32 [ %phi2, %bb1 ]
  %phi10 = phi i32 [ %phi2, %bb1 ]
  %phi11 = phi i32 [ %phi, %bb1 ]
  %phi12 = phi i32 [ %phi, %bb1 ]
  ret i32 0
}
```
To reproduce it, just run opt with assertions:
`opt -passes=slp-vectorizer test.ll`

Proof:
https://godbolt.org/z/dGfr59vhT
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJysVd-P4yYQ_mvwyygRHvwjfvBD0lyqSlXvpK76jsMQc0eMBXhXvb--gmRzu9e9qhdtFBkz830fwwweZAjmNBH1rN6xel_IJY7O99LSl7CK56EYnPq73-pIHrDthpJkU-tNxYWUjao6aqXUsqWKq2PHm4GqQcMTwclFkODp5CkE4yYwE8SRQDt_BqdBgjaWFMgQyEfjJoa_QJjpaLQh9YyOJlpaM75nfPswEnhSy5EURAoRTGBie_Gxhl__eapIm4nACARW8QRmuGHYAWt3F8Qw3LgAgwcrB7LAsB6G8ip5xZVMbOGnfkzsYPakAjCxv2iKtLv89rwmw3oeTUakMYda75LZ-RtYAKv3eVbvgN_M2fpKB98Skkr9jNLgwZSgpQ2U_C8yUn03F68zJN4jQ-WLDTmf7c7n3TxHO4_mBUYqlUFpvKH4_6po9d7xzqOp3ypAKswt1eW_q9bcQ2rvIW3uIXX3kEp-F6v8Aes_SW-e-h-SPMXrSbmchnb_Zu94cOBp9i41GjAxaX1eQgS_TODmCE8mjt-61qsWlNyrOfkCE_tg59UjHaPz5iv53LLW1t7WuTw_eef0TWOMcc6KeGB4ODk1OBvXzp8YHr4yPKhfta-7x_GhUL1QnehkQX3Z8po3QnRlMfYVCjo2pdACu6prBqRNc6w61LKTetOJwvTIseJliSVWoizXXHWqwk2layU1Vh2rOJ2lsWtrH89p7cKEsFDftl3ZFPmrCvmyQJzoCbKTIaa7w_eJsxqWU2AVtybE8E0lt_JE_PP3T3_d0sLqPWyfkwms4b8BEx9SWTkwbBg2kCypnps_lvPH-YONARhuAXM_v0AY4sclrpxeDW6ZVIAwLlpbgrMMX4AsnWmKKUhsQct07xSLt_136TZxXIb10Z0ZHlLY12E1e_eZjpHhIW82MDzkZPwTAAD__7mj6iM">