<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/142405>142405</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[InstCombine] Infinite loop at -O3
</td>
</tr>
<tr>
<th>Labels</th>
<td>
llvm:instcombine,
llvm:hang,
generated by fuzzer
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
dtcxzyw
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
dtcxzyw
</td>
</tr>
</table>
<pre>
Reproducer: https://godbolt.org/z/aYWhfr6Y9
```
; bin/opt -passes=instcombine test.ll -S
define i32 @test(i32 noundef %0) {
entry:
%cond.i = call i32 @llvm.smax.i32(i32 %0, i32 0)
%conv.i = trunc i32 %cond.i to i16
%conv21 = zext i16 %conv.i to i32
%cmp22 = icmp eq i32 %0, %conv21
%conv23 = zext i1 %cmp22 to i32
%narrow.i = mul i32 %cond.i, %conv23
%1 = and i32 %narrow.i, 1
ret i32 %1
}
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJxck0FvozwQhn_NcLGCzBgScuBAGyH19EnfHlY92tghXhmbtU3b5NevTElDKyEhZh4ev5bHPAQ9WKUaqJ4AUcb-43Z9B0SoThmf48X5Zi1mwslr87-avJNzrzywllxinAKwFrAD7AYnhTMxd34A7G6AHX_9fTn7_esRaAt7uj60BfZEhLaAnZsi2U08BBWAnbQNsXej0FaRqELMjSG7X0Bbqc6pphkSKGlqAdbpy7rZSnUmgBUFPBI4PAFtlY3-mnLRlqRW76zMNQF2Ij035u4x5m3Mw8g_cs1wFX6KnhckGTeKt1UR_Wx7ssKrOjqii32CVxaLhb2pj5g6G0VCGX55xwlxQXU_TkT9JdsUX7KtmW3ND8d3r-Xeu_c18Tib73m3bnb_5TMxt_LO3h2JXhIQr-K9mQpwOP042Uw2TB7ZkWeqKQ5lXR-qoqTZpelrwUR5pOwsec_EvpIMS6WOBe5LwWue6QYpVnRPsShZXdU5o4easYPAoipkSQsoqRq5NvlybM4PmQ5hVk1RYkmrzHChTFgHOSHA2s08pZnG50frwu3wVRuUVZ5HJYm4kvN8uym_3gHfJH4n5iGkgdEhhsf6UUezXJ0XG-Lzuk51Ii_2rK2OihjnJsIj2f3Hstmb5sd90fEyi7x3I2C3xPp87Sbv_qg-AnbLDgNgt27yrcF_AQAA__-fRBQm">