<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">