Lines Matching refs:LI
304 BasicBlock::const_iterator LI = L->begin(), LE = L->end(); in diff() local
308 assert(LI != LE && RI != R->end()); in diff()
309 const Instruction *LeftI = &*LI, *RightI = &*RI; in diff()
327 ++LI; in diff()
329 } while (LI != LE); // This is sufficient: we can't get equality of in diff()
334 for (LI = L->begin(), RI = R->begin(); LI != LE; ++LI, ++RI) in diff()
335 unify(&*LI, &*RI); in diff()
339 void runBlockDiff(BasicBlock::const_iterator LI,
389 const PHINode &LI = cast<PHINode>(*L); in diff() local
393 if (LI.getType() != RI.getType()) { in diff()
394 if (!LI.getType()->isPointerTy() || !RI.getType()->isPointerTy()) { in diff()
400 if (LI.getNumIncomingValues() != RI.getNumIncomingValues()) { in diff()
406 for (unsigned I = 0; I < LI.getNumIncomingValues(); ++I) { in diff()
408 tryUnify(LI.getIncomingBlock(I), RI.getIncomingBlock(I)); in diff()
410 if (!equivalentAsOperands(LI.getIncomingValue(I), in diff()
422 const InvokeInst &LI = cast<InvokeInst>(*L); in diff() local
424 if (diffCallSites(LI, RI, Complain)) in diff()
428 tryUnify(LI.getNormalDest(), RI.getNormalDest()); in diff()
429 tryUnify(LI.getUnwindDest(), RI.getUnwindDest()); in diff()
434 const CallBrInst &LI = cast<CallBrInst>(*L); in diff() local
436 if (LI.getNumIndirectDests() != RI.getNumIndirectDests()) { in diff()
444 for (unsigned I = 0; I < LI.getNumIndirectDests(); I++) in diff()
445 tryUnify(LI.getIndirectDest(I), RI.getIndirectDest(I)); in diff()
447 if (diffCallSites(LI, RI, Complain)) in diff()
451 tryUnify(LI.getDefaultDest(), RI.getDefaultDest()); in diff()
455 const BranchInst *LI = cast<BranchInst>(L); in diff() local
457 if (LI->isConditional() != RI->isConditional()) { in diff()
462 if (LI->isConditional()) { in diff()
463 if (!equivalentAsOperands(LI->getCondition(), RI->getCondition(), AC)) { in diff()
467 if (TryUnify) tryUnify(LI->getSuccessor(1), RI->getSuccessor(1)); in diff()
469 if (TryUnify) tryUnify(LI->getSuccessor(0), RI->getSuccessor(0)); in diff()
473 const IndirectBrInst *LI = cast<IndirectBrInst>(L); in diff() local
475 if (LI->getNumDestinations() != RI->getNumDestinations()) { in diff()
480 if (!equivalentAsOperands(LI->getAddress(), RI->getAddress(), AC)) { in diff()
486 for (unsigned i = 0; i < LI->getNumDestinations(); i++) { in diff()
487 tryUnify(LI->getDestination(i), RI->getDestination(i)); in diff()
493 const SwitchInst *LI = cast<SwitchInst>(L); in diff() local
495 if (!equivalentAsOperands(LI->getCondition(), RI->getCondition(), AC)) { in diff()
499 if (TryUnify) tryUnify(LI->getDefaultDest(), RI->getDefaultDest()); in diff()
504 for (auto Case : LI->cases()) in diff()
774 for (Function::const_arg_iterator LI = L->arg_begin(), LE = L->arg_end(), in diff() local
776 LI != LE && RI != RE; ++LI, ++RI) in diff()
777 Values[&*LI] = &*RI; in diff()
830 for (BasicBlock::const_iterator LI = LStart; LI != LE; ++LI, ++Index) { in runBlockDiff() local
831 if (matchForBlockDiff(&*LI, &*RI)) { in runBlockDiff()
835 TentativeValues.insert(std::make_pair(&*LI, &*RI)); in runBlockDiff()
855 BasicBlock::const_iterator LI = LStart, RI = RStart; in runBlockDiff() local
867 unify(&*LI, &*RI); in runBlockDiff()
869 ++LI; in runBlockDiff()
876 assert(LI != LE && RI != RE); in runBlockDiff()
878 const Instruction *L = &*LI, *R = &*RI; in runBlockDiff()
882 ++LI; ++RI; in runBlockDiff()
886 assert(LI != LE); in runBlockDiff()
887 Diff.addLeft(&*LI); in runBlockDiff()
888 ++LI; in runBlockDiff()
901 while (LI != LE) { in runBlockDiff()
903 unify(&*LI, &*RI); in runBlockDiff()
904 ++LI; in runBlockDiff()