reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
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() { 447 if (shouldReverseIterate<KeyT>()) { 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>; 1163 using ConstIterator = DenseMapIterator<KeyT, ValueT, KeyInfoT, Bucket, true>; 1186 if (shouldReverseIterate<KeyT>()) { 1199 const DenseMapIterator<KeyT, ValueT, KeyInfoT, Bucket, IsConstSrc> &I) 1210 if (shouldReverseIterate<KeyT>()) 1249 const KeyT Empty = KeyInfoT::getEmptyKey(); 1250 const KeyT Tombstone = KeyInfoT::getTombstoneKey(); 1259 const KeyT Empty = KeyInfoT::getEmptyKey(); 1260 const KeyT Tombstone = KeyInfoT::getTombstoneKey();include/llvm/ADT/ScopedHashTable.h
49 K Key; 52 ScopedHashTableVal(const K &key, const V &val) : Key(key), Val(val) {} 55 const K &getKey() const { return Key; } 66 const K &key, const V &val, 87 ScopedHashTable<K, V, KInfo, AllocatorTy> &HT; 94 ScopedHashTableVal<K, V> *LastValInScope; 97 ScopedHashTableScope(ScopedHashTable<K, V, KInfo, AllocatorTy> &HT); 108 ScopedHashTableVal<K, V> *getLastValInScope() { 112 void setLastValInScope(ScopedHashTableVal<K, V> *Val) { 154 using ScopeTy = ScopedHashTableScope<K, V, KInfo, AllocatorTy>; 160 using ValTy = ScopedHashTableVal<K, V>; 162 DenseMap<K, ValTy*, KInfo> TopLevelMap; 182 size_type count(const K &Key) const { 186 V lookup(const K &Key) const { 194 void insert(const K &Key, const V &Val) { 198 using iterator = ScopedHashTableIterator<K, V, KInfo>; 202 iterator begin(const K &Key) { 218 ScopedHashTableVal<K, V> *&KeyEntry = TopLevelMap[Key]; 241 while (ScopedHashTableVal<K, V> *ThisEntry = LastValInScope) { 248 ScopedHashTableVal<K, V> *&KeyEntry = HT.TopLevelMap[ThisEntry->getKey()];include/llvm/Support/type_traits.h
65 using type = const T &;
lib/Transforms/Scalar/EarlyCSE.cpp125 static inline SimpleValue getEmptyKey() { 129 static inline SimpleValue getTombstoneKey() { 133 static unsigned getHashValue(SimpleValue Val); 134 static bool isEqual(SimpleValue LHS, SimpleValue RHS); 134 static bool isEqual(SimpleValue LHS, SimpleValue RHS); 165 static unsigned getHashValueImpl(SimpleValue Val) { 253 unsigned DenseMapInfo<SimpleValue>::getHashValue(SimpleValue Val) { 265 static bool isEqualImpl(SimpleValue LHS, SimpleValue RHS) { 265 static bool isEqualImpl(SimpleValue LHS, SimpleValue RHS) { 354 bool DenseMapInfo<SimpleValue>::isEqual(SimpleValue LHS, SimpleValue RHS) { 354 bool DenseMapInfo<SimpleValue>::isEqual(SimpleValue LHS, SimpleValue RHS) { 456 ScopedHashTable<SimpleValue, Value *, DenseMapInfo<SimpleValue>, 456 ScopedHashTable<SimpleValue, Value *, DenseMapInfo<SimpleValue>, 856 if (SimpleValue::canHandle(OPI) && Visited.insert(OPI).second) 886 if (CondInst && SimpleValue::canHandle(CondInst)) 925 if (CondI && SimpleValue::canHandle(CondI)) { 968 if (SimpleValue::canHandle(CondI)) { 1024 if (SimpleValue::canHandle(Inst)) {usr/include/c++/7.4.0/bits/move.h
72 constexpr _Tp&& 83 constexpr _Tp&& 98 move(_Tp&& __t) noexceptusr/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 381 : public __is_pointer_helper<typename remove_cv<_Tp>::type>::type 581 : public __or_<is_lvalue_reference<_Tp>, 582 is_rvalue_reference<_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 638 : public __or_<is_object<_Tp>, is_reference<_Tp>>::type 638 : public __or_<is_object<_Tp>, is_reference<_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 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> 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; 1633 { typedef _Tp type; }; 1659 { typedef _Tp&& type; };