[llvm-bugs] [Bug 49768] opt -slsr crashing with "../lib/Analysis/ScalarEvolution.cpp:5678: llvm::ConstantRange llvm::ScalarEvolution::getRangeForUnknownRecurrence(const llvm::SCEVUnknown *): Assertion `L->getHeader() == P->getParent()' failed."

via llvm-bugs llvm-bugs at lists.llvm.org
Thu Apr 8 13:30:22 PDT 2021


https://bugs.llvm.org/show_bug.cgi?id=49768

listmail at philipreames.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #9 from listmail at philipreames.com ---
JFYI, should be fixed (again).

commit fee330824a2b3d7e502a27e1464c418a4663d7a3
Author: Max Kazantsev <mkazantsev at azul.com>
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: https://reviews.llvm.org/D99929
    Reviewed By: reames

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20210408/544c2452/attachment.html>


More information about the llvm-bugs mailing list