Searched defs:GraphTraits (Results 1 – 9 of 9) sorted by relevance
88 template <> struct GraphTraits<MachineBlockFrequencyInfo *> { struct89 using NodeRef = const MachineBasicBlock *;90 using ChildIteratorType = MachineBasicBlock::const_succ_iterator;91 using nodes_iterator = pointer_iterator<MachineFunction::const_iterator>;93 static NodeRef getEntryNode(const MachineBlockFrequencyInfo *G) { in getEntryNode()97 static ChildIteratorType child_begin(const NodeRef N) { in child_begin()101 static ChildIteratorType child_end(const NodeRef N) { return N->succ_end(); } in child_end()103 static nodes_iterator nodes_begin(const MachineBlockFrequencyInfo *G) { in nodes_begin()107 static nodes_iterator nodes_end(const MachineBlockFrequencyInfo *G) { in nodes_end()
3648 template<> struct GraphTraits< struct
99 struct GraphTraits<BlockFrequencyInfo *> { struct100 using NodeRef = const BasicBlock *;101 using ChildIteratorType = succ_const_iterator;102 using nodes_iterator = pointer_iterator<Function::const_iterator>;104 static NodeRef getEntryNode(const BlockFrequencyInfo *G) { in getEntryNode()108 static ChildIteratorType child_begin(const NodeRef N) { in child_begin()112 static ChildIteratorType child_end(const NodeRef N) { return succ_end(N); } in child_end()114 static nodes_iterator nodes_begin(const BlockFrequencyInfo *G) { in nodes_begin()118 static nodes_iterator nodes_end(const BlockFrequencyInfo *G) { in nodes_end()
664 template <> struct GraphTraits<IrreducibleGraph> { struct665 using GraphT = bfi_detail::IrreducibleGraph;666 using NodeRef = const GraphT::IrrNode *;667 using ChildIteratorType = GraphT::IrrNode::iterator;669 static NodeRef getEntryNode(const GraphT &G) { return G.StartIrr; } in getEntryNode()670 static ChildIteratorType child_begin(NodeRef N) { return N->succ_begin(); } in child_begin()671 static ChildIteratorType child_end(NodeRef N) { return N->succ_end(); } in child_end()
471 struct GraphTraits<ModuleManager> { struct472 using NodeRef = ModuleFile *;473 using ChildIteratorType = llvm::SetVector<ModuleFile *>::const_iterator;474 using nodes_iterator = pointer_iterator<ModuleManager::ModuleConstIterator>;476 static ChildIteratorType child_begin(NodeRef Node) { in child_begin()480 static ChildIteratorType child_end(NodeRef Node) { in child_end()484 static nodes_iterator nodes_begin(const ModuleManager &Manager) { in nodes_begin()488 static nodes_iterator nodes_end(const ModuleManager &Manager) { in nodes_end()
36 struct GraphTraits { struct102 // Provide a partial specialization of GraphTraits so that the inverse of an argument
416 template <> struct GraphTraits<ArgumentGraphNode *> { struct417 using NodeRef = ArgumentGraphNode *;418 using ChildIteratorType = SmallVectorImpl<ArgumentGraphNode *>::iterator;420 static NodeRef getEntryNode(NodeRef A) { return A; } in getEntryNode()421 static ChildIteratorType child_begin(NodeRef N) { return N->Uses.begin(); } in child_begin()422 static ChildIteratorType child_end(NodeRef N) { return N->Uses.end(); } in child_end()426 struct GraphTraits<ArgumentGraph *> : public GraphTraits<ArgumentGraphNode *> { struct427 static NodeRef getEntryNode(ArgumentGraph *AG) { return AG->getEntryNode(); } in getEntryNode()429 static ChildIteratorType nodes_begin(ArgumentGraph *AG) { in nodes_begin()433 static ChildIteratorType nodes_end(ArgumentGraph *AG) { return AG->end(); } in nodes_end()
1651 template <> struct GraphTraits<PGOUseFunc *> { struct1652 using NodeRef = const BasicBlock *;1653 using ChildIteratorType = succ_const_iterator;1654 using nodes_iterator = pointer_iterator<Function::const_iterator>;1656 static NodeRef getEntryNode(const PGOUseFunc *G) { in getEntryNode()1660 static ChildIteratorType child_begin(const NodeRef N) { in child_begin()1664 static ChildIteratorType child_end(const NodeRef N) { return succ_end(N); } in child_end()1666 static nodes_iterator nodes_begin(const PGOUseFunc *G) { in nodes_begin()1670 static nodes_iterator nodes_end(const PGOUseFunc *G) { in nodes_end()
1243 template <> struct GraphTraits<BoUpSLP *> { struct1244 using TreeEntry = BoUpSLP::TreeEntry;1247 using NodeRef = TreeEntry *;1251 struct ChildIteratorType1263 static NodeRef getEntryNode(BoUpSLP &R) { return &R.VectorizableTree[0]; } in getEntryNode()1265 static ChildIteratorType child_begin(NodeRef N) { in child_begin()1269 static ChildIteratorType child_end(NodeRef N) { in child_end()1275 using nodes_iterator = pointer_iterator<std::vector<TreeEntry>::iterator>;1277 static nodes_iterator nodes_begin(BoUpSLP *R) { in nodes_begin()1281 static nodes_iterator nodes_end(BoUpSLP *R) { in nodes_end()[all …]