[all-commits] [llvm/llvm-project] 46abd1: [LoopFlatten] Fix assertion failure in checkOverflow

RosieSumpter via All-commits all-commits at lists.llvm.org
Fri Aug 13 02:15:49 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 46abd1fbe88fe1f4b0e6cb2b87f3e7d148bbadf7
      https://github.com/llvm/llvm-project/commit/46abd1fbe88fe1f4b0e6cb2b87f3e7d148bbadf7
  Author: Rosie Sumpter <rosie.sumpter at arm.com>
  Date:   2021-08-13 (Fri, 13 Aug 2021)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopFlatten.cpp
    M llvm/test/Transforms/LoopFlatten/widen-iv.ll

  Log Message:
  -----------
  [LoopFlatten] Fix assertion failure in checkOverflow

There is an assertion failure in computeOverflowForUnsignedMul
(used in checkOverflow) due to the inner and outer trip counts
having different types. This occurs when the IV has been widened,
but the loop components are not successfully rediscovered.
This is fixed by some refactoring of the code in findLoopComponents
which identifies the trip count of the loop.




More information about the All-commits mailing list