[PATCH] D23256: Teach the analysis manager about dependencies.
Sean Silva via llvm-commits
llvm-commits at lists.llvm.org
Sun Aug 7 23:31:18 PDT 2016
silvas updated this revision to Diff 67126.
silvas added a comment.
Add a test case of globals-aa invalidating AAManager to test/Other/analysis-manager/transitive-invalidation.ll.
https://reviews.llvm.org/D23256
Files:
include/llvm/Analysis/AliasAnalysis.h
include/llvm/Analysis/AliasAnalysisEvaluator.h
include/llvm/Analysis/AssumptionCache.h
include/llvm/Analysis/BasicAliasAnalysis.h
include/llvm/Analysis/BlockFrequencyInfo.h
include/llvm/Analysis/BranchProbabilityInfo.h
include/llvm/Analysis/CFLAndersAliasAnalysis.h
include/llvm/Analysis/CFLSteensAliasAnalysis.h
include/llvm/Analysis/CGSCCPassManager.h
include/llvm/Analysis/CallGraph.h
include/llvm/Analysis/DemandedBits.h
include/llvm/Analysis/DependenceAnalysis.h
include/llvm/Analysis/DominanceFrontier.h
include/llvm/Analysis/GlobalsModRef.h
include/llvm/Analysis/IVUsers.h
include/llvm/Analysis/LazyCallGraph.h
include/llvm/Analysis/LazyValueInfo.h
include/llvm/Analysis/LoopAccessAnalysis.h
include/llvm/Analysis/LoopInfo.h
include/llvm/Analysis/LoopPassManager.h
include/llvm/Analysis/MemoryDependenceAnalysis.h
include/llvm/Analysis/ObjCARCAliasAnalysis.h
include/llvm/Analysis/OptimizationDiagnosticInfo.h
include/llvm/Analysis/PostDominators.h
include/llvm/Analysis/ProfileSummaryInfo.h
include/llvm/Analysis/RegionInfo.h
include/llvm/Analysis/ScalarEvolution.h
include/llvm/Analysis/ScalarEvolutionAliasAnalysis.h
include/llvm/Analysis/ScopedNoAliasAA.h
include/llvm/Analysis/TargetLibraryInfo.h
include/llvm/Analysis/TargetTransformInfo.h
include/llvm/Analysis/TypeBasedAliasAnalysis.h
include/llvm/Bitcode/BitcodeWriterPass.h
include/llvm/CodeGen/PreISelIntrinsicLowering.h
include/llvm/CodeGen/UnreachableBlockElim.h
include/llvm/IR/Dominators.h
include/llvm/IR/IRPrintingPasses.h
include/llvm/IR/PassManager.h
include/llvm/IR/PassManagerInternal.h
include/llvm/IR/Verifier.h
include/llvm/Passes/PassBuilder.h
include/llvm/Transforms/GCOVProfiler.h
include/llvm/Transforms/IPO/ConstantMerge.h
include/llvm/Transforms/IPO/CrossDSOCFI.h
include/llvm/Transforms/IPO/DeadArgumentElimination.h
include/llvm/Transforms/IPO/ElimAvailExtern.h
include/llvm/Transforms/IPO/ForceFunctionAttrs.h
include/llvm/Transforms/IPO/FunctionAttrs.h
include/llvm/Transforms/IPO/FunctionImport.h
include/llvm/Transforms/IPO/GlobalDCE.h
include/llvm/Transforms/IPO/GlobalOpt.h
include/llvm/Transforms/IPO/InferFunctionAttrs.h
include/llvm/Transforms/IPO/Internalize.h
include/llvm/Transforms/IPO/LowerTypeTests.h
include/llvm/Transforms/IPO/PartialInlining.h
include/llvm/Transforms/IPO/SCCP.h
include/llvm/Transforms/IPO/StripDeadPrototypes.h
include/llvm/Transforms/IPO/WholeProgramDevirt.h
include/llvm/Transforms/InstCombine/InstCombine.h
include/llvm/Transforms/InstrProfiling.h
include/llvm/Transforms/PGOInstrumentation.h
include/llvm/Transforms/SampleProfile.h
include/llvm/Transforms/Scalar/ADCE.h
include/llvm/Transforms/Scalar/AlignmentFromAssumptions.h
include/llvm/Transforms/Scalar/BDCE.h
include/llvm/Transforms/Scalar/ConstantHoisting.h
include/llvm/Transforms/Scalar/CorrelatedValuePropagation.h
include/llvm/Transforms/Scalar/DCE.h
include/llvm/Transforms/Scalar/DeadStoreElimination.h
include/llvm/Transforms/Scalar/EarlyCSE.h
include/llvm/Transforms/Scalar/Float2Int.h
include/llvm/Transforms/Scalar/GVN.h
include/llvm/Transforms/Scalar/GuardWidening.h
include/llvm/Transforms/Scalar/IndVarSimplify.h
include/llvm/Transforms/Scalar/JumpThreading.h
include/llvm/Transforms/Scalar/LICM.h
include/llvm/Transforms/Scalar/LoopDeletion.h
include/llvm/Transforms/Scalar/LoopDistribute.h
include/llvm/Transforms/Scalar/LoopIdiomRecognize.h
include/llvm/Transforms/Scalar/LoopInstSimplify.h
include/llvm/Transforms/Scalar/LoopRotation.h
include/llvm/Transforms/Scalar/LoopSimplifyCFG.h
include/llvm/Transforms/Scalar/LoopStrengthReduce.h
include/llvm/Transforms/Scalar/LoopUnrollPass.h
include/llvm/Transforms/Scalar/LowerAtomic.h
include/llvm/Transforms/Scalar/LowerExpectIntrinsic.h
include/llvm/Transforms/Scalar/LowerGuardIntrinsic.h
include/llvm/Transforms/Scalar/MemCpyOptimizer.h
include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h
include/llvm/Transforms/Scalar/NaryReassociate.h
include/llvm/Transforms/Scalar/PartiallyInlineLibCalls.h
include/llvm/Transforms/Scalar/Reassociate.h
include/llvm/Transforms/Scalar/SCCP.h
include/llvm/Transforms/Scalar/SROA.h
include/llvm/Transforms/Scalar/SimplifyCFG.h
include/llvm/Transforms/Scalar/Sink.h
include/llvm/Transforms/Scalar/SpeculativeExecution.h
include/llvm/Transforms/Scalar/TailRecursionElimination.h
include/llvm/Transforms/Utils/AddDiscriminators.h
include/llvm/Transforms/Utils/BreakCriticalEdges.h
include/llvm/Transforms/Utils/LCSSA.h
include/llvm/Transforms/Utils/LoopSimplify.h
include/llvm/Transforms/Utils/Mem2Reg.h
include/llvm/Transforms/Utils/MemorySSA.h
include/llvm/Transforms/Utils/SimplifyInstructions.h
include/llvm/Transforms/Utils/SymbolRewriter.h
include/llvm/Transforms/Vectorize/LoopVectorize.h
include/llvm/Transforms/Vectorize/SLPVectorizer.h
lib/Analysis/AliasAnalysisEvaluator.cpp
lib/Analysis/AssumptionCache.cpp
lib/Analysis/BasicAliasAnalysis.cpp
lib/Analysis/BlockFrequencyInfo.cpp
lib/Analysis/BranchProbabilityInfo.cpp
lib/Analysis/CFLAndersAliasAnalysis.cpp
lib/Analysis/CFLSteensAliasAnalysis.cpp
lib/Analysis/CGSCCPassManager.cpp
lib/Analysis/CallGraph.cpp
lib/Analysis/DemandedBits.cpp
lib/Analysis/DependenceAnalysis.cpp
lib/Analysis/DominanceFrontier.cpp
lib/Analysis/GlobalsModRef.cpp
lib/Analysis/IVUsers.cpp
lib/Analysis/LazyCallGraph.cpp
lib/Analysis/LazyValueInfo.cpp
lib/Analysis/LoopAccessAnalysis.cpp
lib/Analysis/LoopInfo.cpp
lib/Analysis/LoopPass.cpp
lib/Analysis/LoopPassManager.cpp
lib/Analysis/MemoryDependenceAnalysis.cpp
lib/Analysis/ObjCARCAliasAnalysis.cpp
lib/Analysis/OptimizationDiagnosticInfo.cpp
lib/Analysis/PostDominators.cpp
lib/Analysis/ProfileSummaryInfo.cpp
lib/Analysis/RegionInfo.cpp
lib/Analysis/ScalarEvolution.cpp
lib/Analysis/ScalarEvolutionAliasAnalysis.cpp
lib/Analysis/ScopedNoAliasAA.cpp
lib/Analysis/TargetLibraryInfo.cpp
lib/Analysis/TargetTransformInfo.cpp
lib/Analysis/TypeBasedAliasAnalysis.cpp
lib/Bitcode/Writer/BitcodeWriterPass.cpp
lib/CodeGen/PreISelIntrinsicLowering.cpp
lib/CodeGen/UnreachableBlockElim.cpp
lib/IR/Dominators.cpp
lib/IR/IRPrintingPasses.cpp
lib/IR/PassManager.cpp
lib/IR/Verifier.cpp
lib/Passes/PassBuilder.cpp
lib/Passes/PassRegistry.def
lib/Transforms/IPO/ConstantMerge.cpp
lib/Transforms/IPO/CrossDSOCFI.cpp
lib/Transforms/IPO/DeadArgumentElimination.cpp
lib/Transforms/IPO/ElimAvailExtern.cpp
lib/Transforms/IPO/ForceFunctionAttrs.cpp
lib/Transforms/IPO/FunctionAttrs.cpp
lib/Transforms/IPO/FunctionImport.cpp
lib/Transforms/IPO/GlobalDCE.cpp
lib/Transforms/IPO/GlobalOpt.cpp
lib/Transforms/IPO/InferFunctionAttrs.cpp
lib/Transforms/IPO/Internalize.cpp
lib/Transforms/IPO/LowerTypeTests.cpp
lib/Transforms/IPO/PartialInlining.cpp
lib/Transforms/IPO/SampleProfile.cpp
lib/Transforms/IPO/StripDeadPrototypes.cpp
lib/Transforms/IPO/WholeProgramDevirt.cpp
lib/Transforms/InstCombine/InstructionCombining.cpp
lib/Transforms/Instrumentation/GCOVProfiling.cpp
lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
lib/Transforms/Instrumentation/InstrProfiling.cpp
lib/Transforms/Instrumentation/PGOInstrumentation.cpp
lib/Transforms/Scalar/ADCE.cpp
lib/Transforms/Scalar/AlignmentFromAssumptions.cpp
lib/Transforms/Scalar/BDCE.cpp
lib/Transforms/Scalar/ConstantHoisting.cpp
lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
lib/Transforms/Scalar/DCE.cpp
lib/Transforms/Scalar/DeadStoreElimination.cpp
lib/Transforms/Scalar/EarlyCSE.cpp
lib/Transforms/Scalar/Float2Int.cpp
lib/Transforms/Scalar/GVN.cpp
lib/Transforms/Scalar/GVNHoist.cpp
lib/Transforms/Scalar/GuardWidening.cpp
lib/Transforms/Scalar/IndVarSimplify.cpp
lib/Transforms/Scalar/JumpThreading.cpp
lib/Transforms/Scalar/LICM.cpp
lib/Transforms/Scalar/LoopDeletion.cpp
lib/Transforms/Scalar/LoopDistribute.cpp
lib/Transforms/Scalar/LoopIdiomRecognize.cpp
lib/Transforms/Scalar/LoopInstSimplify.cpp
lib/Transforms/Scalar/LoopRotation.cpp
lib/Transforms/Scalar/LoopSimplifyCFG.cpp
lib/Transforms/Scalar/LoopStrengthReduce.cpp
lib/Transforms/Scalar/LoopUnrollPass.cpp
lib/Transforms/Scalar/LowerAtomic.cpp
lib/Transforms/Scalar/LowerExpectIntrinsic.cpp
lib/Transforms/Scalar/LowerGuardIntrinsic.cpp
lib/Transforms/Scalar/MemCpyOptimizer.cpp
lib/Transforms/Scalar/MergedLoadStoreMotion.cpp
lib/Transforms/Scalar/NaryReassociate.cpp
lib/Transforms/Scalar/PartiallyInlineLibCalls.cpp
lib/Transforms/Scalar/Reassociate.cpp
lib/Transforms/Scalar/SCCP.cpp
lib/Transforms/Scalar/SROA.cpp
lib/Transforms/Scalar/SimplifyCFGPass.cpp
lib/Transforms/Scalar/Sink.cpp
lib/Transforms/Scalar/SpeculativeExecution.cpp
lib/Transforms/Scalar/TailRecursionElimination.cpp
lib/Transforms/Utils/AddDiscriminators.cpp
lib/Transforms/Utils/BreakCriticalEdges.cpp
lib/Transforms/Utils/LCSSA.cpp
lib/Transforms/Utils/LoopSimplify.cpp
lib/Transforms/Utils/Mem2Reg.cpp
lib/Transforms/Utils/MemorySSA.cpp
lib/Transforms/Utils/SimplifyInstructions.cpp
lib/Transforms/Utils/SymbolRewriter.cpp
lib/Transforms/Vectorize/LoopVectorize.cpp
lib/Transforms/Vectorize/SLPVectorizer.cpp
test/Other/analysis-manager/transitive-invalidation.ll
test/Other/new-pass-manager.ll
tools/opt/NewPMDriver.cpp
unittests/Analysis/CGSCCPassManagerTest.cpp
unittests/Analysis/LoopPassManagerTest.cpp
unittests/IR/PassManagerTest.cpp
unittests/IR/VerifierTest.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D23256.67126.patch
Type: text/x-patch
Size: 241595 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160808/f91964d6/attachment-0001.bin>
More information about the llvm-commits
mailing list