[PATCH] D38569: Expose must/may alias info in MemorySSA.

Nuno Lopes via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 23 05:21:48 PST 2017


nlopes added a comment.

In https://reviews.llvm.org/D38569#933068, @asbirlea wrote:

> An immediate usecase I have in LICM, is in very large testcases where I want to rely on MemorySSA's threshhold for optimizing MemUses.
>  I need to use getDefiningAccess() on a Use and query if the result given is May_Alias or Must_Alias. If the Use is not optimized, the result will always be MayAlias. If optimized, it may be May or Must.
>  Alias info is needed to avoid an additional AA.alias call when creating mssa alias sets for promotion.
>
> It can certainly be used for more complex optimizations, aliasing between MemDefs is the most interesting to me. Since in MemorySSA all stores clobber all stores (until optimized), must alias info could be used to shortcut def alias chains. AFAIK this is done for MemUses, I don't think it's done for MemDefs.


Cool, makes sense. Thank you!
Nuno


https://reviews.llvm.org/D38569





More information about the llvm-commits mailing list