Lines Matching refs:Uses
572 // Process the worklist, deleting the nodes and adding their uses to the
590 // Now that we removed this operand, see if there are no uses of it left.
614 // Finally, remove uses due to operands of this node, remove from the
2189 // answer. Now proceed to the generic code that uses
2919 // i8, which is easy to fall into in generic code that uses
5225 // Delete any nodes that are still dead after adding the uses for the
5495 assert(From != To.getNode() && "Cannot replace uses of with self");
5497 // Iterate over all the existing uses of From. New uses will be added
5499 // This specifically avoids visiting uses of From that arise while the
5500 // replacement is happening, because any such uses would be the result
5513 // happens the uses are usually next to each other in the list.
5515 // the uses of this user that we can find this way.
5561 // happens the uses are usually next to each other in the list.
5563 // the uses of this user that we can find this way.
5600 // happens the uses are usually next to each other in the list.
5602 // the uses of this user that we can find this way.
5620 /// ReplaceAllUsesOfValueWith - Replace any uses of From with To, leaving
5621 /// uses of other values produced by From.getNode() alone. The Deleted
5643 // happens the uses are usually next to each other in the list.
5645 // the uses of this user that we can find this way.
5649 // Skip uses of different values from the same node.
5666 // We are iterating over all uses of the From node, so if a use
5696 /// ReplaceAllUsesOfValuesWith - Replace any uses of From with To, leaving
5697 /// uses of other values produced by From.getNode() alone. The same value
5707 // Read up all the uses and make records of them. This helps
5708 // processing new uses that are introduced during the
5710 SmallVector<UseMemo, 4> Uses;
5719 Uses.push_back(Memo);
5724 // Sort the uses, so that all the uses from a given User are together.
5725 std::sort(Uses.begin(), Uses.end());
5727 for (unsigned UseIndex = 0, UseIndexEnd = Uses.size();
5729 // We know that this user uses some value of From. If it is the right
5731 SDNode *User = Uses[UseIndex].User;
5736 // The Uses array is sorted, so all the uses for a given User
5739 // the uses of this user that we can find this way.
5741 unsigned i = Uses[UseIndex].Index;
5742 SDUse &Use = *Uses[UseIndex].Use;
5746 } while (UseIndex != UseIndexEnd && Uses[UseIndex].User == User);
5778 // A node with no uses, add it to the result array immediately.
5796 // N is in sorted position, so all its uses have one less operand
5957 /// hasNUsesOfValue - Return true if there are exactly NUSES uses of the
5958 /// indicated value. This method ignores uses of other values defined by this
5963 // TODO: Only iterate over uses of a given value of the node
5972 // Found exactly the right number of uses?
5978 /// value. This method ignores uses of other values defined by this operation.