reference, declarationdefinition
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)) {