|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
Derived Classes
lib/Transforms/Vectorize/VPlan.h 632 class VPInstruction : public VPUser, public VPRecipeBase {
709 class VPWidenRecipe : public VPRecipeBase {
745 class VPWidenIntOrFpInductionRecipe : public VPRecipeBase {
769 class VPWidenPHIRecipe : public VPRecipeBase {
791 class VPBlendRecipe : public VPRecipeBase {
822 class VPInterleaveRecipe : public VPRecipeBase {
853 class VPReplicateRecipe : public VPRecipeBase {
898 class VPBranchOnMaskRecipe : public VPRecipeBase {
933 class VPPredInstPHIRecipe : public VPRecipeBase {
959 class VPWidenMemoryInstructionRecipe : public VPRecipeBase {
References
include/llvm/ADT/ilist.h 41 static void deleteNode(NodeTy *V) { delete V; }
65 void addNodeToList(NodeTy *) {}
66 void removeNodeFromList(NodeTy *) {}
82 struct ilist_node_traits : ilist_alloc_traits<NodeTy>,
83 ilist_callback_traits<NodeTy> {};
89 struct ilist_traits : public ilist_node_traits<NodeTy> {};
96 template <class T> T &make();
106 static Yes &test(U *I, decltype(I->getNext(&make<NodeT>())) * = 0);
136 static Yes &test(U *I, decltype(I->createNode(make<NodeT>())) * = 0);
144 static const bool value = HasGetNext<TraitsT, NodeT>::value ||
146 HasCreateNode<TraitsT, NodeT>::value;
389 : public iplist_impl<simple_ilist<T, Options...>, ilist_traits<T>> {
389 : public iplist_impl<simple_ilist<T, Options...>, ilist_traits<T>> {
include/llvm/ADT/ilist_node.h 150 typename ilist_detail::compute_node_options<T, Options...>::type> {
256 class ilist_node_with_parent : public ilist_node<NodeTy, Options...> {
274 NodeTy *getPrevNode() {
283 const NodeTy *getPrevNode() const {
288 NodeTy *getNextNode() {
297 const NodeTy *getNextNode() const {
include/llvm/ADT/ilist_node_options.h 108 typedef T value_type;
109 typedef T *pointer;
110 typedef T &reference;
111 typedef const T *const_pointer;
112 typedef const T &const_reference;
122 typedef node_options<T, extract_sentinel_tracking<Options...>::value,
include/llvm/ADT/simple_ilist.h 79 : ilist_detail::compute_node_options<T, Options...>::type::list_base_type,
81 typename ilist_detail::compute_node_options<T, Options...>::type> {
85 typename ilist_detail::compute_node_options<T, Options...>::type;
include/llvm/Support/Casting.h 57 static inline bool doit(const From &Val) {
90 static inline bool doit(const From *Val) {
92 return isa_impl<To, From>::doit(*Val);
104 static inline bool doit(const From *Val) {
106 return isa_impl<To, From>::doit(*Val);
263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
265 return cast_convert_val<X, Y*,
266 typename simplify_type<Y*>::SimpleType>::doit(Val);
342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
366 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
367 dyn_cast_or_null(Y *Val) {
lib/Transforms/Vectorize/LoopVectorize.cpp 6978 VPRecipeBase *PredRecipe,
7007 VPRecipeBase *Recipe = nullptr;
lib/Transforms/Vectorize/VPRecipeBuilder.h 99 VPRegionBlock *createReplicateRegion(Instruction *I, VPRecipeBase *PredRecipe,
lib/Transforms/Vectorize/VPlan.cpp 199 for (VPRecipeBase &Recipe : Recipes)
277 void VPRecipeBase::insertBefore(VPRecipeBase *InsertPos) {
282 iplist<VPRecipeBase>::iterator VPRecipeBase::eraseFromParent() {
286 void VPRecipeBase::moveAfter(VPRecipeBase *InsertPos) {
589 for (const VPRecipeBase &Recipe : *BasicBlock)
734 for (VPRecipeBase &VPI : *VPBB) {
lib/Transforms/Vectorize/VPlan.h 568 class VPRecipeBase : public ilist_node_with_parent<VPRecipeBase, VPBasicBlock> {
616 void insertBefore(VPRecipeBase *InsertPos);
620 void moveAfter(VPRecipeBase *MovePos);
625 iplist<VPRecipeBase>::iterator eraseFromParent();
632 class VPInstruction : public VPUser, public VPRecipeBase {
663 VPRecipeBase(VPRecipeBase::VPInstructionSC), Opcode(Opcode) {}
679 static inline bool classof(const VPRecipeBase *R) {
680 return R->getVPRecipeID() == VPRecipeBase::VPInstructionSC;
709 class VPWidenRecipe : public VPRecipeBase {
724 static inline bool classof(const VPRecipeBase *V) {
725 return V->getVPRecipeID() == VPRecipeBase::VPWidenSC;
745 class VPWidenIntOrFpInductionRecipe : public VPRecipeBase {
756 static inline bool classof(const VPRecipeBase *V) {
757 return V->getVPRecipeID() == VPRecipeBase::VPWidenIntOrFpInductionSC;
769 class VPWidenPHIRecipe : public VPRecipeBase {
778 static inline bool classof(const VPRecipeBase *V) {
779 return V->getVPRecipeID() == VPRecipeBase::VPWidenPHISC;
791 class VPBlendRecipe : public VPRecipeBase {
809 static inline bool classof(const VPRecipeBase *V) {
810 return V->getVPRecipeID() == VPRecipeBase::VPBlendSC;
822 class VPInterleaveRecipe : public VPRecipeBase {
836 static inline bool classof(const VPRecipeBase *V) {
837 return V->getVPRecipeID() == VPRecipeBase::VPInterleaveSC;
853 class VPReplicateRecipe : public VPRecipeBase {
882 static inline bool classof(const VPRecipeBase *V) {
883 return V->getVPRecipeID() == VPRecipeBase::VPReplicateSC;
898 class VPBranchOnMaskRecipe : public VPRecipeBase {
909 static inline bool classof(const VPRecipeBase *V) {
910 return V->getVPRecipeID() == VPRecipeBase::VPBranchOnMaskSC;
933 class VPPredInstPHIRecipe : public VPRecipeBase {
945 static inline bool classof(const VPRecipeBase *V) {
946 return V->getVPRecipeID() == VPRecipeBase::VPPredInstPHISC;
959 class VPWidenMemoryInstructionRecipe : public VPRecipeBase {
972 static inline bool classof(const VPRecipeBase *V) {
973 return V->getVPRecipeID() == VPRecipeBase::VPWidenMemoryInstructionSC;
988 using RecipeListTy = iplist<VPRecipeBase>;
995 VPBasicBlock(const Twine &Name = "", VPRecipeBase *Recipe = nullptr)
1024 inline const VPRecipeBase &front() const { return Recipes.front(); }
1025 inline VPRecipeBase &front() { return Recipes.front(); }
1026 inline const VPRecipeBase &back() const { return Recipes.back(); }
1027 inline VPRecipeBase &back() { return Recipes.back(); }
1042 void insert(VPRecipeBase *Recipe, iterator InsertPt) {
1051 void appendRecipe(VPRecipeBase *Recipe) { insert(Recipe, end()); }
lib/Transforms/Vectorize/VPlanHCFGTransforms.cpp 44 VPRecipeBase *LastRecipe = nullptr;
47 VPRecipeBase *Ingredient = &*I++;
56 VPRecipeBase *NewRecipe = nullptr;
lib/Transforms/Vectorize/VPlanSLP.cpp 124 for (auto &I : *Parent) {
usr/include/c++/7.4.0/bits/move.h 72 constexpr _Tp&&
83 constexpr _Tp&&
usr/include/c++/7.4.0/tuple 125 constexpr _Head_base(const _Head& __h)
132 constexpr _Head_base(_UHead&& __h)
159 static constexpr _Head&
162 static constexpr const _Head&
194 static constexpr _Head&
197 static constexpr const _Head&
210 constexpr _Tuple_impl(const _Head& __head, const _Tail&... __tail)
216 constexpr _Tuple_impl(_UHead&& __head, _UTail&&... __tail)
248 const _Head& __head, const _Tail&... __tail)
473 return __and_<is_constructible<_Elements, const _UElements&>...>::value;
479 return __and_<is_convertible<const _UElements&, _Elements>...>::value;
485 return __and_<is_constructible<_Elements, _UElements&&>...>::value;
491 return __and_<is_convertible<_UElements&&, _Elements>...>::value;
947 constexpr tuple(const _T1& __a1, const _T2& __a2)
956 explicit constexpr tuple(const _T1& __a1, const _T2& __a2)
971 constexpr tuple(_U1&& __a1, _U2&& __a2)
1078 const _T1& __a1, const _T2& __a2)
1090 const _T1& __a1, const _T2& __a2)
1302 constexpr _Head&
1307 constexpr const _Head&
1313 constexpr __tuple_element_t<__i, tuple<_Elements...>>&
1319 constexpr const __tuple_element_t<__i, tuple<_Elements...>>&
1325 constexpr __tuple_element_t<__i, tuple<_Elements...>>&&
usr/include/c++/7.4.0/type_traits 1246 : public is_nothrow_constructible<_Tp, _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; };
1983 { typedef _Up type; };
2104 { typedef typename remove_cv<_Up>::type __type; };
utils/unittest/googletest/include/gtest/gtest-printers.h 407 T* p, ::std::ostream* os) {
416 if (IsTrue(ImplicitlyConvertible<T*, const void*>::value)) {