<html>
<head>
<base href="https://bugs.llvm.org/">
</head>
<body><span class="vcard"><a class="email" href="mailto:listmail@philipreames.com" title="listmail@philipreames.com">listmail@philipreames.com</a>
</span> changed
<a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - opt -slsr crashing with "../lib/Analysis/ScalarEvolution.cpp:5678: llvm::ConstantRange llvm::ScalarEvolution::getRangeForUnknownRecurrence(const llvm::SCEVUnknown *): Assertion `L->getHeader() == P->getParent()' failed.""
href="https://bugs.llvm.org/show_bug.cgi?id=49768">bug 49768</a>
<br>
<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>What</th>
<th>Removed</th>
<th>Added</th>
</tr>
<tr>
<td style="text-align:right;">Status</td>
<td>REOPENED
</td>
<td>RESOLVED
</td>
</tr>
<tr>
<td style="text-align:right;">Resolution</td>
<td>---
</td>
<td>FIXED
</td>
</tr></table>
<p>
<div>
<b><a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - opt -slsr crashing with "../lib/Analysis/ScalarEvolution.cpp:5678: llvm::ConstantRange llvm::ScalarEvolution::getRangeForUnknownRecurrence(const llvm::SCEVUnknown *): Assertion `L->getHeader() == P->getParent()' failed.""
href="https://bugs.llvm.org/show_bug.cgi?id=49768#c9">Comment # 9</a>
on <a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - opt -slsr crashing with "../lib/Analysis/ScalarEvolution.cpp:5678: llvm::ConstantRange llvm::ScalarEvolution::getRangeForUnknownRecurrence(const llvm::SCEVUnknown *): Assertion `L->getHeader() == P->getParent()' failed.""
href="https://bugs.llvm.org/show_bug.cgi?id=49768">bug 49768</a>
from <span class="vcard"><a class="email" href="mailto:listmail@philipreames.com" title="listmail@philipreames.com">listmail@philipreames.com</a>
</span></b>
<pre>JFYI, should be fixed (again).
commit fee330824a2b3d7e502a27e1464c418a4663d7a3
Author: Max Kazantsev <<a href="mailto:mkazantsev@azul.com">mkazantsev@azul.com</a>>
Date: Wed Apr 7 13:14:53 2021 +0700
[SCEV] Fix false-positive recognition of simple recurrences. PR49856
A value from reachable block may come to a Phi node as its input from
unreachable block. This may confuse matchSimpleRecurrence which
has no access to DomTree and can falsely recognize something as a
recurrency
because of this effect, as the attached test shows.
Patch `ae7b1e` deals with half of this problem, but it only accounts from
the case when an unreachable instruction comes to Phi as an input.
This patch provides a generalization by checking that no Phi block's
predecessor is unreachable (no matter what the input is).
Differential Revision: <a href="https://reviews.llvm.org/D99929">https://reviews.llvm.org/D99929</a>
Reviewed By: reames</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>