Commit b274b23
authored
[ValueTracking] Treat phi as underlying obj when not decomposing further (llvm#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 llvm#82665.
PR: llvm#843391 parent aefad27 commit b274b23
File tree
2 files changed
+8
-1
lines changed- llvm
- lib/Analysis
- test/Analysis/LoopAccessAnalysis
2 files changed
+8
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6131 | 6131 | | |
6132 | 6132 | | |
6133 | 6133 | | |
| 6134 | + | |
| 6135 | + | |
6134 | 6136 | | |
6135 | 6137 | | |
6136 | 6138 | | |
| |||
Lines changed: 6 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
| 11 | + | |
11 | 12 | | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
12 | 17 | | |
13 | 18 | | |
14 | 19 | | |
| |||
0 commit comments