reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1342 struct IRAttribute : public IRPosition, public Base { 1721 struct AAIsDead : public StateWrapper<BooleanState, AbstractAttribute>, 1953 struct AAValueSimplify : public StateWrapper<BooleanState, AbstractAttribute>, 1977 struct AAHeapToStack : public StateWrapper<BooleanState, AbstractAttribute>,
40 struct DenseMapPair : public std::pair<KeyT, ValueT> { 43 KeyT &getFirst() { return std::pair<KeyT, ValueT>::first; } 44 const KeyT &getFirst() const { return std::pair<KeyT, ValueT>::first; } 65 using key_type = KeyT; 69 using iterator = DenseMapIterator<KeyT, ValueT, KeyInfoT, BucketT>; 71 DenseMapIterator<KeyT, ValueT, KeyInfoT, BucketT, true>; 145 size_type count(const_arg_type_t<KeyT> Val) const { 150 iterator find(const_arg_type_t<KeyT> Val) { 156 const_iterator find(const_arg_type_t<KeyT> Val) const { 185 ValueT lookup(const_arg_type_t<KeyT> Val) const { 195 std::pair<iterator, bool> insert(const std::pair<KeyT, ValueT> &KV) { 202 std::pair<iterator, bool> insert(std::pair<KeyT, ValueT> &&KV) { 210 std::pair<iterator, bool> try_emplace(KeyT &&Key, Ts &&... Args) { 229 std::pair<iterator, bool> try_emplace(const KeyT &Key, Ts &&... Args) { 249 std::pair<iterator, bool> insert_as(std::pair<KeyT, ValueT> &&KV, 272 bool erase(const KeyT &Val) { 291 value_type& FindAndConstruct(const KeyT &Key) { 299 ValueT &operator[](const KeyT &Key) { 303 value_type& FindAndConstruct(KeyT &&Key) { 311 ValueT &operator[](KeyT &&Key) { 334 const KeyT EmptyKey = getEmptyKey(), TombstoneKey = getTombstoneKey(); 349 const KeyT EmptyKey = getEmptyKey(); 351 ::new (&B->getFirst()) KeyT(EmptyKey); 369 const KeyT EmptyKey = getEmptyKey(); 370 const KeyT TombstoneKey = getTombstoneKey(); 392 const DenseMapBase<OtherBaseT, KeyT, ValueT, KeyInfoT, BucketT> &other) { 414 static unsigned getHashValue(const KeyT &Val) { 419 static unsigned getHashValue(const LookupKeyT &Val) { 423 static const KeyT getEmptyKey() { 429 static const KeyT getTombstoneKey() { 515 BucketT *InsertIntoBucket(BucketT *TheBucket, KeyArg &&Key, 525 BucketT *InsertIntoBucketWithLookup(BucketT *TheBucket, KeyT &&Key, 535 BucketT *InsertIntoBucketImpl(const KeyT &Key, const LookupKeyT &Lookup, 535 BucketT *InsertIntoBucketImpl(const KeyT &Key, const LookupKeyT &Lookup, 566 const KeyT EmptyKey = getEmptyKey(); 578 bool LookupBucketFor(const LookupKeyT &Val, 590 const KeyT EmptyKey = getEmptyKey(); 591 const KeyT TombstoneKey = getTombstoneKey(); 629 bool LookupBucketFor(const LookupKeyT &Val, BucketT *&FoundBucket) { 684 class DenseMap : public DenseMapBase<DenseMap<KeyT, ValueT, KeyInfoT, BucketT>, 685 KeyT, ValueT, KeyInfoT, BucketT> { 690 using BaseT = DenseMapBase<DenseMap, KeyT, ValueT, KeyInfoT, BucketT>;include/llvm/ADT/SmallVector.h
75 AlignedCharArrayUnion<T> FirstEl; 114 using value_type = T; 115 using iterator = T *; 116 using const_iterator = const T *; 121 using reference = T &; 122 using const_reference = const T &; 123 using pointer = T *; 124 using const_pointer = const T *; 179 class SmallVectorTemplateBase : public SmallVectorTemplateCommon<T> { 183 static void destroy_range(T *S, T *E) { 183 static void destroy_range(T *S, T *E) { 211 void push_back(const T &Elt) { 218 void push_back(T &&Elt) { 240 T *NewElts = static_cast<T*>(llvm::safe_malloc(NewCapacity*sizeof(T))); 240 T *NewElts = static_cast<T*>(llvm::safe_malloc(NewCapacity*sizeof(T))); 315 class SmallVectorImpl : public SmallVectorTemplateBase<T> { 316 using SuperClass = SmallVectorTemplateBase<T>; 357 void resize(size_type N, const T &NV) { 374 LLVM_NODISCARD T pop_back_val() { 397 void append(size_type NumInputs, const T &Elt) { 405 void append(std::initializer_list<T> IL) { 412 void assign(size_type NumElts, const T &Elt) { 429 void assign(std::initializer_list<T> IL) { 467 iterator insert(iterator I, T &&Elt) { 497 iterator insert(iterator I, const T &Elt) { 526 iterator insert(iterator I, size_type NumToInsert, const T &Elt) { 637 void insert(iterator I, std::initializer_list<T> IL) { 641 template <typename... ArgTypes> reference emplace_back(ArgTypes &&... Args) { 644 ::new ((void *)this->end()) T(std::forward<ArgTypes>(Args)...); 820 AlignedCharArrayUnion<T> InlineElts[N]; 837 class SmallVector : public SmallVectorImpl<T>, SmallVectorStorage<T, N> { 837 class SmallVector : public SmallVectorImpl<T>, SmallVectorStorage<T, N> { 846 explicit SmallVector(size_t Size, const T &Value = T()) 865 SmallVector(std::initializer_list<T> IL) : SmallVectorImpl<T>(N) { 884 SmallVector(SmallVectorImpl<T> &&RHS) : SmallVectorImpl<T>(N) {include/llvm/Support/AlignOf.h
30 T t; 39 template <typename T> union SizerImpl<T> { char arr[sizeof(T)]; }; 50 llvm::detail::SizerImpl<T, Ts...>)];include/llvm/Support/type_traits.h
65 using type = const T &; 91 T t; 122 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{}); 122 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{}); 122 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{}); 130 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{}); 130 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{}); 130 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{}); 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;include/llvm/Transforms/IPO/Attributor.h
165 static const IRPosition value(const Value &V) { 167 return IRPosition::argument(*Arg); 169 return IRPosition::callsite_returned(*CB); 174 static const IRPosition function(const Function &F) { 179 static const IRPosition returned(const Function &F) { 184 static const IRPosition argument(const Argument &Arg) { 189 static const IRPosition callsite_function(const CallBase &CB) { 194 static const IRPosition callsite_returned(const CallBase &CB) { 199 static const IRPosition callsite_argument(const CallBase &CB, 205 static const IRPosition callsite_function(ImmutableCallSite ICS) { 206 return IRPosition::callsite_function(cast<CallBase>(*ICS.getInstruction())); 210 static const IRPosition callsite_returned(ImmutableCallSite ICS) { 211 return IRPosition::callsite_returned(cast<CallBase>(*ICS.getInstruction())); 215 static const IRPosition callsite_argument(ImmutableCallSite ICS, 217 return IRPosition::callsite_argument(cast<CallBase>(*ICS.getInstruction()), 222 static const IRPosition callsite_argument(AbstractCallSite ACS, 226 return IRPosition::callsite_argument( 235 static const IRPosition function_scope(const IRPosition &IRP) { 235 static const IRPosition function_scope(const IRPosition &IRP) { 237 return IRPosition::callsite_function( 241 return IRPosition::function(*IRP.getAssociatedFunction()); 244 bool operator==(const IRPosition &RHS) const { 247 bool operator!=(const IRPosition &RHS) const { return !(*this == RHS); } 312 case IRPosition::IRP_FUNCTION: 313 case IRPosition::IRP_RETURNED: 314 case IRPosition::IRP_ARGUMENT: 382 case IRPosition::IRP_INVALID: 383 case IRPosition::IRP_FLOAT: 385 case IRPosition::IRP_FUNCTION: 386 case IRPosition::IRP_CALL_SITE: 388 case IRPosition::IRP_RETURNED: 389 case IRPosition::IRP_CALL_SITE_RETURNED: 391 case IRPosition::IRP_ARGUMENT: 392 case IRPosition::IRP_CALL_SITE_ARGUMENT: 475 case IRPosition::IRP_CALL_SITE: 476 case IRPosition::IRP_CALL_SITE_RETURNED: 477 case IRPosition::IRP_CALL_SITE_ARGUMENT: 487 static const IRPosition EmptyKey; 488 static const IRPosition TombstoneKey; 514 static inline IRPosition getEmptyKey() { return IRPosition::EmptyKey; } 514 static inline IRPosition getEmptyKey() { return IRPosition::EmptyKey; } 515 static inline IRPosition getTombstoneKey() { 516 return IRPosition::TombstoneKey; 518 static unsigned getHashValue(const IRPosition &IRP) { 522 static bool isEqual(const IRPosition &LHS, const IRPosition &RHS) { 522 static bool isEqual(const IRPosition &LHS, const IRPosition &RHS) { 552 SmallVector<IRPosition, 4> IRPositions; 556 SubsumingPositionIterator(const IRPosition &IRP); 759 const IRPosition &IRP, bool TrackDependence = true) { 788 IRPosition &IRP = AA.getIRPosition(); 915 const AAType &getOrCreateAAFor(const IRPosition &IRP, 951 const AAType *lookupAAFor(const IRPosition &IRP, 985 DenseMap<IRPosition, KindToAbstractAttributeMap> AAMap; 1323 static ChangeStatus manifestAttrs(Attributor &A, IRPosition &IRP, 1342 struct IRAttribute : public IRPosition, public Base { 1343 IRAttribute(const IRPosition &IRP) : IRPosition(IRP) {} 1353 const IRPosition &IRP = this->getIRPosition(); 1386 IRPosition &getIRPosition() override { return *this; } 1387 const IRPosition &getIRPosition() const override { return *this; } 1455 virtual const IRPosition &getIRPosition() const = 0; 1494 virtual IRPosition &getIRPosition() = 0; 1511 raw_ostream &operator<<(raw_ostream &OS, IRPosition::Kind); 1512 raw_ostream &operator<<(raw_ostream &OS, const IRPosition &); 1533 AAReturnedValues(const IRPosition &IRP) : IRAttribute(IRP) {} 1563 static AAReturnedValues &createForPosition(const IRPosition &IRP, 1573 AANoUnwind(const IRPosition &IRP) : IRAttribute(IRP) {} 1582 static AANoUnwind &createForPosition(const IRPosition &IRP, Attributor &A); 1591 AANoSync(const IRPosition &IRP) : IRAttribute(IRP) {} 1600 static AANoSync &createForPosition(const IRPosition &IRP, Attributor &A); 1610 AANonNull(const IRPosition &IRP) : IRAttribute(IRP) {} 1619 static AANonNull &createForPosition(const IRPosition &IRP, Attributor &A); 1629 AANoRecurse(const IRPosition &IRP) : IRAttribute(IRP) {} 1638 static AANoRecurse &createForPosition(const IRPosition &IRP, Attributor &A); 1648 AAWillReturn(const IRPosition &IRP) : IRAttribute(IRP) {} 1657 static AAWillReturn &createForPosition(const IRPosition &IRP, Attributor &A); 1667 AANoAlias(const IRPosition &IRP) : IRAttribute(IRP) {} 1676 static AANoAlias &createForPosition(const IRPosition &IRP, Attributor &A); 1686 AANoFree(const IRPosition &IRP) : IRAttribute(IRP) {} 1695 static AANoFree &createForPosition(const IRPosition &IRP, Attributor &A); 1705 AANoReturn(const IRPosition &IRP) : IRAttribute(IRP) {} 1714 static AANoReturn &createForPosition(const IRPosition &IRP, Attributor &A); 1722 public IRPosition { 1723 AAIsDead(const IRPosition &IRP) : IRPosition(IRP) {} 1754 IRPosition &getIRPosition() override { return *this; } 1755 const IRPosition &getIRPosition() const override { return *this; } 1759 static AAIsDead &createForPosition(const IRPosition &IRP, Attributor &A); 1845 AADereferenceable(const IRPosition &IRP) : IRAttribute(IRP) {} 1876 static AADereferenceable &createForPosition(const IRPosition &IRP, 1887 AAAlign(const IRPosition &IRP) : IRAttribute(IRP) {} 1896 static AAAlign &createForPosition(const IRPosition &IRP, Attributor &A); 1906 AANoCapture(const IRPosition &IRP) : IRAttribute(IRP) {} 1946 static AANoCapture &createForPosition(const IRPosition &IRP, Attributor &A); 1954 public IRPosition { 1955 AAValueSimplify(const IRPosition &IRP) : IRPosition(IRP) {} 1960 IRPosition &getIRPosition() { return *this; } 1961 const IRPosition &getIRPosition() const { return *this; } 1970 static AAValueSimplify &createForPosition(const IRPosition &IRP, 1978 public IRPosition { 1979 AAHeapToStack(const IRPosition &IRP) : IRPosition(IRP) {} 1990 IRPosition &getIRPosition() { return *this; } 1991 const IRPosition &getIRPosition() const { return *this; } 1995 static AAHeapToStack &createForPosition(const IRPosition &IRP, Attributor &A); 2005 AAMemoryBehavior(const IRPosition &IRP) : IRAttribute(IRP) {} 2042 static AAMemoryBehavior &createForPosition(const IRPosition &IRP,lib/Transforms/IPO/Attributor.cpp
159 Attributor &A, IRPosition IRP, const AAType &QueryingAA, StateTy &State, 166 QueryingAA, IRPosition::function(*IRP.getAnchorScope()), 331 IRAttributeManifest::manifestAttrs(Attributor &A, IRPosition &IRP, 334 IRPosition::Kind PK = IRP.getPositionKind(); 342 case IRPosition::IRP_INVALID: 343 case IRPosition::IRP_FLOAT: 345 case IRPosition::IRP_ARGUMENT: 346 case IRPosition::IRP_FUNCTION: 347 case IRPosition::IRP_RETURNED: 350 case IRPosition::IRP_CALL_SITE: 351 case IRPosition::IRP_CALL_SITE_RETURNED: 352 case IRPosition::IRP_CALL_SITE_ARGUMENT: 370 case IRPosition::IRP_ARGUMENT: 371 case IRPosition::IRP_FUNCTION: 372 case IRPosition::IRP_RETURNED: 375 case IRPosition::IRP_CALL_SITE: 376 case IRPosition::IRP_CALL_SITE_RETURNED: 377 case IRPosition::IRP_CALL_SITE_ARGUMENT: 380 case IRPosition::IRP_INVALID: 381 case IRPosition::IRP_FLOAT: 388 const IRPosition IRPosition::EmptyKey(255); 389 const IRPosition IRPosition::TombstoneKey(256); 391 SubsumingPositionIterator::SubsumingPositionIterator(const IRPosition &IRP) { 396 case IRPosition::IRP_INVALID: 397 case IRPosition::IRP_FLOAT: 398 case IRPosition::IRP_FUNCTION: 400 case IRPosition::IRP_ARGUMENT: 401 case IRPosition::IRP_RETURNED: 403 IRPosition::function(*IRP.getAssociatedFunction())); 405 case IRPosition::IRP_CALL_SITE: 411 IRPositions.emplace_back(IRPosition::function(*Callee)); 413 case IRPosition::IRP_CALL_SITE_RETURNED: 419 IRPositions.emplace_back(IRPosition::returned(*Callee)); 420 IRPositions.emplace_back(IRPosition::function(*Callee)); 424 IRPosition::callsite_function(cast<CallBase>(*ICS.getInstruction()))); 426 case IRPosition::IRP_CALL_SITE_ARGUMENT: { 434 IRPositions.emplace_back(IRPosition::argument(*Callee->getArg(ArgNo))); 436 IRPositions.emplace_back(IRPosition::function(*Callee)); 438 IRPositions.emplace_back(IRPosition::value(IRP.getAssociatedValue())); 446 for (const IRPosition &EquivIRP : SubsumingPositionIterator(*this)) { 461 for (const IRPosition &EquivIRP : SubsumingPositionIterator(*this)) 553 const IRPosition &RVPos = IRPosition::value(RV); 553 const IRPosition &RVPos = IRPosition::value(RV); 578 AAComposeTwoGenericDeduction(const IRPosition &IRP) 593 AAReturnedFromReturnedValues(const IRPosition &IRP) : Base(IRP) {} 626 const IRPosition &ACSArgPos = IRPosition::callsite_argument(ACS, ArgNo); 626 const IRPosition &ACSArgPos = IRPosition::callsite_argument(ACS, ArgNo); 629 if (ACSArgPos.getPositionKind() == IRPosition::IRP_INVALID) 655 AAArgumentFromCallSiteArguments(const IRPosition &IRP) : Base(IRP) {} 671 AACallSiteReturnedFromReturned(const IRPosition &IRP) : Base(IRP) {} 686 IRPosition FnPos = IRPosition::returned(*AssociatedFunction); 686 IRPosition FnPos = IRPosition::returned(*AssociatedFunction); 704 AAFromMustBeExecutedContext(const IRPosition &IRP) : Base(IRP) {} 708 IRPosition &IRP = this->getIRPosition(); 770 AANoUnwindImpl(const IRPosition &IRP) : AANoUnwind(IRP) {} 789 A.getAAFor<AANoUnwind>(*this, IRPosition::callsite_function(ICS)); 803 AANoUnwindFunction(const IRPosition &IRP) : AANoUnwindImpl(IRP) {} 811 AANoUnwindCallSite(const IRPosition &IRP) : AANoUnwindImpl(IRP) {} 828 const IRPosition &FnPos = IRPosition::function(*F); 828 const IRPosition &FnPos = IRPosition::function(*F); 867 AAReturnedValuesImpl(const IRPosition &IRP) : AAReturnedValues(IRP) {} 990 getIRPosition() = IRPosition::argument(*UniqueRVArg); 1108 IRPosition RetValPos = IRPosition::value(RV); 1108 IRPosition RetValPos = IRPosition::value(RV); 1145 *this, IRPosition::function(*CB->getCalledFunction())); 1236 AAReturnedValuesFunction(const IRPosition &IRP) : AAReturnedValuesImpl(IRP) {} 1244 AAReturnedValuesCallSite(const IRPosition &IRP) : AAReturnedValuesImpl(IRP) {} 1268 AANoSyncImpl(const IRPosition &IRP) : AANoSync(IRP) {} 1393 A.getAAFor<AANoSync>(*this, IRPosition::callsite_function(ICS)); 1423 AANoSyncFunction(const IRPosition &IRP) : AANoSyncImpl(IRP) {} 1431 AANoSyncCallSite(const IRPosition &IRP) : AANoSyncImpl(IRP) {} 1448 const IRPosition &FnPos = IRPosition::function(*F); 1448 const IRPosition &FnPos = IRPosition::function(*F); 1461 AANoFreeImpl(const IRPosition &IRP) : AANoFree(IRP) {} 1471 A.getAAFor<AANoFree>(*this, IRPosition::callsite_function(ICS)); 1487 AANoFreeFunction(const IRPosition &IRP) : AANoFreeImpl(IRP) {} 1495 AANoFreeCallSite(const IRPosition &IRP) : AANoFreeImpl(IRP) {} 1512 const IRPosition &FnPos = IRPosition::function(*F); 1512 const IRPosition &FnPos = IRPosition::function(*F); 1547 IRPosition IRP = IRPosition::callsite_argument(ICS, ArgNo); 1547 IRPosition IRP = IRPosition::callsite_argument(ICS, ArgNo); 1567 A.getAAFor<AADereferenceable>(QueryingAA, IRPosition::value(*Base)); 1578 AANonNullImpl(const IRPosition &IRP) 1617 AANonNullFloating(const IRPosition &IRP) : Base(IRP) {} 1626 const IRPosition &IRP = getIRPosition(); 1653 const auto &AA = A.getAAFor<AANonNull>(*this, IRPosition::value(V)); 1683 AANonNullReturned(const IRPosition &IRP) 1694 AANonNullArgument(const IRPosition &IRP) 1704 AANonNullCallSiteArgument(const IRPosition &IRP) : AANonNullFloating(IRP) {} 1714 AANonNullCallSiteReturned(const IRPosition &IRP) 1726 AANoRecurseImpl(const IRPosition &IRP) : AANoRecurse(IRP) {} 1735 AANoRecurseFunction(const IRPosition &IRP) : AANoRecurseImpl(IRP) {} 1755 A.getAAFor<AANoRecurse>(*this, IRPosition::callsite_function(ICS)); 1776 AANoRecurseCallSite(const IRPosition &IRP) : AANoRecurseImpl(IRP) {} 1793 const IRPosition &FnPos = IRPosition::function(*F); 1793 const IRPosition &FnPos = IRPosition::function(*F); 1831 AAWillReturnImpl(const IRPosition &IRP) : AAWillReturn(IRP) {} 1845 IRPosition IPos = IRPosition::callsite_function(ImmutableCallSite(&I)); 1845 IRPosition IPos = IRPosition::callsite_function(ImmutableCallSite(&I)); 1868 AAWillReturnFunction(const IRPosition &IRP) : AAWillReturnImpl(IRP) {} 1876 AAWillReturnCallSite(const IRPosition &IRP) : AAWillReturnImpl(IRP) {} 1893 const IRPosition &FnPos = IRPosition::function(*F); 1893 const IRPosition &FnPos = IRPosition::function(*F); 1907 AANoAliasImpl(const IRPosition &IRP) : AANoAlias(IRP) {} 1916 AANoAliasFloating(const IRPosition &IRP) : AANoAliasImpl(IRP) {} 1944 AANoAliasArgument(const IRPosition &IRP) 1952 AANoAliasCallSiteArgument(const IRPosition &IRP) : AANoAliasImpl(IRP) {} 1972 const IRPosition IRP = IRPosition::value(V); 1972 const IRPosition IRP = IRPosition::value(V); 2032 AANoAliasReturned(const IRPosition &IRP) : AANoAliasImpl(IRP) {} 2048 const IRPosition &RVPos = IRPosition::value(RV); 2048 const IRPosition &RVPos = IRPosition::value(RV); 2069 AANoAliasCallSiteReturned(const IRPosition &IRP) : AANoAliasImpl(IRP) {} 2086 const IRPosition &FnPos = IRPosition::returned(*F); 2086 const IRPosition &FnPos = IRPosition::returned(*F); 2099 AAIsDeadImpl(const IRPosition &IRP) : AAIsDead(IRP) {} 2171 const IRPosition &IPos = IRPosition::callsite_function(*II); 2171 const IRPosition &IPos = IRPosition::callsite_function(*II); 2307 AAIsDeadFunction(const IRPosition &IRP) : AAIsDeadImpl(IRP) {} 2346 const IRPosition &IPos = IRPosition::callsite_function(ICS); 2346 const IRPosition &IPos = IRPosition::callsite_function(ICS); 2427 AAIsDeadCallSite(const IRPosition &IRP) : AAIsDeadImpl(IRP) {} 2461 AADereferenceableImpl(const IRPosition &IRP) : AADereferenceable(IRP) {} 2473 const IRPosition &IRP = this->getIRPosition(); 2524 AADereferenceableFloating(const IRPosition &IRP) : Base(IRP) {} 2540 A.getAAFor<AADereferenceable>(*this, IRPosition::value(*Base)); 2601 AADereferenceableReturned(const IRPosition &IRP) 2617 AADereferenceableArgument(const IRPosition &IRP) : Base(IRP) {} 2627 AADereferenceableCallSiteArgument(const IRPosition &IRP) 2642 AADereferenceableCallSiteReturned(const IRPosition &IRP) : Base(IRP) {} 2661 const IRPosition &FnPos = IRPosition::returned(*F); 2661 const IRPosition &FnPos = IRPosition::returned(*F); 2677 AAAlignImpl(const IRPosition &IRP) : AAAlign(IRP) {} 2749 AAAlignFloating(const IRPosition &IRP) : AAAlignImpl(IRP) {} 2757 const auto &AA = A.getAAFor<AAAlign>(*this, IRPosition::value(V)); 2789 AAAlignReturned(const IRPosition &IRP) 2799 AAAlignArgument(const IRPosition &IRP) 2807 AAAlignCallSiteArgument(const IRPosition &IRP) : AAAlignFloating(IRP) {} 2820 AAAlignCallSiteReturned(const IRPosition &IRP) : AAAlignImpl(IRP) {} 2837 const IRPosition &FnPos = IRPosition::returned(*F); 2837 const IRPosition &FnPos = IRPosition::returned(*F); 2849 AANoReturnImpl(const IRPosition &IRP) : AANoReturn(IRP) {} 2878 AANoReturnFunction(const IRPosition &IRP) : AANoReturnImpl(IRP) {} 2886 AANoReturnCallSite(const IRPosition &IRP) : AANoReturnImpl(IRP) {} 2895 const IRPosition &FnPos = IRPosition::function(*F); 2895 const IRPosition &FnPos = IRPosition::function(*F); 2910 AANoCaptureImpl(const IRPosition &IRP) : AANoCapture(IRP) {} 2923 const IRPosition &IRP = getIRPosition(); 2955 static void determineFunctionCaptureCapabilities(const IRPosition &IRP, 3052 A.getAAFor<AADereferenceable>(NoCaptureAA, IRPosition::value(*O)); 3089 const IRPosition &CSArgPos = IRPosition::callsite_argument(CS, ArgNo); 3089 const IRPosition &CSArgPos = IRPosition::callsite_argument(CS, ArgNo); 3155 const IRPosition &IRP = getIRPosition(); 3164 const IRPosition &FnPos = IRPosition::function(*F); 3164 const IRPosition &FnPos = IRPosition::function(*F); 3237 AANoCaptureArgument(const IRPosition &IRP) : AANoCaptureImpl(IRP) {} 3245 AANoCaptureCallSiteArgument(const IRPosition &IRP) : AANoCaptureImpl(IRP) {} 3256 const IRPosition &ArgPos = IRPosition::argument(*Arg); 3256 const IRPosition &ArgPos = IRPosition::argument(*Arg); 3269 AANoCaptureFloating(const IRPosition &IRP) : AANoCaptureImpl(IRP) {} 3279 AANoCaptureReturned(const IRPosition &IRP) : AANoCaptureImpl(IRP) { 3299 AANoCaptureCallSiteReturned(const IRPosition &IRP) : AANoCaptureImpl(IRP) {} 3309 AAValueSimplifyImpl(const IRPosition &IRP) : AAValueSimplify(IRP) {} 3337 QueryingAA, IRPosition::value(QueryingValue)); 3396 AAValueSimplifyArgument(const IRPosition &IRP) : AAValueSimplifyImpl(IRP) {} 3426 AAValueSimplifyReturned(const IRPosition &IRP) : AAValueSimplifyImpl(IRP) {} 3451 AAValueSimplifyFloating(const IRPosition &IRP) : AAValueSimplifyImpl(IRP) {} 3467 auto &AA = A.getAAFor<AAValueSimplify>(*this, IRPosition::value(V)); 3498 AAValueSimplifyFunction(const IRPosition &IRP) : AAValueSimplifyImpl(IRP) {} 3517 AAValueSimplifyCallSite(const IRPosition &IRP) 3526 AAValueSimplifyCallSiteReturned(const IRPosition &IRP) 3534 AAValueSimplifyCallSiteArgument(const IRPosition &IRP) 3544 AAHeapToStackImpl(const IRPosition &IRP) : AAHeapToStack(IRP) {} 3681 A.getAAFor<AANoFree>(*this, IRPosition::callsite_function(*CB)); 3685 *this, IRPosition::callsite_argument(*CB, ArgNo)); 3752 AAHeapToStackFunction(const IRPosition &IRP) : AAHeapToStackImpl(IRP) {} 3766 AAMemoryBehaviorImpl(const IRPosition &IRP) : AAMemoryBehavior(IRP) {} 3776 static void getKnownStateFromValue(const IRPosition &IRP, 3819 IRPosition &IRP = getIRPosition(); 3857 AAMemoryBehaviorFloating(const IRPosition &IRP) : AAMemoryBehaviorImpl(IRP) {} 3896 AAMemoryBehaviorArgument(const IRPosition &IRP) 3932 AAMemoryBehaviorCallSiteArgument(const IRPosition &IRP) 3942 const IRPosition &ArgPos = IRPosition::argument(*Arg); 3942 const IRPosition &ArgPos = IRPosition::argument(*Arg); 3962 AAMemoryBehaviorCallSiteReturned(const IRPosition &IRP) 3977 AAMemoryBehaviorFunction(const IRPosition &IRP) : AAMemoryBehaviorImpl(IRP) {} 4006 AAMemoryBehaviorCallSite(const IRPosition &IRP) : AAMemoryBehaviorImpl(IRP) {} 4023 const IRPosition &FnPos = IRPosition::function(*F); 4023 const IRPosition &FnPos = IRPosition::function(*F); 4053 *this, IRPosition::callsite_function(ICS)); 4075 const IRPosition &IRP = getIRPosition(); 4076 const IRPosition &FnPos = IRPosition::function_scope(IRP); 4076 const IRPosition &FnPos = IRPosition::function_scope(IRP); 4103 *this, IRPosition::function(*IRP.getAssociatedFunction())); 4150 A.getAAFor<AANoCapture>(*this, IRPosition::callsite_argument(ICS, ArgNo)); 4198 const IRPosition &ArgPos = IRPosition::callsite_argument(ICS, ArgNo); 4198 const IRPosition &ArgPos = IRPosition::callsite_argument(ICS, ArgNo); 4227 &getAAFor<AAIsDead>(AA, IRPosition::function(*CtxI->getFunction()), 4249 const IRPosition &IRP = QueryingAA.getIRPosition(); 4286 lookupAAFor<AAIsDead>(IRPosition::function(*Caller), QueryingAA, 4325 const IRPosition &IRP = QueryingAA.getIRPosition(); 4335 const IRPosition &QueryIRP = IRPosition::function(*AssociatedFunction); 4335 const IRPosition &QueryIRP = IRPosition::function(*AssociatedFunction); 4347 const IRPosition &IRP = QueryingAA.getIRPosition(); 4353 const IRPosition &QueryIRP = IRPosition::function(*AssociatedFunction); 4353 const IRPosition &QueryIRP = IRPosition::function(*AssociatedFunction); 4388 const IRPosition &IRP = QueryingAA.getIRPosition(); 4395 const IRPosition &QueryIRP = IRPosition::function(*AssociatedFunction); 4395 const IRPosition &QueryIRP = IRPosition::function(*AssociatedFunction); 4423 const IRPosition &QueryIRP = IRPosition::function(*AssociatedFunction); 4423 const IRPosition &QueryIRP = IRPosition::function(*AssociatedFunction); 4643 lookupAAFor<AAIsDead>(IRPosition::function(*F)); 4716 IRPosition FPos = IRPosition::function(F); 4716 IRPosition FPos = IRPosition::function(F); 4755 IRPosition RetPos = IRPosition::returned(F); 4755 IRPosition RetPos = IRPosition::returned(F); 4778 IRPosition ArgPos = IRPosition::argument(Arg); 4778 IRPosition ArgPos = IRPosition::argument(Arg); 4810 IRPosition CSArgPos = IRPosition::callsite_argument(CS, i); 4810 IRPosition CSArgPos = IRPosition::callsite_argument(CS, i); 4846 IRPosition::value(*cast<LoadInst>(I).getPointerOperand())); 4849 IRPosition::value(*cast<StoreInst>(I).getPointerOperand())); 4866 raw_ostream &llvm::operator<<(raw_ostream &OS, IRPosition::Kind AP) { 4868 case IRPosition::IRP_INVALID: 4870 case IRPosition::IRP_FLOAT: 4872 case IRPosition::IRP_RETURNED: 4874 case IRPosition::IRP_CALL_SITE_RETURNED: 4876 case IRPosition::IRP_FUNCTION: 4878 case IRPosition::IRP_CALL_SITE: 4880 case IRPosition::IRP_ARGUMENT: 4882 case IRPosition::IRP_CALL_SITE_ARGUMENT: 4888 raw_ostream &llvm::operator<<(raw_ostream &OS, const IRPosition &Pos) {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) noexceptusr/include/c++/7.4.0/bits/stl_construct.h
74 _Construct(_T1* __p, _Args&&... __args) 74 _Construct(_T1* __p, _Args&&... __args) 75 { ::new(static_cast<void*>(__p)) _T1(std::forward<_Args>(__args)...); } 75 { ::new(static_cast<void*>(__p)) _T1(std::forward<_Args>(__args)...); } 97 _Destroy(_Tp* __pointer)usr/include/c++/7.4.0/bits/stl_iterator_base_types.h
181 typedef _Tp value_type; 183 typedef _Tp* pointer; 184 typedef _Tp& reference;usr/include/c++/7.4.0/bits/stl_pair.h
209 : private __pair_base<_T1, _T2> 211 typedef _T1 first_type; /// @c first_type is the first bound type 214 _T1 first; /// @c first is a copy of the first object 252 using _PCCP = _PCC<true, _T1, _T2>; 260 constexpr pair(const _T1& __a, const _T2& __b) 269 explicit constexpr pair(const _T1& __a, const _T2& __b) 283 _T1, _T2>; 325 constexpr pair(const _T1& __x, _U2&& __y) 332 explicit pair(const _T1& __x, _U2&& __y) 379 __and_<is_copy_assignable<_T1>, 390 __and_<is_move_assignable<_T1>, 402 typename enable_if<__and_<is_assignable<_T1&, const _U1&>, 402 typename enable_if<__and_<is_assignable<_T1&, const _U1&>, 405 operator=(const pair<_U1, _U2>& __p) 413 typename enable_if<__and_<is_assignable<_T1&, _U1&&>, 413 typename enable_if<__and_<is_assignable<_T1&, _U1&&>, 416 operator=(pair<_U1, _U2>&& __p)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 762 typename add_rvalue_reference<_Tp>::type declval() noexcept; 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 889 typedef decltype(__test<_Tp>(0)) type; 894 : public __and_<__not_<is_void<_Tp>>, 895 __is_default_constructible_impl<_Tp>> 915 : public __is_default_constructible_atom<_Tp>::type 921 : public __is_default_constructible_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> 1286 : public is_assignable<_Tp&, const _Tp&> 1286 : public is_assignable<_Tp&, const _Tp&> 1292 : public __is_copy_assignable_impl<_Tp> 1304 : public is_assignable<_Tp&, _Tp&&> 1304 : public is_assignable<_Tp&, _Tp&&> 1310 : public __is_move_assignable_impl<_Tp> 1377 static void __helper(const _Tp&); 1380 static true_type __test(const _Tp&, 1381 decltype(__helper<const _Tp&>({}))* = 0); 1390 typedef decltype(__test(declval<_Tp>())) type; 1395 : public __is_implicitly_default_constructible_impl<_Tp>::type 1400 : public __and_<is_default_constructible<_Tp>, 1401 __is_implicitly_default_constructible_safe<_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; }; 1659 { typedef _Tp&& type; }; 1664 : public __add_rvalue_reference_helper<_Tp> 1955 { typedef _Tp type; };