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

Derived Classes

lib/Transforms/IPO/Attributor.cpp
 1577 struct AANonNullImpl : AANonNull {

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))) {
 1619   static AANonNull &createForPosition(const IRPosition &IRP, Attributor &A);
 1838   const AANonNull *NonNullAA = nullptr;
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);
 1577 struct AANonNullImpl : AANonNull {
 1615     : AAFromMustBeExecutedContext<AANonNull, AANonNullImpl> {
 1616   using Base = AAFromMustBeExecutedContext<AANonNull, AANonNullImpl>;
 1653       const auto &AA = A.getAAFor<AANonNull>(*this, IRPosition::value(V));
 1653       const auto &AA = A.getAAFor<AANonNull>(*this, IRPosition::value(V));
 1661         const AANonNull::StateType &NS =
 1669     if (!genericValueTraversal<AANonNull, StateType>(A, getIRPosition(), *this,
 1682     : AAReturnedFromReturnedValues<AANonNull, AANonNullImpl> {
 1692     : AAArgumentFromCallSiteArgumentsAndMustBeExecutedContext<AANonNull,
 1712     : AACallSiteReturnedFromReturnedAndMustBeExecutedContext<AANonNull,
 2471     NonNullAA = &A.getAAFor<AANonNull>(*this, getIRPosition());
 4766       getOrCreateAAFor<AANonNull>(RetPos);
 4785       getOrCreateAAFor<AANonNull>(ArgPos);
 4819         getOrCreateAAFor<AANonNull>(CSArgPos);