[BasicAA] Make BasicAA a cfg pass.
authorAlina Sbirlea <asbirlea@google.com>
Fri, 7 Feb 2020 18:15:59 +0000 (10:15 -0800)
committerAlina Sbirlea <asbirlea@google.com>
Tue, 11 Feb 2020 19:30:08 +0000 (11:30 -0800)
commit0cecafd647ccd9d0acc5968d4d6e80c1cbdee275
treec5a4bc786a970057082afc5deb4d90fe210836e6
parentd7de7ac370181ec0acb42fa2e4085c870868c4e0
[BasicAA] Make BasicAA a cfg pass.

Summary:
Part of the changes in D44564 made BasicAA not CFG only due to it using
PhiAnalysisValues which may have values invalidated.
Subsequent patches (rL340613) appear to have addressed this limitation.

BasicAA should not be invalidated by non-CFG-altering passes.
A concrete example is MemCpyOpt which preserves CFG, but we are testing
it invalidates BasicAA.

llvm-dev RFC: https://groups.google.com/forum/#!topic/llvm-dev/eSPXuWnNfzM

Reviewers: john.brawn, sebpop, hfinkel, brzycki

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D74353
llvm/lib/Analysis/BasicAliasAnalysis.cpp
llvm/test/Analysis/BasicAA/phi-values-usage.ll
llvm/test/Other/opt-O2-pipeline.ll
llvm/test/Other/opt-O3-pipeline.ll
llvm/test/Other/opt-Os-pipeline.ll