[all-commits] [llvm/llvm-project] 61b0a2: [BasicAA] Fix handling of indirect assumption base...
Nikita Popov via All-commits
all-commits at lists.llvm.org
Fri Jul 26 00:47:30 PDT 2024
Branch: refs/heads/release/19.x
Home: https://github.com/llvm/llvm-project
Commit: 61b0a2fdf2c1d7432f54cfd0cd2e75556bdc0d33
https://github.com/llvm/llvm-project/commit/61b0a2fdf2c1d7432f54cfd0cd2e75556bdc0d33
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-07-26 (Fri, 26 Jul 2024)
Changed paths:
M llvm/include/llvm/Analysis/AliasAnalysis.h
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
A llvm/test/Transforms/SLPVectorizer/X86/pr98978.ll
Log Message:
-----------
[BasicAA] Fix handling of indirect assumption based results (#100130)
If a result is potentially based on a not yet proven assumption,
BasicAA will remember it inside AssumptionBasedResults and remove
the cache entry if an assumption higher up is later disproved.
However, we currently miss the case where another cache entry ends
up depending on such an AssumptionBased result.
Fix this by introducing an additional AssumptionBased state for
cache entries. If such a result is used, we'll still increment
AAQI.NumAssumptionUses, which means that the using entry will
also become AssumptionBased and be cleared if the assumption is
disproved.
At the end of the root query, convert remaining AssumptionBased
results into definitive results.
Fixes https://github.com/llvm/llvm-project/issues/98978.
(cherry picked from commit 91073380ac5a0dceebdd09f360a1dc194d7ee93f)
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