[PATCH] D58560: [AST] Set 'MayAlias' instead of 'MustAlias' in AliasSets for PHI nodes (bugzilla bug#36801)

Alina Sbirlea via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Apr 2 14:15:26 PDT 2019


asbirlea added a comment.

Following the introduction of BatchAA (https://reviews.llvm.org/D59315), this patch is certainly *not* an option, because it would block using BatchAA in the AliasSetTracker (https://reviews.llvm.org/D59438). Using BatchAA is not correct if there are subsequent `alias` calls after doing CFG changes. And calling `addPointer` with anything but `true` as the next to last argument may make an `alias` call.

My priority now is to enable MemorySSA, so that we don't need to do anything for the AliasSetTracker.

If we do a temporary fix until then, I entirely agree it needs to documented well what it's doing and why.
The options I see right now: (1) D58746 <https://reviews.llvm.org/D58746>, will *lots* of details about why we're doing the replacements that way. This may have problems I overlooked. (2) Discard all AST caching (remove ~LICM:447). This will lead to an increase in compile time for all code using the old pass manager (3) Discard AST on phi replacements. This involves sending a reference of `DeleteAST` into the `promote` step, and have it updated in the `copyValue()` callback.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D58560/new/

https://reviews.llvm.org/D58560





More information about the llvm-commits mailing list