[all-commits] [llvm/llvm-project] b06f10: [DA] Add check for base pointer invariance (#148241)

Ryotaro Kasuga via All-commits all-commits at lists.llvm.org
Fri Jul 25 11:25:22 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b06f10d96c6d0fb89253c75c7f1d75c4cf519339
      https://github.com/llvm/llvm-project/commit/b06f10d96c6d0fb89253c75c7f1d75c4cf519339
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2025-07-26 (Sat, 26 Jul 2025)

  Changed paths:
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/test/Analysis/DependenceAnalysis/Banerjee.ll
    M llvm/test/Analysis/DependenceAnalysis/FlipFlopBaseAddress.ll
    M llvm/test/Analysis/DependenceAnalysis/GCD.ll
    M llvm/test/Analysis/DependenceAnalysis/NonAffineExpr.ll
    M llvm/test/Analysis/DependenceAnalysis/Preliminary.ll
    M llvm/test/Analysis/DependenceAnalysis/PreliminaryNoValidityCheckFixedSize.ll
    M llvm/test/Analysis/DependenceAnalysis/SymbolicRDIV.ll

  Log Message:
  -----------
  [DA] Add check for base pointer invariance (#148241)

As specified in #53942, DA assumes base pointer invariance in its
process. Some cases were fixed by #116628. However, that PR only
addressed the parts related to AliasAnalysis, so the original issue
persists in later stages, especially when the AliasAnalysis results in
`MustAlias`.
This patch insert an explicit loop-invariant checks for the base pointer
and skips analysis when it is not loop-invariant.

Fix the cases added in #148240.



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