Lines Matching refs:Root
659 // Make sure the root of the DAG is up-to-date.
915 // a reference to the root node, preventing it from being deleted,
916 // and tracking any changes of the root.
926 // nodes by starting at the end of the list (the root of the
1839 SDNode *Root, SmallPtrSetImpl<SDNode*> &Visited,
1864 if (Use == ImmedUse || Use == Root)
1866 assert(N != Root);
1871 if (findNonImmUse(N, Def, ImmedUse, Root, Visited, IgnoreChains))
1878 /// operand node N of U during instruction selection that starts at Root.
1880 SDNode *Root) const {
1886 /// U can be folded during instruction selection that starts at Root.
1887 bool SelectionDAGISel::IsLegalToFold(SDValue N, SDNode *U, SDNode *Root,
1892 // If Root use can somehow reach N through a path that that doesn't contain
1894 // diagram, Root can reach N through X. If N is folded into into Root, then
1904 // [Root*] //
1908 // If Root produces glue, then it gets (even more) interesting. Since it
1919 // [Root*] | //
1929 // If GU (glue use) indirectly reaches N (the load), and Root folds N
1936 EVT VT = Root->getValueType(Root->getNumValues()-1);
1938 SDNode *GU = findGlueUse(Root);
1941 Root = GU;
1942 VT = Root->getValueType(Root->getNumValues()-1);
1953 return !findNonImmUse(Root, N.getNode(), U, Root, Visited, IgnoreChains);
2044 // Don't replace the results of the root node if we're doing a
2119 if (User->getOpcode() == ISD::HANDLENODE) // Root of the graph.
2648 // root is recorded.
2667 DEBUG(dbgs() << "ISEL: Starting pattern match on root node: ";
2967 // Verify that all intermediate nodes between the root and this one have
3341 // If the root node defines glue, add it to the glue nodes to update list.