|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
include/llvm/ADT/DenseMap.h 40 struct DenseMapPair : public std::pair<KeyT, ValueT> {
45 ValueT &getSecond() { return std::pair<KeyT, ValueT>::second; }
46 const ValueT &getSecond() const { return std::pair<KeyT, ValueT>::second; }
66 using mapped_type = ValueT;
69 using iterator = DenseMapIterator<KeyT, ValueT, KeyInfoT, BucketT>;
71 DenseMapIterator<KeyT, ValueT, KeyInfoT, BucketT, true>;
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) {
249 std::pair<iterator, bool> insert_as(std::pair<KeyT, ValueT> &&KV,
299 ValueT &operator[](const KeyT &Key) {
311 ValueT &operator[](KeyT &&Key) {
380 ::new (&DestBucket->getSecond()) ValueT(std::move(B->getSecond()));
392 const DenseMapBase<OtherBaseT, KeyT, ValueT, KeyInfoT, BucketT> &other) {
520 ::new (&TheBucket->getSecond()) ValueT(std::forward<ValueArgs>(Values)...);
526 ValueT &&Value, LookupKeyT &Lookup) {
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>;
1199 const DenseMapIterator<KeyT, ValueT, KeyInfoT, Bucket, IsConstSrc> &I)
include/llvm/Analysis/IVDescriptors.h 172 RecurrenceDescriptor &RedDes,
182 RecurrenceDescriptor &RedDes,
include/llvm/Transforms/Utils/LoopUtils.h 297 RecurrenceDescriptor::MinMaxRecurrenceKind RK,
303 RecurrenceDescriptor::MinMaxRecurrenceKind MinMaxKind =
304 RecurrenceDescriptor::MRK_Invalid,
310 RecurrenceDescriptor::MinMaxRecurrenceKind
311 MinMaxKind = RecurrenceDescriptor::MRK_Invalid,
332 RecurrenceDescriptor &Desc, Value *Src,
include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h 211 using ReductionList = DenseMap<PHINode *, RecurrenceDescriptor>;
lib/Analysis/IVDescriptors.cpp 192 RecurrenceDescriptor &RedDes,
450 RecurrenceDescriptor RD(
460 RecurrenceDescriptor::InstDesc
518 RecurrenceDescriptor::InstDesc
556 RecurrenceDescriptor::InstDesc
612 RecurrenceDescriptor &RedDes,
lib/CodeGen/ExpandReductions.cpp 59 RecurrenceDescriptor::MinMaxRecurrenceKind getMRK(Intrinsic::ID ID) {
62 return RecurrenceDescriptor::MRK_SIntMax;
64 return RecurrenceDescriptor::MRK_SIntMin;
66 return RecurrenceDescriptor::MRK_UIntMax;
68 return RecurrenceDescriptor::MRK_UIntMin;
70 return RecurrenceDescriptor::MRK_FloatMax;
72 return RecurrenceDescriptor::MRK_FloatMin;
74 return RecurrenceDescriptor::MRK_Invalid;
92 RecurrenceDescriptor::MinMaxRecurrenceKind MRK = getMRK(ID);
lib/Transforms/Scalar/LoopInterchange.cpp 668 RecurrenceDescriptor RD;
669 if (RecurrenceDescriptor::isReductionPHI(PHI, L, RD))
683 RecurrenceDescriptor RD;
lib/Transforms/Utils/LoopUtils.cpp 743 RecurrenceDescriptor::MinMaxRecurrenceKind RK,
749 case RecurrenceDescriptor::MRK_UIntMin:
752 case RecurrenceDescriptor::MRK_UIntMax:
755 case RecurrenceDescriptor::MRK_SIntMin:
758 case RecurrenceDescriptor::MRK_SIntMax:
761 case RecurrenceDescriptor::MRK_FloatMin:
764 case RecurrenceDescriptor::MRK_FloatMax:
777 if (RK == RecurrenceDescriptor::MRK_FloatMin ||
778 RK == RecurrenceDescriptor::MRK_FloatMax)
791 RecurrenceDescriptor::MinMaxRecurrenceKind MinMaxKind,
821 RecurrenceDescriptor::MinMaxRecurrenceKind MinMaxKind,
869 using RD = RecurrenceDescriptor;
936 RecurrenceDescriptor &Desc, Value *Src,
939 using RD = RecurrenceDescriptor;
lib/Transforms/Vectorize/LoopVectorizationLegality.cpp 613 RecurrenceDescriptor RedDes;
614 if (RecurrenceDescriptor::isReductionPHI(Phi, TheLoop, RedDes, DB, AC,
645 if (RecurrenceDescriptor::isFirstOrderRecurrence(Phi, TheLoop,
lib/Transforms/Vectorize/LoopVectorize.cpp 3647 RecurrenceDescriptor RdxDesc = (*Legal->getReductionVars())[Phi];
3649 RecurrenceDescriptor::RecurrenceKind RK = RdxDesc.getRecurrenceKind();
3652 RecurrenceDescriptor::MinMaxRecurrenceKind MinMaxKind =
3669 if (RK == RecurrenceDescriptor::RK_IntegerMinMax ||
3670 RK == RecurrenceDescriptor::RK_FloatMinMax) {
3680 Constant *Iden = RecurrenceDescriptor::getRecurrenceIdentity(
3773 unsigned Op = RecurrenceDescriptor::getRecurrenceBinOp(RK);
5093 RecurrenceDescriptor RdxDesc = (*Legal->getReductionVars())[PN];
6366 RecurrenceDescriptor &RedDes = Reduction.second;
usr/include/c++/7.4.0/bits/move.h 98 move(_Tp&& __t) noexcept
usr/include/c++/7.4.0/bits/stl_pair.h 209 : private __pair_base<_T1, _T2>
212 typedef _T2 second_type; /// @c second_type is the second bound type
215 _T2 second; /// @c second is a copy of the second 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>;
311 constexpr pair(_U1&& __x, const _T2& __y)
318 explicit constexpr pair(_U1&& __x, const _T2& __y)
380 is_copy_assignable<_T2>>::value,
391 is_move_assignable<_T2>>::value,
403 is_assignable<_T2&, const _U2&>>::value,
403 is_assignable<_T2&, const _U2&>>::value,
405 operator=(const pair<_U1, _U2>& __p)
414 is_assignable<_T2&, _U2&&>>::value,
414 is_assignable<_T2&, _U2&&>>::value,
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
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
762 typename add_rvalue_reference<_Tp>::type declval() noexcept;
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>
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;
1633 { typedef _Tp type; };
1659 { typedef _Tp&& type; };
1664 : public __add_rvalue_reference_helper<_Tp>