[llvm-bugs] [Bug 46372] New: DivergenceAnalysis incorrectly identifies join blocks of a loop exit

via llvm-bugs llvm-bugs at lists.llvm.org
Wed Jun 17 19:41:08 PDT 2020


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

            Bug ID: 46372
           Summary: DivergenceAnalysis incorrectly identifies join blocks
                    of a loop exit
           Product: libraries
           Version: trunk
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: Global Analyses
          Assignee: unassignedbugs at nondot.org
          Reporter: sameer.sahasrabuddhe at amd.com
                CC: llvm-bugs at lists.llvm.org

Created attachment 23626
  --> https://bugs.llvm.org/attachment.cgi?id=23626&action=edit
block bb3 is not marked as divergent (but should be)

For a loop, a join block is a block that is reachable along multiple disjoint
paths from the exiting block of a loop. If the exit condition of the loop is
divergent, then such join blocks must also be marked divergent. This currently
fails in some cases because not all join blocks are identified correctly.

The current workaround is to conservatively mark every join block of any branch
(not necessarily the exiting block of a loop) as divergent.

-- 
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/20200618/11cf20fa/attachment.html>


More information about the llvm-bugs mailing list