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

Derived Classes

lib/Transforms/IPO/Attributor.cpp
 2460 struct AADereferenceableImpl : AADereferenceable {

References

include/llvm/Transforms/IPO/Attributor.h
  758   const AAType &getAAFor(const AbstractAttribute &QueryingAA,
  760     return getOrCreateAAFor<AAType>(IRP, &QueryingAA, TrackDependence);
  782   template <typename AAType> AAType &registerAA(AAType &AA) {
  782   template <typename AAType> AAType &registerAA(AAType &AA) {
  783     static_assert(std::is_base_of<AbstractAttribute, AAType>::value,
  792     KindToAbstractAttributeMap[&AAType::ID] = &AA;
  915   const AAType &getOrCreateAAFor(const IRPosition &IRP,
  918     if (const AAType *AAPtr =
  919             lookupAAFor<AAType>(IRP, QueryingAA, TrackDependence))
  924     auto &AA = AAType::createForPosition(IRP, *this);
  924     auto &AA = AAType::createForPosition(IRP, *this);
  928     bool Invalidate = Whitelist && !Whitelist->count(&AAType::ID);
  951   const AAType *lookupAAFor(const IRPosition &IRP,
  954     static_assert(std::is_base_of<AbstractAttribute, AAType>::value,
  963     if (AAType *AA = static_cast<AAType *>(
  964             KindToAbstractAttributeMap.lookup(&AAType::ID))) {
 1876   static AADereferenceable &createForPosition(const IRPosition &IRP,
lib/Transforms/IPO/Attributor.cpp
  159     Attributor &A, IRPosition IRP, const AAType &QueryingAA, StateTy &State,
  534 static void clampReturnedValueStates(Attributor &A, const AAType &QueryingAA,
  554     const AAType &AA = A.getAAFor<AAType>(QueryingAA, RVPos);
  554     const AAType &AA = A.getAAFor<AAType>(QueryingAA, RVPos);
  598     clampReturnedValueStates<AAType, StateType>(A, *this, S);
  608 static void clampCallSiteArgumentStates(Attributor &A, const AAType &QueryingAA,
  632     const AAType &AA = A.getAAFor<AAType>(QueryingAA, ACSArgPos);
  632     const AAType &AA = A.getAAFor<AAType>(QueryingAA, ACSArgPos);
  660     clampCallSiteArgumentStates<AAType, StateType>(A, *this, S);
  687     const AAType &AA = A.getAAFor<AAType>(*this, FnPos);
  687     const AAType &AA = A.getAAFor<AAType>(*this, FnPos);
 1548     auto &DerefAA = A.getAAFor<AADereferenceable>(QueryingAA, IRP);
 1567         A.getAAFor<AADereferenceable>(QueryingAA, IRPosition::value(*Base));
 1644       const auto &DerefAA = A.getAAFor<AADereferenceable>(*this, getIRPosition());
 1644       const auto &DerefAA = A.getAAFor<AADereferenceable>(*this, getIRPosition());
 2460 struct AADereferenceableImpl : AADereferenceable {
 2521     : AAFromMustBeExecutedContext<AADereferenceable, AADereferenceableImpl> {
 2523       AAFromMustBeExecutedContext<AADereferenceable, AADereferenceableImpl>;
 2539       const auto &AA =
 2540           A.getAAFor<AADereferenceable>(*this, IRPosition::value(*Base));
 2584     if (!genericValueTraversal<AADereferenceable, DerefState>(
 2599     : AAReturnedFromReturnedValues<AADereferenceable, AADereferenceableImpl,
 2614           AADereferenceable, AADereferenceableImpl, DerefState> {
 2616       AADereferenceable, AADereferenceableImpl, DerefState>;
 2639           AADereferenceable, AADereferenceableImpl> {
 2641       AADereferenceable, AADereferenceableImpl>;
 2662     auto &FnAA = A.getAAFor<AADereferenceable>(*this, FnPos);
 3051     const auto &DerefAA =
 3052         A.getAAFor<AADereferenceable>(NoCaptureAA, IRPosition::value(*O));
 4773       getOrCreateAAFor<AADereferenceable>(RetPos);
 4791       getOrCreateAAFor<AADereferenceable>(ArgPos);
 4825         getOrCreateAAFor<AADereferenceable>(CSArgPos);