reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Declarations

include/llvm/Analysis/LazyCallGraph.h
  117   class RefSCC;

References

include/llvm/ADT/DenseMapInfo.h
   39   static inline T* getEmptyKey() {
   41     Val <<= PointerLikeTypeTraits<T*>::NumLowBitsAvailable;
   45   static inline T* getTombstoneKey() {
   47     Val <<= PointerLikeTypeTraits<T*>::NumLowBitsAvailable;
   51   static unsigned getHashValue(const T *PtrVal) {
   56   static bool isEqual(const T *LHS, const T *RHS) { return LHS == RHS; }
   56   static bool isEqual(const T *LHS, const T *RHS) { return LHS == RHS; }
include/llvm/ADT/STLExtras.h
  250   static const bool value = sizeof(test<Ty>(nullptr)) == sizeof(yes);
  278     ContainerTy &&C,
include/llvm/ADT/iterator.h
   68     : public std::iterator<IteratorCategoryT, T, DifferenceTypeT, PointerT,
include/llvm/Analysis/CGSCCPassManager.h
  242   SmallPriorityWorklist<LazyCallGraph::RefSCC *, 1> &RCWorklist;
  265   SmallPtrSetImpl<LazyCallGraph::RefSCC *> &InvalidatedRefSCCs;
  283   LazyCallGraph::RefSCC *UpdatedRC;
  746   SmallPriorityWorklist<LazyCallGraph::RefSCC *, 1> RCWorklist;
  751   SmallPtrSet<LazyCallGraph::RefSCC *, 4> InvalidRefSCCSet;
  786       LazyCallGraph::RefSCC *RC = RCWorklist.pop_back_val();
include/llvm/Analysis/LazyCallGraph.h
  435     RefSCC *OuterRefSCC;
  439     SCC(RefSCC &OuterRefSCC, NodeRangeT &&Nodes)
  493     RefSCC &getOuterRefSCC() const { return *OuterRefSCC; }
  575     friend raw_ostream &operator<<(raw_ostream &OS, const RefSCC &RC) {
  617         pointee_iterator<SmallPtrSetImpl<RefSCC *>::const_iterator>;
  634     bool isParentOf(const RefSCC &RC) const;
  641     bool isAncestorOf(const RefSCC &RC) const;
  647     bool isChildOf(const RefSCC &RC) const { return RC.isParentOf(*this); }
  654     bool isDescendantOf(const RefSCC &RC) const {
  788     SmallVector<RefSCC *, 1> insertIncomingRefEdge(Node &SourceN,
  841     SmallVector<RefSCC *, 1> removeInternalRefEdge(Node &SourceN,
  888                                     std::forward_iterator_tag, RefSCC> {
  896     RefSCC *RC = nullptr;
  906     static RefSCC *getRC(LazyCallGraph &G, int Index) {
  976   RefSCC *lookupRefSCC(Node &N) const {
 1141   SpecificBumpPtrAllocator<RefSCC> RefSCCBPA;
 1146   SmallVector<RefSCC *, 16> PostOrderRefSCCs;
 1150   DenseMap<RefSCC *, int> RefSCCIndices;
 1167   template <typename... Ts> SCC *createSCC(Ts &&... Args) {
 1174   template <typename... Ts> RefSCC *createRefSCC(Ts &&... Args) {
 1175     return new (RefSCCBPA.Allocate()) RefSCC(std::forward<Ts>(Args)...);
 1196   void buildSCCs(RefSCC &RC, node_stack_range Nodes);
 1202   int getRefSCCIndex(RefSCC &RC) {
include/llvm/Support/Alignment.h
  103     return Constant<std::alignment_of<T>::value>();
include/llvm/Support/Allocator.h
   81   template <typename T> T *Allocate(size_t Num = 1) {
   82     return static_cast<T *>(Allocate(Num * sizeof(T), alignof(T)));
   82     return static_cast<T *>(Allocate(Num * sizeof(T), alignof(T)));
  470       for (char *Ptr = Begin; Ptr + sizeof(T) <= End; Ptr += sizeof(T))
  470       for (char *Ptr = Begin; Ptr + sizeof(T) <= End; Ptr += sizeof(T))
  478       char *Begin = (char *)alignAddr(*I, Align::Of<T>());
  488       DestroyElements((char *)alignAddr(Ptr, Align::Of<T>()),
  496   T *Allocate(size_t num = 1) { return Allocator.Allocate<T>(num); }
  496   T *Allocate(size_t num = 1) { return Allocator.Allocate<T>(num); }
include/llvm/Support/PointerLikeTypeTraits.h
   56   static inline void *getAsVoidPointer(T *P) { return P; }
   57   static inline T *getFromVoidPointer(void *P) { return static_cast<T *>(P); }
   59   enum { NumLowBitsAvailable = detail::ConstantLog2<alignof(T)>::value };
   91   typedef PointerLikeTypeTraits<T *> NonConst;
   93   static inline const void *getAsVoidPointer(const T *P) {
   96   static inline const T *getFromVoidPointer(const void *P) {
lib/Analysis/CGSCCPassManager.cpp
  165   for (auto &RC : G->postorder_ref_sccs())
  432   using RefSCC = LazyCallGraph::RefSCC;
lib/Analysis/LazyCallGraph.cpp
  351 bool LazyCallGraph::RefSCC::isParentOf(const RefSCC &RC) const {
  365 bool LazyCallGraph::RefSCC::isAncestorOf(const RefSCC &RC) const {
  372   SmallVector<const RefSCC *, 4> Worklist;
  373   SmallPtrSet<const RefSCC *, 4> Visited;
  377     const RefSCC &DescendantRC = *Worklist.pop_back_val();
  381           auto *ChildRC = G->lookupRefSCC(E.getNode());
  460     SCCT &SourceSCC, SCCT &TargetSCC, PostorderSequenceT &SCCs,
  460     SCCT &SourceSCC, SCCT &TargetSCC, PostorderSequenceT &SCCs,
  468   SmallPtrSet<SCCT *, 4> ConnectedSet;
  700 iterator_range<LazyCallGraph::RefSCC::iterator>
  964 SmallVector<LazyCallGraph::RefSCC *, 1>
  967   RefSCC &SourceC = *G->lookupRefSCC(SourceN);
  974   SmallVector<RefSCC *, 1> DeletedRefSCCs;
 1007     for (RefSCC *C : make_range(G->PostOrderRefSCCs.begin() + SourceIdx + 1,
 1019     SmallVector<RefSCC *, 4> Worklist;
 1022       RefSCC &RC = *Worklist.pop_back_val();
 1026             RefSCC &EdgeRC = *G->lookupRefSCC(E.getNode());
 1041   iterator_range<SmallVectorImpl<RefSCC *>::iterator> MergeRange =
 1048   SmallPtrSet<RefSCC *, 16> MergeSet(MergeRange.begin(), MergeRange.end());
 1057   for (RefSCC *RC : MergeRange) {
 1089   for (RefSCC *RC : MergeRange)
 1094   for (RefSCC *RC : make_range(EraseEnd, G->PostOrderRefSCCs.end()))
 1127 SmallVector<LazyCallGraph::RefSCC *, 1>
 1131   SmallVector<RefSCC *, 1> Result;
 1341     RefSCC &RC = *Result[SCCNumber];
 1356   for (RefSCC *RC : Result)
 1371   RefSCC &TargetRC = *G->lookupRefSCC(TargetN);
 1528   RefSCC &RC = C.getOuterRefSCC();
 1566   for (auto *RC : PostOrderRefSCCs)
 1666 void LazyCallGraph::buildSCCs(RefSCC &RC, node_stack_range Nodes) {
 1725         RefSCC *NewRC = createRefSCC(*this);
 1761 static void printRefSCC(raw_ostream &OS, LazyCallGraph::RefSCC &C) {
 1781   for (LazyCallGraph::RefSCC &C : G.postorder_ref_sccs())
lib/Transforms/IPO/Inliner.cpp
  953   auto *RC = &C->getOuterRefSCC();
 1218     auto &DeadRC = DeadC.getOuterRefSCC();
unittests/Analysis/LazyCallGraphTest.cpp
  323   LazyCallGraph::RefSCC &D = *J++;
  339   LazyCallGraph::RefSCC &C = *J++;
  355   LazyCallGraph::RefSCC &B = *J++;
  373   LazyCallGraph::RefSCC &A = *J++;
  473   LazyCallGraph::RefSCC &RC = *I++;
  558   LazyCallGraph::RefSCC &RC = *I++;
  608   for (LazyCallGraph::RefSCC &RC : CG.postorder_ref_sccs())
  619   LazyCallGraph::RefSCC &ARC = *CG.lookupRefSCC(A);
  620   LazyCallGraph::RefSCC &BRC = *CG.lookupRefSCC(B);
  621   LazyCallGraph::RefSCC &CRC = *CG.lookupRefSCC(C);
  622   LazyCallGraph::RefSCC &DRC = *CG.lookupRefSCC(D);
  754   for (LazyCallGraph::RefSCC &RC : CG.postorder_ref_sccs())
  769   LazyCallGraph::RefSCC &ARC = *CG.lookupRefSCC(A1);
  770   LazyCallGraph::RefSCC &BRC = *CG.lookupRefSCC(B1);
  771   LazyCallGraph::RefSCC &CRC = *CG.lookupRefSCC(C1);
  772   LazyCallGraph::RefSCC &DRC = *CG.lookupRefSCC(D1);
  846   for (LazyCallGraph::RefSCC &RC : CG.postorder_ref_sccs())
  861   LazyCallGraph::RefSCC &ARC = *CG.lookupRefSCC(A1);
  862   LazyCallGraph::RefSCC &BRC = *CG.lookupRefSCC(B1);
  863   LazyCallGraph::RefSCC &CRC = *CG.lookupRefSCC(C1);
  864   LazyCallGraph::RefSCC &DRC = *CG.lookupRefSCC(D1);
  953   for (LazyCallGraph::RefSCC &RC : CG.postorder_ref_sccs())
  964   LazyCallGraph::RefSCC &ARC = *CG.lookupRefSCC(A);
  965   LazyCallGraph::RefSCC &BRC = *CG.lookupRefSCC(B);
  966   LazyCallGraph::RefSCC &CRC = *CG.lookupRefSCC(C);
  967   LazyCallGraph::RefSCC &DRC = *CG.lookupRefSCC(D);
 1030   for (LazyCallGraph::RefSCC &RC : CG.postorder_ref_sccs())
 1037   LazyCallGraph::RefSCC &ARC = *CG.lookupRefSCC(A);
 1038   LazyCallGraph::RefSCC &BRC = *CG.lookupRefSCC(B);
 1039   LazyCallGraph::RefSCC &CRC = *CG.lookupRefSCC(C);
 1040   LazyCallGraph::RefSCC &DRC = *CG.lookupRefSCC(D);
 1092   for (LazyCallGraph::RefSCC &RC : CG.postorder_ref_sccs())
 1107   LazyCallGraph::RefSCC &ARC = *CG.lookupRefSCC(A1);
 1108   LazyCallGraph::RefSCC &BRC = *CG.lookupRefSCC(B1);
 1109   LazyCallGraph::RefSCC &CRC = *CG.lookupRefSCC(C1);
 1110   LazyCallGraph::RefSCC &DRC = *CG.lookupRefSCC(D1);
 1172   LazyCallGraph::RefSCC &NewDRC = *NewRCs[0];
 1175   LazyCallGraph::RefSCC &D2RC = *NewRCs[1];
 1238   LazyCallGraph::RefSCC &RC = *I++;
 1332   LazyCallGraph::RefSCC &RC = *I;
 1344   SmallVector<LazyCallGraph::RefSCC *, 1> NewRCs =
 1363   LazyCallGraph::RefSCC &BCRC = *NewRCs[0];
 1364   LazyCallGraph::RefSCC &ARC = *NewRCs[1];
 1410   LazyCallGraph::RefSCC &RC = *I;
 1425   SmallVector<LazyCallGraph::RefSCC *, 1> NewRCs =
 1429   LazyCallGraph::RefSCC &BRC = *NewRCs[0];
 1430   LazyCallGraph::RefSCC &ACRC = *NewRCs[1];
 1477   LazyCallGraph::RefSCC &RC = *I;
 1494   SmallVector<LazyCallGraph::RefSCC *, 1> NewRCs =
 1554   LazyCallGraph::RefSCC &RC = *I++;
 1647   LazyCallGraph::RefSCC &RC = *I++;
 1759   LazyCallGraph::RefSCC &RC = *I++;
 1889   LazyCallGraph::RefSCC &RC = *I++;
 1971   LazyCallGraph::RefSCC &FRC = *I++;
 1972   LazyCallGraph::RefSCC &GRC = *I++;
 1999   LazyCallGraph::RefSCC &GRC = *I++;
 2000   LazyCallGraph::RefSCC &FRC = *I++;
 2049   LazyCallGraph::RefSCC &RC1 = *I++;
 2050   LazyCallGraph::RefSCC &RC2 = *I++;
 2143   LazyCallGraph::RefSCC &DeadRC = *I++;
 2144   LazyCallGraph::RefSCC &RC1 = *I++;
 2145   LazyCallGraph::RefSCC &RC2 = *I++;
usr/include/c++/7.4.0/bits/move.h
   72     constexpr _Tp&&
   83     constexpr _Tp&&
usr/include/c++/7.4.0/bits/range_access.h
   48     begin(_Container& __cont) -> decltype(__cont.begin())
   58     begin(const _Container& __cont) -> decltype(__cont.begin())
   68     end(_Container& __cont) -> decltype(__cont.end())
   78     end(const _Container& __cont) -> decltype(__cont.end())
usr/include/c++/7.4.0/bits/stl_iterator_base_types.h
  123       typedef _Tp        value_type;
usr/include/c++/7.4.0/type_traits
 1633     { typedef _Tp   type; };
 1983     { typedef _Up     type; };
utils/unittest/googletest/include/gtest/gtest-message.h
  116   inline Message& operator <<(const T& val) {
utils/unittest/googletest/include/gtest/gtest-printers.h
  407                     T* p, ::std::ostream* os) {
  416     if (IsTrue(ImplicitlyConvertible<T*, const void*>::value)) {
utils/unittest/googletest/include/gtest/internal/custom/raw-ostream.h
   35 auto printable(const T &V) -> decltype(StreamSwitch<T>::printable(V)) {
   35 auto printable(const T &V) -> decltype(StreamSwitch<T>::printable(V)) {
   37   return StreamSwitch<T>::printable(V);
   54   const T& V;
   55   friend std::ostream &operator<<(std::ostream &S, const RawStreamProxy<T> &V) {
   69   static const RawStreamProxy<T> printable(const T &V) { return {V}; }
   69   static const RawStreamProxy<T> printable(const T &V) { return {V}; }