diff options
Diffstat (limited to 'include/llvm/Analysis/ObjCARCAliasAnalysis.h')
-rw-r--r-- | include/llvm/Analysis/ObjCARCAliasAnalysis.h | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/include/llvm/Analysis/ObjCARCAliasAnalysis.h b/include/llvm/Analysis/ObjCARCAliasAnalysis.h index ac01154bac6c2..067a964bcce10 100644 --- a/include/llvm/Analysis/ObjCARCAliasAnalysis.h +++ b/include/llvm/Analysis/ObjCARCAliasAnalysis.h @@ -24,7 +24,6 @@ #define LLVM_ANALYSIS_OBJCARCALIASANALYSIS_H #include "llvm/Analysis/AliasAnalysis.h" -#include "llvm/Analysis/TargetLibraryInfo.h" #include "llvm/Pass.h" namespace llvm { @@ -42,8 +41,7 @@ class ObjCARCAAResult : public AAResultBase<ObjCARCAAResult> { const DataLayout &DL; public: - explicit ObjCARCAAResult(const DataLayout &DL, const TargetLibraryInfo &TLI) - : AAResultBase(TLI), DL(DL) {} + explicit ObjCARCAAResult(const DataLayout &DL) : AAResultBase(), DL(DL) {} ObjCARCAAResult(ObjCARCAAResult &&Arg) : AAResultBase(std::move(Arg)), DL(Arg.DL) {} @@ -63,20 +61,14 @@ public: }; /// Analysis pass providing a never-invalidated alias analysis result. -class ObjCARCAA { +class ObjCARCAA : public AnalysisInfoMixin<ObjCARCAA> { + friend AnalysisInfoMixin<ObjCARCAA>; + static char PassID; + public: typedef ObjCARCAAResult Result; - /// \brief Opaque, unique identifier for this analysis pass. - static void *ID() { return (void *)&PassID; } - - ObjCARCAAResult run(Function &F, AnalysisManager<Function> *AM); - - /// \brief Provide access to a name for this pass for debugging purposes. - static StringRef name() { return "ObjCARCAA"; } - -private: - static char PassID; + ObjCARCAAResult run(Function &F, AnalysisManager<Function> &AM); }; /// Legacy wrapper pass to provide the ObjCARCAAResult object. |