1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 02:52:53 +02:00

MergedLoadStoreMotion preserves MemoryDependenceAnalysis, it does not require it.

(It already was coded assuming it can sometimes be null, so no other changes are necessary)

llvm-svn: 237978
This commit is contained in:
Daniel Berlin 2015-05-22 00:13:05 +00:00
parent 277683fc23
commit 6f197f22b7

View File

@ -117,8 +117,8 @@ private:
// This transformation requires dominator postdominator info
void getAnalysisUsage(AnalysisUsage &AU) const override {
AU.addRequired<TargetLibraryInfoWrapperPass>();
AU.addRequired<MemoryDependenceAnalysis>();
AU.addRequired<AliasAnalysis>();
AU.addPreserved<MemoryDependenceAnalysis>();
AU.addPreserved<AliasAnalysis>();
}
@ -580,7 +580,7 @@ bool MergedLoadStoreMotion::mergeStores(BasicBlock *T) {
/// \brief Run the transformation for each function
///
bool MergedLoadStoreMotion::runOnFunction(Function &F) {
MD = &getAnalysis<MemoryDependenceAnalysis>();
MD = getAnalysisIfAvailable<MemoryDependenceAnalysis>();
AA = &getAnalysis<AliasAnalysis>();
bool Changed = false;