Lines Matching defs:User
122 // Add this IV user to the Processed set before returning false to ensure that
152 // call this a user.
158 Instruction *User = cast<Instruction>(U.getUser());
159 if (!UniqueUsers.insert(User).second)
163 if (isa<PHINode>(User) && Processed.count(User))
168 BasicBlock *UseBB = User->getParent();
170 if (PHINode *PHI = dyn_cast<PHINode>(User)) {
182 // If User is already in Processed, we don't want to recurse into it again,
185 if (LI->getLoopFor(User->getParent()) != L) {
186 if (isa<PHINode>(User) || Processed.count(User) ||
187 !AddUsersImpl(User, SimpleLoopNests)) {
188 DEBUG(dbgs() << "FOUND USER in other loop: " << *User << '\n'
192 } else if (Processed.count(User) || !AddUsersImpl(User, SimpleLoopNests)) {
193 DEBUG(dbgs() << "FOUND USER: " << *User << '\n'
199 // Okay, we found a user that we cannot reduce.
200 IVStrideUse &NewUse = AddUser(User, I);
206 ISE, User, I,
216 TransformForPostIncUse(Denormalize, ISE, User, I,
220 // original one, discard this user.
238 // loops so we don't traverse the domtree for each user.
244 IVStrideUse &IVUsers::AddUser(Instruction *User, Value *Operand) {
245 IVUses.push_back(new IVStrideUse(this, User, Operand));
309 OS << "Printing <null> User";
369 // Remove this user from the list.