[all-commits] [llvm/llvm-project] c354c6: [SCEV] Add function to compute minium of countable...
Florian Hahn via All-commits
all-commits at lists.llvm.org
Mon May 27 20:17:57 PDT 2024
Branch: refs/heads/users/fhahn/scev-countable-exit-counts
Home: https://github.com/llvm/llvm-project
Commit: c354c6bb33a27c2388cf0b6f6a795ee841f58eca
https://github.com/llvm/llvm-project/commit/c354c6bb33a27c2388cf0b6f6a795ee841f58eca
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-05-27 (Mon, 27 May 2024)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/becount-invalidation.ll
M llvm/test/Analysis/ScalarEvolution/exit-count-non-strict.ll
M llvm/test/Analysis/ScalarEvolution/exponential-behavior.ll
M llvm/test/Analysis/ScalarEvolution/flags-from-poison.ll
M llvm/test/Analysis/ScalarEvolution/incorrect-exit-count.ll
M llvm/test/Analysis/ScalarEvolution/max-trip-count.ll
M llvm/test/Analysis/ScalarEvolution/ne-overflow.ll
M llvm/test/Analysis/ScalarEvolution/no-wrap-symbolic-becount.ll
M llvm/test/Analysis/ScalarEvolution/outer_phi.ll
M llvm/test/Analysis/ScalarEvolution/pr48225.ll
M llvm/test/Analysis/ScalarEvolution/ptrtoint.ll
M llvm/test/Analysis/ScalarEvolution/symbolic_max_exit_count.ll
M llvm/test/Analysis/ScalarEvolution/trip-count6.ll
Log Message:
-----------
[SCEV] Add function to compute minium of countable exits.
This patch introduces getBackedgeTakenCountForCountableExits and a
predicated version to compute the minimum of the countable exits.
The intended use for this is loop access analysis for loops with
uncountable exits. When analyzing dependences and computing runtime
checks, we need the smallest upper bound on the number of iterations. In
terms of memory safety, it shouldn't matter if any uncomputable exits
leave the loop, as long as we prove that there are no dependences given
the minimum of the countable exits. The same should apply also for
generating runtime checks.
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