Lines Matching defs:InsertPoint
312 bool llvm::isSafeToMoveBefore(Instruction &I, Instruction &InsertPoint,
320 if (&I == &InsertPoint)
324 if (I.getNextNode() == &InsertPoint)
327 if (isa<PHINode>(I) || isa<PHINode>(InsertPoint))
334 if (!isControlFlowEquivalent(I, InsertPoint, DT, *PDT))
337 if (isReachedBefore(&I, &InsertPoint, &DT, PDT))
340 // If InsertPoint is in a BB that comes after I, then we cannot move if
342 if (I.getParent() == InsertPoint.getParent() &&
345 if (UserInst != &InsertPoint && !DT.dominates(&InsertPoint, U)) {
355 if (isReachedBefore(&InsertPoint, &I, &DT, PDT))
358 if (&InsertPoint == OpInst)
365 if (!DT.dominates(OpInst, &InsertPoint))
370 const bool MoveForward = domTreeLevelBefore(&DT, &I, &InsertPoint);
371 Instruction &StartInst = (MoveForward ? I : InsertPoint);
372 Instruction &EndInst = (MoveForward ? InsertPoint : I);
376 InstsToCheck.insert(&InsertPoint);
379 // never return, from I to InsertPoint.
412 bool llvm::isSafeToMoveBefore(BasicBlock &BB, Instruction &InsertPoint,
419 return isSafeToMoveBefore(I, InsertPoint, DT, PDT, DI,