reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Derived Classes

include/llvm/IR/PassManagerInternal.h
  137   template <typename T> struct Checker : CheckerBase, T {};

Declarations

include/llvm/Analysis/AliasAnalysisEvaluator.h
   31 class AAResults;
include/llvm/CodeGen/MachineInstr.h
   39 class AAResults;
include/llvm/CodeGen/ScheduleDAGInstrs.h
   37   class AAResults;
include/llvm/CodeGen/SelectionDAG.h
   59 class AAResults;
include/llvm/CodeGen/SelectionDAGISel.h
   25 class AAResults;
include/llvm/CodeGen/TargetInstrInfo.h
   41 class AAResults;
include/llvm/Transforms/IPO/FunctionAttrs.h
   24 class AAResults;
lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.h
   29 class AAResults;

References

include/llvm/ADT/Optional.h
   39     T value;
   72   T &getValue() LLVM_LVALUE_FUNCTION noexcept {
   76   T const &getValue() const LLVM_LVALUE_FUNCTION noexcept {
   81   T &&getValue() && noexcept {
   87   template <class... Args> void emplace(Args &&... args) {
   89     ::new ((void *)std::addressof(value)) T(std::forward<Args>(args)...);
   89     ::new ((void *)std::addressof(value)) T(std::forward<Args>(args)...);
  216   optional_detail::OptionalStorage<T> Storage;
  219   using value_type = T;
  224   Optional(const T &y) : Storage(optional_detail::in_place_t{}, y) {}
  227   Optional(T &&y) : Storage(optional_detail::in_place_t{}, std::move(y)) {}
  230   Optional &operator=(T &&y) {
  237   template <typename... ArgTypes> void emplace(ArgTypes &&... Args) {
  238     Storage.emplace(std::forward<ArgTypes>(Args)...);
  241   static inline Optional create(const T *y) {
  245   Optional &operator=(const T &y) {
  253   const T *getPointer() const { return &Storage.getValue(); }
  254   T *getPointer() { return &Storage.getValue(); }
  255   const T &getValue() const LLVM_LVALUE_FUNCTION { return Storage.getValue(); }
  256   T &getValue() LLVM_LVALUE_FUNCTION { return Storage.getValue(); }
  260   const T *operator->() const { return getPointer(); }
  261   T *operator->() { return getPointer(); }
  262   const T &operator*() const LLVM_LVALUE_FUNCTION { return getValue(); }
  263   T &operator*() LLVM_LVALUE_FUNCTION { return getValue(); }
  266   constexpr T getValueOr(U &&value) const LLVM_LVALUE_FUNCTION {
  271   T &&getValue() && { return std::move(Storage.getValue()); }
  272   T &&operator*() && { return std::move(Storage.getValue()); }
  275   T getValueOr(U &&value) && {
include/llvm/Analysis/AliasAnalysis.h
  316   AAResults(AAResults &&Arg);
  778   AAResults &AA;
  782   BatchAAResults(AAResults &AAR) : AA(AAR), AAQI() {}
  812 using AliasAnalysis = AAResults;
  829   virtual void setAAResults(AAResults *NewAAR) = 0;
  891   explicit Model(AAResultT &Result, AAResults &AAR) : Result(Result) {
  896   void setAAResults(AAResults *NewAAR) override { Result.setAAResults(NewAAR); }
  952   AAResults *AAR = nullptr;
  959   void setAAResults(AAResults *NewAAR) { AAR = NewAAR; }
  966     AAResults *AAR;
  970     AAResultsProxy(AAResults *AAR, DerivedT &CurrentResult)
 1106   using Result = AAResults;
 1131                        AAResults &AAResults),
 1137                                       AAResults &AAResults) {
 1144                                     AAResults &AAResults) {
 1158   std::unique_ptr<AAResults> AAR;
 1165   AAResults &getAAResults() { return *AAR; }
 1166   const AAResults &getAAResults() const { return *AAR; }
 1176   using CallbackT = std::function<void(Pass &, Function &, AAResults &)>;
 1206     std::function<void(Pass &, Function &, AAResults &)> Callback);
 1215 AAResults createLegacyPMAAResults(Pass &P, Function &F, BasicAAResult &BAR);
include/llvm/Analysis/AliasAnalysisEvaluator.h
   65   void runInternal(Function &F, AAResults &AA);
include/llvm/Analysis/BasicAliasAnalysis.h
  264   Optional<AAResults> AAR;
  268   AAResults &operator()(Function &F) {
include/llvm/Analysis/LoopAnalysisManager.h
   54   AAResults &AA;
include/llvm/Analysis/MemorySSA.h
  859   MemoryUseOrDef *createNewAccess(Instruction *, AliasAnalysisType *,
include/llvm/CodeGen/DFAPacketizer.h
  147   AAResults *AA;
  161                      AAResults *AA);
include/llvm/CodeGen/MachineInstr.h
 1440   bool isSafeToMove(AAResults *AA, bool &SawStore) const;
 1452   bool mayAlias(AAResults *AA, const MachineInstr &Other, bool UseTBAA) const;
 1467   bool isDereferenceableInvariantLoad(AAResults *AA) const;
include/llvm/CodeGen/ScheduleDAGInstrs.h
  177     AAResults *AAForDep = nullptr;
  310     void buildSchedGraph(AAResults *AA,
include/llvm/CodeGen/SelectionDAG.h
  502   void Combine(CombineLevel Level, AAResults *AA,
include/llvm/CodeGen/SelectionDAGISel.h
   55   AAResults *AA;
include/llvm/CodeGen/TargetInstrInfo.h
   99                                    AAResults *AA = nullptr) const {
  115                                                  AAResults *AA) const {
  158                                                 AAResults *AA) const;
include/llvm/IR/PassManagerInternal.h
  137   template <typename T> struct Checker : CheckerBase, T {};
  147   enum { Value = sizeof(check<ResultT>(rank<2>())) == sizeof(EnabledType) };
  208   explicit AnalysisResultModel(ResultT Result) : Result(std::move(Result)) {}
  231   ResultT Result;
include/llvm/Support/type_traits.h
   91     T t;
  145       std::is_copy_constructible<detail::trivial_helper<T>>::value;
  147       !std::is_copy_constructible<T>::value;
  151       std::is_move_constructible<detail::trivial_helper<T>>::value;
  153       !std::is_move_constructible<T>::value;
  157       is_copy_assignable<detail::trivial_helper<T>>::value;
  159       !is_copy_assignable<T>::value;
  163       is_move_assignable<detail::trivial_helper<T>>::value;
  165       !is_move_assignable<T>::value;
  169       std::is_destructible<detail::trivial_helper<T>>::value;
  181   static_assert(value == std::is_trivially_copyable<T>::value,
include/llvm/Transforms/IPO/Attributor.h
  642   AAResults *getAAResultsForFunction(const Function &F) {
include/llvm/Transforms/IPO/FunctionAttrs.h
   39 MemoryAccessKind computeFunctionBodyMemoryAccess(Function &F, AAResults &AAR);
include/llvm/Transforms/Scalar/GVN.h
  198                const TargetLibraryInfo &RunTLI, AAResults &RunAA,
include/llvm/Transforms/Utils/Cloning.h
  233                             AAResults *CalleeAAR = nullptr,
  236                             AAResults *CalleeAAR = nullptr,
include/llvm/Transforms/Utils/LoopUtils.h
  289 bool canSinkOrHoistInst(Instruction &I, AAResults *AA, DominatorTree *DT,
lib/Analysis/AliasAnalysis.cpp
   63 AAResults::AAResults(AAResults &&Arg)
  787       new AAResults(getAnalysis<TargetLibraryInfoWrapperPass>().getTLI(F)));
  841 AAResults llvm::createLegacyPMAAResults(Pass &P, Function &F,
  843   AAResults AAR(P.getAnalysis<TargetLibraryInfoWrapperPass>().getTLI(F));
lib/Analysis/AliasAnalysisEvaluator.cpp
   93 void AAEvaluator::runInternal(Function &F, AAResults &AA) {
lib/Analysis/DependenceAnalysis.cpp
  126   auto &AA = FAM.getResult<AAManager>(F);
  149   auto &AA = getAnalysis<AAResultsWrapperPass>().getAAResults();
lib/Analysis/MemoryDependenceAnalysis.cpp
 1754   auto &AA = AM.getResult<AAManager>(F);
 1817   auto &AA = getAnalysis<AAResultsWrapperPass>().getAAResults();
lib/Analysis/MemorySSA.cpp
  263                          const Instruction *UseInst, AliasAnalysisType &AA) {
  317                                              AliasAnalysisType &AA) {
  374 static bool isUseTriviallyOptimizableToLiveOnEntry(AliasAnalysisType &AA,
  515   AliasAnalysisType &AA;
  925   ClobberWalker(const MemorySSA &MSSA, AliasAnalysisType &AA, DominatorTree &DT)
  928   AliasAnalysisType *getAA() { return &AA; }
  990   ClobberWalker<AliasAnalysisType> Walker;
  994   ClobberWalkerBase(MemorySSA *M, AliasAnalysisType *A, DominatorTree *D)
 1014   ClobberWalkerBase<AliasAnalysisType> *Walker;
 1017   CachingWalker(MemorySSA *M, ClobberWalkerBase<AliasAnalysisType> *W)
 1050   ClobberWalkerBase<AliasAnalysisType> *Walker;
 1053   SkipSelfWalker(MemorySSA *M, ClobberWalkerBase<AliasAnalysisType> *W)
 2271   auto &AA = AM.getResult<AAManager>(F);
 2315   auto &AA = getAnalysis<AAResultsWrapperPass>().getAAResults();
lib/CodeGen/DFAPacketizer.cpp
  153   AAResults *AA;
  159                        AAResults *AA);
  177                                            AAResults *AA)
  195                                        MachineLoopInfo &mli, AAResults *aa)
lib/CodeGen/MachineInstr.cpp
 1162 bool MachineInstr::isSafeToMove(AAResults *AA, bool &SawStore) const {
 1191 bool MachineInstr::mayAlias(AAResults *AA, const MachineInstr &Other,
 1309 bool MachineInstr::isDereferenceableInvariantLoad(AAResults *AA) const {
lib/CodeGen/ScheduleDAGInstrs.cpp
  534 static inline bool isGlobalMemoryObject(AAResults *AA, MachineInstr *MI) {
  721 void ScheduleDAGInstrs::buildSchedGraph(AAResults *AA,
lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.h
   97     void BuildSchedGraph(AAResults *AA);
lib/Target/AArch64/AArch64StackTagging.cpp
  310   AAResults *AA;
lib/Target/AMDGPU/SIInstrInfo.h
  176                                          AAResults *AA) const override;
lib/Target/Hexagon/HexagonVLIWPacketizer.cpp
  133       MachineLoopInfo &MLI, AAResults *AA,
  209   auto *AA = &getAnalysis<AAResultsWrapperPass>().getAAResults();
lib/Target/Hexagon/HexagonVLIWPacketizer.h
   72                         AAResults *AA, const MachineBranchProbabilityInfo *MBPI,
lib/Target/PowerPC/PPCInstrInfo.h
  251                                          AAResults *AA) const override;
lib/Target/WebAssembly/WebAssemblyInstrInfo.h
   46                                          AAResults *AA) const override;
lib/Target/X86/X86InstrInfo.h
  209                                          AAResults *AA) const override;
lib/Transforms/Coroutines/CoroElide.cpp
   37   void elideHeapAllocations(Function *F, Type *FrameTy, AAResults &AA);
   39   bool processCoroId(CoroIdInst *, AAResults &AA, DominatorTree &DT);
   68 static bool operandReferences(CallInst *CI, AllocaInst *Frame, AAResults &AA) {
   78 static void removeTailCallAttribute(AllocaInst *Frame, AAResults &AA) {
  108 void Lowerer::elideHeapAllocations(Function *F, Type *FrameTy, AAResults &AA) {
  190 bool Lowerer::processCoroId(CoroIdInst *CoroId, AAResults &AA,
  316     AAResults &AA = getAnalysis<AAResultsWrapperPass>().getAAResults();
lib/Transforms/IPO/ArgumentPromotion.cpp
  570 static bool isSafeToPromoteArgument(Argument *Arg, Type *ByValTy, AAResults &AAR,
  866 promoteArguments(Function *F, function_ref<AAResults &(Function &F)> AARGetter,
  928   AAResults &AAR = AARGetter(*F);
lib/Transforms/IPO/Attributor.cpp
 2007         if (AAResults *AAR = A.getInfoCache().getAAResultsForFunction(*F)) {
lib/Transforms/IPO/FunctionAttrs.cpp
  109                                                   AAResults &AAR,
  227                                                        AAResults &AAR) {
  240     AAResults &AAR = AARGetter(*F);
lib/Transforms/IPO/Inliner.cpp
  277     bool InsertLifetime, function_ref<AAResults &(Function &)> &AARGetter,
  282   AAResults &AAR = AARGetter(*Callee);
  534                 function_ref<AAResults &(Function &)> AARGetter,
lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
  201     function_ref<AAResults &(Function &)> AARGetter, Module &M) {
  448                          function_ref<AAResults &(Function &)> AARGetter,
lib/Transforms/IPO/WholeProgramDevirt.cpp
  444   function_ref<AAResults &(Function &)> AARGetter;
  471   DevirtModule(Module &M, function_ref<AAResults &(Function &)> AARGetter,
  576   runForTesting(Module &M, function_ref<AAResults &(Function &)> AARGetter,
  739     Module &M, function_ref<AAResults &(Function &)> AARGetter,
lib/Transforms/InstCombine/InstructionCombining.cpp
 3560   auto *AA = &AM.getResult<AAManager>(F);
lib/Transforms/Scalar/GVN.cpp
  619   auto &AA = AM.getResult<AAManager>(F);
 2080                   const TargetLibraryInfo &RunTLI, AAResults &RunAA,
lib/Transforms/Scalar/GVNHoist.cpp
 1154     auto &AA = getAnalysis<AAResultsWrapperPass>().getAAResults();
lib/Transforms/Scalar/JumpThreading.cpp
  331   auto &AA = AM.getResult<AAManager>(F);
lib/Transforms/Scalar/LICM.cpp
 1080 bool llvm::canSinkOrHoistInst(Instruction &I, AAResults *AA, DominatorTree *DT,
lib/Transforms/Scalar/LoopDistribute.cpp
 1053   auto &AA = AM.getResult<AAManager>(F);
lib/Transforms/Scalar/LoopLoadElimination.cpp
  696   auto &AA = AM.getResult<AAManager>(F);
lib/Transforms/Scalar/LoopPredication.cpp
  328     auto *AA = &getAnalysis<AAResultsWrapperPass>().getAAResults();
lib/Transforms/Scalar/LoopSink.cpp
  251 static bool sinkLoopInvariantInstructions(Loop &L, AAResults &AA, LoopInfo &LI,
  319   AAResults &AA = FAM.getResult<AAManager>(F);
lib/Transforms/Scalar/MergeICmps.cpp
  905     auto &AA = getAnalysis<AAResultsWrapperPass>().getAAResults();
  936   auto &AA = AM.getResult<AAManager>(F);
lib/Transforms/Scalar/MergedLoadStoreMotion.cpp
  417   auto &AA = AM.getResult<AAManager>(F);
lib/Transforms/Scalar/NewGVN.cpp
 4232   auto &AA = AM.getResult<AAManager>(F);
lib/Transforms/Scalar/Sink.cpp
  140                             DominatorTree &DT, LoopInfo &LI, AAResults &AA) {
  199                          AAResults &AA) {
  239                                         LoopInfo &LI, AAResults &AA) {
  258   auto &AA = AM.getResult<AAManager>(F);
  279       auto &AA = getAnalysis<AAResultsWrapperPass>().getAAResults();
lib/Transforms/Utils/InlineFunction.cpp
   88                                         AAResults *CalleeAAR,
  920                                   const DataLayout &DL, AAResults *CalleeAAR) {
 1538                                         AAResults *CalleeAAR,
lib/Transforms/Vectorize/LoopVectorize.cpp
 1607     auto *AA = &getAnalysis<AAResultsWrapperPass>().getAAResults();
 7875     auto &AA = AM.getResult<AAManager>(F);
lib/Transforms/Vectorize/SLPVectorizer.cpp
 5212     auto *AA = &getAnalysis<AAResultsWrapperPass>().getAAResults();
 5246   auto *AA = &AM.getResult<AAManager>(F);
tools/polly/lib/Analysis/ScopDetection.cpp
 1854   auto &AA = getAnalysis<AAResultsWrapperPass>().getAAResults();
 1901   auto &AA = FAM.getResult<AAManager>(F);
tools/polly/lib/Analysis/ScopInfo.cpp
 2673   auto &AA = getAnalysis<AAResultsWrapperPass>().getAAResults();
 2771   auto &AA = FAM.getResult<AAManager>(F);
 2809   auto &AA = getAnalysis<AAResultsWrapperPass>().getAAResults();
unittests/Analysis/AliasAnalysisTest.cpp
  149   std::unique_ptr<AAResults> AAR;
  153   AAResults &getAAResults(Function &F) {
  155     AAR.reset(new AAResults(TLI));
  191   auto &AA = getAAResults(*F);
unittests/Analysis/AliasSetTrackerTest.cpp
   62   AAResults AA(TLI);
unittests/Analysis/MemorySSATest.cpp
   43     AAResults AA;
unittests/Transforms/Vectorize/VPlanSlpTest.cpp
   27   std::unique_ptr<AAResults> AARes;
   44     AARes.reset(new AAResults(TLI));
usr/include/c++/7.4.0/bits/move.h
   46     inline _GLIBCXX_CONSTEXPR _Tp*
   47     __addressof(_Tp& __r) _GLIBCXX_NOEXCEPT
   72     constexpr _Tp&&
   73     forward(typename std::remove_reference<_Tp>::type& __t) noexcept
   83     constexpr _Tp&&
   84     forward(typename std::remove_reference<_Tp>::type&& __t) noexcept
   98     move(_Tp&& __t) noexcept
  136     inline _GLIBCXX17_CONSTEXPR _Tp*
  137     addressof(_Tp& __r) noexcept
  143     const _Tp* addressof(const _Tp&&) = delete;
  143     const _Tp* addressof(const _Tp&&) = delete;
usr/include/c++/7.4.0/bits/std_function.h
  314       _M_invoke(const _Any_data& __functor, _ArgTypes&&... __args)
  628       using _Invoker_type = _Res (*)(const _Any_data&, _ArgTypes&&...);
usr/include/c++/7.4.0/bits/unique_ptr.h
   68         default_delete(const default_delete<_Up>&) noexcept { }
   72       operator()(_Tp* __ptr) const
   74 	static_assert(!is_void<_Tp>::value,
   76 	static_assert(sizeof(_Tp)>0,
  122 	  using type = _Up*;
  137       using pointer = typename _Ptr<_Tp, _Dp>::type;
  161 	typename __uniq_ptr_impl<_Tp, _Up>::_DeleterConstraint::type;
  163       __uniq_ptr_impl<_Tp, _Dp> _M_t;
  166       using pointer	  = typename __uniq_ptr_impl<_Tp, _Dp>::pointer;
  167       using element_type  = _Tp;
  824     make_unique(_Args&&... __args)
  825     { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
usr/include/c++/7.4.0/type_traits
  215     : public __is_void_helper<typename remove_cv<_Tp>::type>::type
  326     : public __is_integral_helper<typename remove_cv<_Tp>::type>::type
  354     : public __is_floating_point_helper<typename remove_cv<_Tp>::type>::type
  381     : public __is_pointer_helper<typename remove_cv<_Tp>::type>::type
  567     : public __is_null_pointer_helper<typename remove_cv<_Tp>::type>::type
  581     : public __or_<is_lvalue_reference<_Tp>,
  582                    is_rvalue_reference<_Tp>>::type
  588     : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
  588     : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  602                           is_void<_Tp>>>::type
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  612                    is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
  612                    is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
  631     : public __is_member_pointer_helper<typename remove_cv<_Tp>::type>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  798       typedef decltype(__test<_Tp>(0)) type;
  811                remove_all_extents<_Tp>::type>::type
  825     : public __is_destructible_safe<_Tp>::type
  984       typedef decltype(__test<_Tp, _Arg>(0)) type;
  989     : public __and_<is_destructible<_Tp>,
  990                     __is_direct_constructible_impl<_Tp, _Arg>>
 1072 			 __is_direct_constructible_ref_cast<_Tp, _Arg>,
 1073 			 __is_direct_constructible_new_safe<_Tp, _Arg>
 1079     : public __is_direct_constructible_new<_Tp, _Arg>::type
 1119     : public __is_direct_constructible<_Tp, _Arg>
 1130     : public __is_constructible_impl<_Tp, _Args...>::type
 1142     : public is_constructible<_Tp, const _Tp&>
 1142     : public is_constructible<_Tp, const _Tp&>
 1148     : public __is_copy_constructible_impl<_Tp>
 1160     : public is_constructible<_Tp, _Tp&&>
 1160     : public is_constructible<_Tp, _Tp&&>
 1166     : public __is_move_constructible_impl<_Tp>
 1554     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1629     { typedef _Tp   type; };
 1633     { typedef _Tp   type; };
 1645     { typedef _Tp&   type; };
 1650     : public __add_lvalue_reference_helper<_Tp>
 1659     { typedef _Tp&&   type; };
 1664     : public __add_rvalue_reference_helper<_Tp>
 1955     { typedef _Tp     type; };
 2253     inline typename add_rvalue_reference<_Tp>::type