diff options
Diffstat (limited to 'include/llvm/Analysis/CFLAndersAliasAnalysis.h')
| -rw-r--r-- | include/llvm/Analysis/CFLAndersAliasAnalysis.h | 28 | 
1 files changed, 17 insertions, 11 deletions
| diff --git a/include/llvm/Analysis/CFLAndersAliasAnalysis.h b/include/llvm/Analysis/CFLAndersAliasAnalysis.h index 4146ad4d18ac..6239d5309581 100644 --- a/include/llvm/Analysis/CFLAndersAliasAnalysis.h +++ b/include/llvm/Analysis/CFLAndersAliasAnalysis.h @@ -1,4 +1,4 @@ -//=- CFLAndersAliasAnalysis.h - Unification-based Alias Analysis ---*- C++-*-=// +//==- CFLAndersAliasAnalysis.h - Unification-based Alias Analysis -*- C++-*-==//  //  //                     The LLVM Compiler Infrastructure  // @@ -19,25 +19,31 @@  #include "llvm/ADT/Optional.h"  #include "llvm/Analysis/AliasAnalysis.h"  #include "llvm/Analysis/CFLAliasAnalysisUtils.h" -#include "llvm/IR/Function.h" +#include "llvm/IR/PassManager.h"  #include "llvm/Pass.h"  #include <forward_list> +#include <memory>  namespace llvm { +class Function; +class MemoryLocation;  class TargetLibraryInfo;  namespace cflaa { +  struct AliasSummary; -} + +} // end namespace cflaa  class CFLAndersAAResult : public AAResultBase<CFLAndersAAResult> {    friend AAResultBase<CFLAndersAAResult>; +    class FunctionInfo;  public: -  explicit CFLAndersAAResult(const TargetLibraryInfo &); -  CFLAndersAAResult(CFLAndersAAResult &&); +  explicit CFLAndersAAResult(const TargetLibraryInfo &TLI); +  CFLAndersAAResult(CFLAndersAAResult &&RHS);    ~CFLAndersAAResult();    /// Handle invalidation events from the new pass manager. @@ -46,6 +52,7 @@ public:                    FunctionAnalysisManager::Invalidator &) {      return false;    } +    /// Evict the given function from cache    void evict(const Function *Fn); @@ -85,10 +92,11 @@ private:  /// in particular to leverage invalidation to trigger re-computation.  class CFLAndersAA : public AnalysisInfoMixin<CFLAndersAA> {    friend AnalysisInfoMixin<CFLAndersAA>; +    static AnalysisKey Key;  public: -  typedef CFLAndersAAResult Result; +  using Result = CFLAndersAAResult;    CFLAndersAAResult run(Function &F, FunctionAnalysisManager &AM);  }; @@ -109,12 +117,10 @@ public:    void getAnalysisUsage(AnalysisUsage &AU) const override;  }; -//===--------------------------------------------------------------------===// -//  // createCFLAndersAAWrapperPass - This pass implements a set-based approach to  // alias analysis. -//  ImmutablePass *createCFLAndersAAWrapperPass(); -} -#endif +} // end namespace llvm + +#endif // LLVM_ANALYSIS_CFLANDERSALIASANALYSIS_H | 
