<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/56601>56601</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
InstCombine hangs in Negator
</td>
</tr>
<tr>
<th>Labels</th>
<td>
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
vzakhari
</td>
</tr>
</table>
<pre>
[main.ll.gz](https://github.com/llvm/llvm-project/files/9136231/main.ll.gz)
Hangs with trunk and 14.0.0: `opt --instcombine main.ll`
`-debug-only=instcombine` shows the following instructions are being produced on and on:
```
New = <badref> = add <4 x i64> %shuffle2226.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg.neg., <i64 add (i64 ptrtoint (ptr @_QFEg2y to i64), i64 -1200), i64 add (i64 ptrtoint (ptr @_QFEg1y to i64), i64 -1200), i64 add (i64 ptrtoint (ptr @_QFEg3y to i64), i64 -1200), i64 add (i64 ptrtoint (ptr @_QFEg4y to i64), i64 -1200)>
```
Passes with `-instcombine-negator-enabled=false`.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJztVcuO2yAU_Rq8QbYw2I698GKaZDSzqdovqMBgmw4DEeBJM1_fi5OoWVRVK82usXjcB5x7zeIc4eSpR_WnV65tYUwxvaN6h2g7x3gIiD0g-ghj0nFeRDG4V3CMebtu-cG772qI4I7aqAB7V7KGshKsG0jaIbJD5OG8PnE7BXwETBz9Yl8wtxKXVUEKAhUxaog7RJzn2oYIJYW2Cl_AIHdBakgulVim3FlzQmx3cxhyOMzuGHCcFR6dMe6o7YTTEb8MUTsbMPcKC5XC8A9yGZTEzq6dOJv--1rlMlYXw_dZHTGUAwuxreDSqxGx_RriUqZghX9g3VRrlNZhXsbRKEppU1g13ed93ud_NBHdJlIAQjjzA22TeYg-Om1j8sHGqCLfvj7uJ3rC0a3sAZQJN9PZvKSE3Ph_AVN-DAz7GJjqTzBs_1uqPa9feAjqIhWJ8W9IPofH5dH5XFkujJJAwCM3IZF_kcmeyY51PIs6GtU_w7XtRUjmVXy0BSJf72eLN_0_q50OYVnlrm4aUmZzX7NNLVhTsUHUsq6Y5KRhldwQQVrVyi4zXCgTktSCwGa6p4RSsilbyhilZdGVdUnrjjeCqrFlA7ydAs0zRSpcOD9lvl97AMkLkDQ6xPArCe-kJ6vUFZ8vcXa-f3vnLzP3Olv77ddmfwLJe5QB">