Lines Matching defs:ArgumentGraphNode
495 struct ArgumentGraphNode {
497 SmallVector<ArgumentGraphNode *, 4> Uses;
501 // We store pointers to ArgumentGraphNode objects, so it's important that
503 using ArgumentMapTy = std::map<Argument *, ArgumentGraphNode>;
513 ArgumentGraphNode SyntheticRoot;
518 using iterator = SmallVectorImpl<ArgumentGraphNode *>::iterator;
522 ArgumentGraphNode *getEntryNode() { return &SyntheticRoot; }
524 ArgumentGraphNode *operator[](Argument *A) {
525 ArgumentGraphNode &Node = ArgumentMap[A];
786 template <> struct GraphTraits<ArgumentGraphNode *> {
787 using NodeRef = ArgumentGraphNode *;
788 using ChildIteratorType = SmallVectorImpl<ArgumentGraphNode *>::iterator;
796 struct GraphTraits<ArgumentGraph *> : public GraphTraits<ArgumentGraphNode *> {
1238 ArgumentGraphNode *Node = AG[&A];
1269 // show up as ArgumentGraphNode objects with an empty Uses list, and for
1275 const std::vector<ArgumentGraphNode *> &ArgumentSCC = *I;
1300 for (ArgumentGraphNode *Node : ArgumentSCC) {
1312 for (ArgumentGraphNode *I : ArgumentSCC) {
1316 for (ArgumentGraphNode *N : ArgumentSCC) {
1317 for (ArgumentGraphNode *Use : N->Uses) {
1330 for (ArgumentGraphNode *N : ArgumentSCC) {
1360 for (ArgumentGraphNode *N : ArgumentSCC) {
1369 for (ArgumentGraphNode *N : ArgumentSCC) {