[llvm-bugs] [Bug 37677] opt crashes with "-simple-loop-unswitch -loop-idiom": Assertion `hasDedicatedExits() && "getUniqueExitBlocks assumes the loop has canonical form exits!"' failed.

via llvm-bugs llvm-bugs at lists.llvm.org
Thu Jul 18 02:14:35 PDT 2019


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

Mikael Holmén <mikael.holmen at ericsson.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
                 CC|                            |mikael.holmen at ericsson.com
             Status|NEW                         |RESOLVED

--- Comment #1 from Mikael Holmén <mikael.holmen at ericsson.com> ---
This seems to have been fixed with r366294:

    [LoopInfo] Fix getUniqueNonLatchExitBlocks

    It is possible that exit block has two predecessors and one of them is a
latch
    block while another is not.

    Current algorithm is based on the assumption that all exits are dedicated
    and therefore we can check only first predecessor of loop exit to find all
unique
    exits.

    However if we do not consider latch block and it is first predecessor of
some
    exit then this exit will be found.

    Regression test is added.

    As a side effect of algorithm re-writing, the restriction that all exits
are dedicated
    is eliminated.

    Reviewers: reames, fhahn, efriedma
    Reviewed By: efriedma
    Subscribers: llvm-commits
    Differential Revision: https://reviews.llvm.org/D64787

    llvm-svn: 366294

-- 
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/20190718/a3ad16a9/attachment.html>


More information about the llvm-bugs mailing list