[all-commits] [llvm/llvm-project] 09e12d: [LLVM][Uniformity] Fix error causing assert on som...

Alex MacLean via All-commits all-commits at lists.llvm.org
Thu Aug 17 21:18:48 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 09e12d13a04f8861b881f79a96ef8a60c9840ee1
      https://github.com/llvm/llvm-project/commit/09e12d13a04f8861b881f79a96ef8a60c9840ee1
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2023-08-18 (Fri, 18 Aug 2023)

  Changed paths:
    M llvm/include/llvm/ADT/GenericUniformityImpl.h
    A llvm/test/Analysis/UniformityAnalysis/NVPTX/non-header-join.ll

  Log Message:
  -----------
  [LLVM][Uniformity] Fix error causing assert on some irreducible control flow

As the test case demonstrates, it is possible for a block to be identified as a
join point while not being the header of a reducible cycle. To address this,
when searching for the outermost cycle made divergent by branch outside it, we
first check for an irreducible outermost cycle before checking if the parent is
reducible.

Reviewed By: sameerds

Differential Revision: https://reviews.llvm.org/D158014




More information about the All-commits mailing list