<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/59003>59003</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[DAG] Infinite loop in DAGCombiner::Run
</td>
</tr>
<tr>
<th>Labels</th>
<td>
backend:X86
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
omern1
</td>
</tr>
</table>
<pre>
Compiling the following code results in an infinite loop in `DAGCombiner::Run`:
```
define void @_Z1sv(<2 x float> %0, <2 x float> %1, <8 x i1> %shuffle108) #0 {
entry:
br label %for.body.i
for.body.i: ; preds = %for.body.i, %entry
%2 = phi <8 x float> [ zeroinitializer, %entry ], [ %3, %for.body.i ]
%shuffle111 = shufflevector <2 x float> %0, <2 x float> zeroinitializer, <8 x i32> <i32 0, i32 1, i32 0, i32 1, i32 0, i32 1, i32 0, i32 1>
%shuffle112 = shufflevector <2 x float> %1, <2 x float> zeroinitializer, <8 x i32> <i32 0, i32 1, i32 0, i32 1, i32 0, i32 1, i32 0, i32 1>
%3 = select <8 x i1> %shuffle108, <8 x float> %shuffle111, <8 x float> %shuffle112
%4 = shufflevector <8 x float> zeroinitializer, <8 x float> %2, <8 x i32> <i32 0, i32 9, i32 2, i32 11, i32 4, i32 13, i32 6, i32 15>
%5 = select <8 x i1> zeroinitializer, <8 x float> zeroinitializer, <8 x float> %2
br label %for.body.i
}
attributes #0 = { "target-cpu"="btver2" }
```
https://godbolt.org/z/Ef5cGjnGP
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzNVU1z2yAQ_TXShYmHD335oENip5neOj11eumAhCxSLDSA3Ca_voss24qrNu6tHox3H7D7eMBamPql3Jh9r7Tqdsi3EjVGa_MjeJWpJbLSDdo7pDrEO-gb1SkvkTamD1iU4e39E0QQqpM2YvfQPg8dwMHG2wifekCObXRrCYEkOhhVoyjB374Sd4hoEbENRT9Row33EXtEEU1xRDdoAScTXgCuyAS6dmgaLQkuIroGgGEU5Q_HlLLz9uXMCiFhkeZC6rCuMXYlQIuVmnOeoQwW3PSJ2APqrawdWNur0IEwTY88JhLg03Fm36rTbi67TB_Qq7QmSK64VmDPY8D4dvRhGmBsGrskHCdcEp3EIWTMOLkHWXljlxReVH6Jz3QIjI4L2QYsNC4OBjkZ_4iwxyXq9Dbq5P-hzo6MpQayf72vm9_Pf35m702gs5zJskrFbWrMw9P3VVqfDHpW4CxKcobYycrOUPpWqPSPQt1A9dbd3PL28-28CHDvrRKDl26qJ-FZ5-HFUc_tTvq7qh_AARx64Q_SghBwT89h3la-1vvehTJEP0DbmVoY7VfG7sB7he9jk1ZPz93Tp1iWJMuKlBKcJ3FdsnrN1jz2ymtZwpuHugvvG328LslL9TgerC6vMivfDmJVmT04Wh9OP3e9Nc9wBOAq5wbpwEjXGLO4LYssy3FNBeeFSNJU1DzHglek4VlRVUUWj6K6wC5owavvsqsh45ciCwql21iVFFMK1zklCU5YsmJp3eCE5lWTVVI0BP4M5J4rvQpcgiyxLUdaYtg5GNTKeXcZ5M6pXSdHQUJ8PvjW2NLspe1IPG6gHNn_AhIQ66A">