[PATCH] D67612: [UnrolledInstAnalyzer] Use MSSA to find stored values outside of loop.
Alina Sbirlea via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Dec 12 14:20:14 PST 2019
asbirlea added a comment.
Sorry, I forgot about this one, thank you for the reminder!
Yes, the explanation makes sense to me.
I would go with adding the logic for how to walk the defs into a Walker.
There are quite a few things that need to be changed in the above code using the def_chain.
e.g.:
There are no MemoryUses, so that check is not needed.
The chain stops at a MemoryPhi, where you currently break (give up). The way this is written right now, this will always break, and it can be improved with walking the backedge (walkers do this).
The def_chain starts off by getting the defining access for the given Load (Use), which may skip Stores (Defs) it does not alias in the same iteration. But that load may alias the stores in another iteration, so walking *all* defs above current use seems appropriate.
I don't know how nested loops are handled here.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D67612/new/
https://reviews.llvm.org/D67612
More information about the llvm-commits
mailing list