|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
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 *;
259 class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
264 static void destroy_range(T *, T *) {}
264 static void destroy_range(T *, T *) {}
286 T1 *I, T1 *E, T2 *Dest,
286 T1 *I, T1 *E, T2 *Dest,
286 T1 *I, T1 *E, T2 *Dest,
287 typename std::enable_if<std::is_same<typename std::remove_const<T1>::type,
288 T2>::value>::type * = nullptr) {
294 memcpy(reinterpret_cast<void *>(Dest), I, (E - I) * sizeof(T));
299 void grow(size_t MinSize = 0) { this->grow_pod(MinSize, sizeof(T)); }
302 void push_back(const T &Elt) {
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)...);
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/ADT/iterator.h 68 : public std::iterator<IteratorCategoryT, T, DifferenceTypeT, PointerT,
206 : public iterator_facade_base<DerivedT, IteratorCategoryT, T,
include/llvm/Analysis/LazyCallGraph.h 191 using VectorT = SmallVector<Edge, 4>;
192 using VectorImplT = SmallVectorImpl<Edge>;
261 Edge &operator[](int i) { return Edges[i]; }
262 Edge &operator[](Node &N) {
264 auto &E = Edges[EdgeIndexMap.find(&N)->second];
269 Edge *lookup(Node &N) {
273 auto &E = Edges[EI->second];
287 for (auto &E : Edges)
301 void insertEdgeInternal(Node &ChildN, Edge::Kind EK);
304 void setEdgeKind(Node &ChildN, Edge::Kind EK);
761 void insertOutgoingEdge(Node &SourceN, Node &TargetN, Edge::Kind EK);
1021 void insertEdge(Node &SourceN, Node &TargetN, Edge::Kind EK);
1024 void insertEdge(Function &Source, Function &Target, Edge::Kind EK) {
1218 inline LazyCallGraph::Edge::Kind LazyCallGraph::Edge::getKind() const {
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 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;
lib/Analysis/CGSCCPassManager.cpp 430 using Edge = LazyCallGraph::Edge;
lib/Analysis/LazyCallGraph.cpp 43 Edge::Kind EK) {
48 void LazyCallGraph::EdgeSequence::setEdgeKind(Node &TargetN, Edge::Kind EK) {
62 static void addEdge(SmallVectorImpl<LazyCallGraph::Edge> &Edges,
64 LazyCallGraph::Node &N, LazyCallGraph::Edge::Kind EK) {
108 LazyCallGraph::Edge::Call);
122 LazyCallGraph::Edge::Ref);
130 LazyCallGraph::Edge::Ref);
173 addEdge(EntryEdges.Edges, EntryEdges.EdgeIndexMap, get(F), Edge::Ref);
185 addEdge(EntryEdges.Edges, EntryEdges.EdgeIndexMap, get(*F), Edge::Ref);
202 LazyCallGraph::Edge::Ref);
244 for (Edge &E : **N)
255 for (Edge &E : N->calls())
277 for (Edge &E : N->calls()) {
337 for (Edge &E : *N) {
358 for (Edge &E : *N)
380 for (Edge &E : *N) {
548 SourceN->setEdgeKind(TargetN, Edge::Call);
561 SourceN->setEdgeKind(TargetN, Edge::Call);
575 for (Edge &E : N->calls())
604 for (Edge &E : *N) {
637 SourceN->setEdgeKind(TargetN, Edge::Call);
672 SourceN->setEdgeKind(TargetN, Edge::Call);
697 SourceN->setEdgeKind(TargetN, Edge::Ref);
722 SourceN->setEdgeKind(TargetN, Edge::Ref);
901 SourceN->setEdgeKind(TargetN, Edge::Call);
923 SourceN->setEdgeKind(TargetN, Edge::Ref);
936 SourceN->insertEdgeInternal(TargetN, Edge::Ref);
945 Edge::Kind EK) {
1000 for (Edge &E : *N)
1025 for (Edge &E : *N) {
1099 SourceN->insertEdgeInternal(TargetN, Edge::Ref);
1403 Edge &E = SourceN->Edges[InsertResult.first->second];
1406 E.setKind(Edge::Call);
1409 SourceN->Edges.emplace_back(TargetN, Edge::Call);
1439 SourceN->Edges.emplace_back(TargetN, Edge::Ref);
1476 void LazyCallGraph::insertEdge(Node &SourceN, Node &TargetN, Edge::Kind EK) {
1708 for (Edge &E : *this)
1747 for (LazyCallGraph::Edge &E : N.populate())
1793 for (LazyCallGraph::Edge &E : N.populate()) {
lib/Transforms/IPO/Inliner.cpp 1156 for (LazyCallGraph::Edge &E : *CalleeN)
unittests/Analysis/LazyCallGraphTest.cpp 266 for (LazyCallGraph::Edge &E : A1.populate())
281 for (LazyCallGraph::Edge &E : B1.populate())
295 for (LazyCallGraph::Edge &E : C1.populate())
429 CG.insertEdge(B, C, LazyCallGraph::Edge::Call);
433 CG.insertEdge(C, B, LazyCallGraph::Edge::Call);
437 CG.insertEdge(C, C, LazyCallGraph::Edge::Call);
464 CG.insertEdge(D1, A1, LazyCallGraph::Edge::Ref);
641 ARC.insertOutgoingEdge(A, D, LazyCallGraph::Edge::Call);
643 const LazyCallGraph::Edge &NewE = (*A)[D];
798 for (LazyCallGraph::Edge E : *D2) {
890 for (LazyCallGraph::Edge E : *D2) {
2135 CG.insertEdge(AN, DeadN, LazyCallGraph::Edge::Ref);
2136 CG.insertEdge(BN, DeadN, LazyCallGraph::Edge::Ref);
2137 CG.insertEdge(CN, DeadN, LazyCallGraph::Edge::Ref);
2138 CG.insertEdge(DN, DeadN, LazyCallGraph::Edge::Ref);
usr/include/c++/7.4.0/bits/move.h 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) noexcept
usr/include/c++/7.4.0/bits/stl_iterator_base_types.h 123 typedef _Tp value_type;
181 typedef _Tp value_type;
183 typedef _Tp* pointer;
184 typedef _Tp& reference;
usr/include/c++/7.4.0/initializer_list 50 typedef _E value_type;
51 typedef const _E& reference;
52 typedef const _E& const_reference;
54 typedef const _E* iterator;
55 typedef const _E* const_iterator;
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
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
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>
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; };
1955 { typedef _Tp type; };
utils/unittest/googletest/include/gtest/gtest.h 273 const T& success,
275 !internal::ImplicitlyConvertible<T, AssertionResult>::value>::type*
utils/unittest/googletest/include/gtest/internal/gtest-internal.h 830 struct AddReference { typedef T& type; }; // NOLINT
863 static typename AddReference<From>::type MakeFrom();