From 07c58d00625200741cefe6dad8505f6138cf34a9 Mon Sep 17 00:00:00 2001 From: Simon Pilgrim Date: Tue, 30 Apr 2019 12:34:21 +0000 Subject: [PATCH] Revert rL359519 : [MemorySSA] Invalidate MemorySSA if AA or DT are invalidated. Summary: MemorySSA keeps internal pointers of AA and DT. If these get invalidated, so should MemorySSA. Reviewers: george.burgess.iv, chandlerc Subscribers: jlebar, Prazek, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D61043 ........ This was causing windows build bot failures llvm-svn: 359555 --- include/llvm/Analysis/MemorySSA.h | 3 -- lib/Analysis/MemorySSA.cpp | 9 ----- test/Analysis/MemorySSA/invalidate.ll | 53 --------------------------- 3 files changed, 65 deletions(-) delete mode 100644 test/Analysis/MemorySSA/invalidate.ll diff --git a/include/llvm/Analysis/MemorySSA.h b/include/llvm/Analysis/MemorySSA.h index a0a1030c5df..8812da6016a 100644 --- a/include/llvm/Analysis/MemorySSA.h +++ b/include/llvm/Analysis/MemorySSA.h @@ -936,9 +936,6 @@ public: MemorySSA &getMSSA() { return *MSSA.get(); } std::unique_ptr MSSA; - - bool invalidate(Function &F, const PreservedAnalyses &PA, - FunctionAnalysisManager::Invalidator &Inv); }; Result run(Function &F, FunctionAnalysisManager &AM); diff --git a/lib/Analysis/MemorySSA.cpp b/lib/Analysis/MemorySSA.cpp index bdaa26409dd..271d56d3ecd 100644 --- a/lib/Analysis/MemorySSA.cpp +++ b/lib/Analysis/MemorySSA.cpp @@ -2213,15 +2213,6 @@ MemorySSAAnalysis::Result MemorySSAAnalysis::run(Function &F, return MemorySSAAnalysis::Result(llvm::make_unique(F, &AA, &DT)); } -bool MemorySSAAnalysis::Result::invalidate( - Function &F, const PreservedAnalyses &PA, - FunctionAnalysisManager::Invalidator &Inv) { - auto PAC = PA.getChecker(); - return !(PAC.preserved() || PAC.preservedSet>()) || - Inv.invalidate(F, PA) || - Inv.invalidate(F, PA); -} - PreservedAnalyses MemorySSAPrinterPass::run(Function &F, FunctionAnalysisManager &AM) { OS << "MemorySSA for function: " << F.getName() << "\n"; diff --git a/test/Analysis/MemorySSA/invalidate.ll b/test/Analysis/MemorySSA/invalidate.ll deleted file mode 100644 index 42359e1c320..00000000000 --- a/test/Analysis/MemorySSA/invalidate.ll +++ /dev/null @@ -1,53 +0,0 @@ -; RUN: opt -aa-pipeline=basic-aa -passes='require,invalidate,early-cse-memssa' \ -; RUN: -debug-pass-manager -disable-output %s 2>&1 \ -; RUN: | FileCheck %s --check-prefix=CHECK-AA-INVALIDATE -; RUN: opt -aa-pipeline=basic-aa -passes='require,invalidate,early-cse-memssa' \ -; RUN: -debug-pass-manager -disable-output %s 2>&1 \ -; RUN: | FileCheck %s --check-prefix=CHECK-DT-INVALIDATE - -; CHECK-AA-INVALIDATE: Running analysis: MemorySSAAnalysis -; CHECK-AA-INVALIDATE: Running analysis: DominatorTreeAnalysis -; CHECK-AA-INVALIDATE: Running analysis: AAManager -; CHECK-AA-INVALIDATE: Running analysis: BasicAA -; CHECK-AA-INVALIDATE: Running pass: InvalidateAnalysisPass -; CHECK-AA-INVALIDATE: Invalidating analysis: AAManager -; CHECK-AA-INVALIDATE: Invalidating analysis: MemorySSAAnalysis -; CHECK-AA-INVALIDATE: Running pass: EarlyCSEPass -; CHECK-AA-INVALIDATE: Running analysis: MemorySSAAnalysis -; CHECK-AA-INVALIDATE: Running analysis: AAManager - -; CHECK-DT-INVALIDATE: Running analysis: MemorySSAAnalysis -; CHECK-DT-INVALIDATE: Running analysis: DominatorTreeAnalysis -; CHECK-DT-INVALIDATE: Running analysis: AAManager -; CHECK-DT-INVALIDATE: Running analysis: BasicAA -; CHECK-DT-INVALIDATE: InvalidateAnalysisPass -; CHECK-DT-INVALIDATE: Invalidating analysis: DominatorTreeAnalysis -; CHECK-DT-INVALIDATE: Invalidating analysis: BasicAA -; CHECK-DT-INVALIDATE: Invalidating analysis: AAManager -; CHECK-DT-INVALIDATE: Invalidating analysis: MemorySSAAnalysis -; CHECK-DT-INVALIDATE: Running pass: EarlyCSEPass -; CHECK-DT-INVALIDATE: Running analysis: DominatorTreeAnalysis -; CHECK-DT-INVALIDATE: Running analysis: MemorySSAAnalysis -; CHECK-DT-INVALIDATE: Running analysis: AAManager -; CHECK-DT-INVALIDATE: Running analysis: BasicAA - - -; Function Attrs: ssp uwtable -define i32 @main() { -entry: - %call = call noalias i8* @_Znwm(i64 4) - %0 = bitcast i8* %call to i32* - %call1 = call noalias i8* @_Znwm(i64 4) - %1 = bitcast i8* %call1 to i32* - store i32 5, i32* %0, align 4 - store i32 7, i32* %1, align 4 - %2 = load i32, i32* %0, align 4 - %3 = load i32, i32* %1, align 4 - %4 = load i32, i32* %0, align 4 - %5 = load i32, i32* %1, align 4 - %add = add nsw i32 %3, %5 - ret i32 %add -} - -declare noalias i8* @_Znwm(i64) -