[all-commits] [llvm/llvm-project] 7c0ff6: [LAA] Change to function analysis for new PM.
Florian Hahn via All-commits
all-commits at lists.llvm.org
Sat Oct 1 07:45:08 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 7c0ff64b0f760e364e59a37f983d87835a8c23a1
https://github.com/llvm/llvm-project/commit/7c0ff64b0f760e364e59a37f983d87835a8c23a1
Author: Florian Hahn <flo at fhahn.com>
Date: 2022-10-01 (Sat, 01 Oct 2022)
Changed paths:
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/include/llvm/Transforms/Scalar/LoopAccessAnalysisPrinter.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/Scalar/LoopAccessAnalysisPrinter.cpp
M llvm/lib/Transforms/Scalar/LoopDistribute.cpp
M llvm/lib/Transforms/Scalar/LoopLoadElimination.cpp
M llvm/lib/Transforms/Scalar/LoopVersioningLICM.cpp
M llvm/lib/Transforms/Utils/LoopVersioning.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Other/new-pm-defaults.ll
M llvm/test/Other/new-pm-lto-defaults.ll
M llvm/test/Other/new-pm-thinlto-defaults.ll
M llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
M llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
M llvm/test/Transforms/LoopDistribute/basic.ll
M llvm/test/Transforms/LoopDistribute/laa-invalidation.ll
M llvm/test/Transforms/LoopUnroll/unroll-loop-invalidation.ll
M llvm/test/Transforms/LoopVectorize/memory-dep-remarks.ll
M llvm/test/Transforms/LoopVectorize/novect-lcssa-cfg-invalidation.ll
M llvm/test/Transforms/SimpleLoopUnswitch/nontrivial-unswitch-markloopasdeleted.ll
Log Message:
-----------
[LAA] Change to function analysis for new PM.
At the moment, LoopAccessAnalysis is a loop analysis for the new pass
manager. The issue with that is that LAI caches SCEV expressions and
modifications in a loop may impact SCEV expressions in other loops, but
we do not have a convenient way to invalidate LAI for other loops
withing a loop pipeline.
To avoid this issue, turn it into a function analysis which returns a
manager object that keeps track of the individual LAI objects per loop.
Fixes #50940.
Fixes #51669.
Reviewed By: aeubanks
Differential Revision: https://reviews.llvm.org/D134606
More information about the All-commits
mailing list