[all-commits] [llvm/llvm-project] b274b2: [ValueTracking] Treat phi as underlying obj when n...
Florian Hahn via All-commits
all-commits at lists.llvm.org
Tue Mar 12 01:55:25 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: b274b23665dec30f3ae4fb83ccca8b77e6d3ada3
https://github.com/llvm/llvm-project/commit/b274b23665dec30f3ae4fb83ccca8b77e6d3ada3
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-03-12 (Tue, 12 Mar 2024)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Analysis/LoopAccessAnalysis/underlying-object-loop-varying-phi.ll
Log Message:
-----------
[ValueTracking] Treat phi as underlying obj when not decomposing further (#84339)
At the moment, getUnderlyingObjects simply continues for phis that do
not refer to the same underlying object in loops, without adding them to
the list of underlying objects, effectively ignoring those phis.
Instead of ignoring those phis, add them to the list of underlying
objects. This fixes a miscompile where LoopAccessAnalysis fails to
identify a memory dependence, because no underlying objects can be found
for a set of memory accesses.
Fixes https://github.com/llvm/llvm-project/issues/82665.
PR: https://github.com/llvm/llvm-project/pull/84339
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