[all-commits] [llvm/llvm-project] 9e341b: [DA] Properly pass outermost loop to monotonicity ...

Ryotaro Kasuga via All-commits all-commits at lists.llvm.org
Fri Nov 7 10:08:25 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9e341b36ed69022728c38b8457b457d65879eb73
      https://github.com/llvm/llvm-project/commit/9e341b36ed69022728c38b8457b457d65879eb73
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2025-11-07 (Fri, 07 Nov 2025)

  Changed paths:
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/test/Analysis/DependenceAnalysis/monotonicity-no-wrap-flags.ll

  Log Message:
  -----------
  [DA] Properly pass outermost loop to monotonicity checker (#166928)

This patch fixes the unexpected result in monotonicity check for
`@step_is_variant` in `monotonicity-no-wrap-flags.ll`. Currently, the
SCEV is considered non-monotonic if it contains an expression which is
neither loop-invariant nor an affine addrec. In `@step_is_variant`, the
`offset_i` satisfies this condition, but `offset_i + j` was classified
as monotonic.

The root cause is that a non-outermost loop was passed to monotonicity
checker instead of the outermost one. This patch ensures that the
correct outermost loop is passed.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list