Lines Matching defs:RI
305 BasicBlock::const_iterator RI = R->begin();
308 assert(LI != LE && RI != R->end());
309 const Instruction *LeftI = &*LI, *RightI = &*RI;
328 ++RI;
334 for (LI = L->begin(), RI = R->begin(); LI != LE; ++LI, ++RI)
335 unify(&*LI, &*RI);
340 BasicBlock::const_iterator RI);
390 const PHINode &RI = cast<PHINode>(*R);
393 if (LI.getType() != RI.getType()) {
394 if (!LI.getType()->isPointerTy() || !RI.getType()->isPointerTy()) {
400 if (LI.getNumIncomingValues() != RI.getNumIncomingValues()) {
408 tryUnify(LI.getIncomingBlock(I), RI.getIncomingBlock(I));
411 RI.getIncomingValue(I), AC)) {
423 const InvokeInst &RI = cast<InvokeInst>(*R);
424 if (diffCallSites(LI, RI, Complain))
428 tryUnify(LI.getNormalDest(), RI.getNormalDest());
429 tryUnify(LI.getUnwindDest(), RI.getUnwindDest());
435 const CallBrInst &RI = cast<CallBrInst>(*R);
436 if (LI.getNumIndirectDests() != RI.getNumIndirectDests()) {
445 tryUnify(LI.getIndirectDest(I), RI.getIndirectDest(I));
447 if (diffCallSites(LI, RI, Complain))
451 tryUnify(LI.getDefaultDest(), RI.getDefaultDest());
456 const BranchInst *RI = cast<BranchInst>(R);
457 if (LI->isConditional() != RI->isConditional()) {
463 if (!equivalentAsOperands(LI->getCondition(), RI->getCondition(), AC)) {
467 if (TryUnify) tryUnify(LI->getSuccessor(1), RI->getSuccessor(1));
469 if (TryUnify) tryUnify(LI->getSuccessor(0), RI->getSuccessor(0));
474 const IndirectBrInst *RI = cast<IndirectBrInst>(R);
475 if (LI->getNumDestinations() != RI->getNumDestinations()) {
480 if (!equivalentAsOperands(LI->getAddress(), RI->getAddress(), AC)) {
487 tryUnify(LI->getDestination(i), RI->getDestination(i));
494 const SwitchInst *RI = cast<SwitchInst>(R);
495 if (!equivalentAsOperands(LI->getCondition(), RI->getCondition(), AC)) {
499 if (TryUnify) tryUnify(LI->getDefaultDest(), RI->getDefaultDest());
507 for (auto Case : RI->cases()) {
775 RI = R->arg_begin(), RE = R->arg_end();
776 LI != LE && RI != RE; ++LI, ++RI)
777 Values[&*LI] = &*RI;
823 for (BasicBlock::const_iterator RI = RStart; RI != RE; ++RI) {
831 if (matchForBlockDiff(&*LI, &*RI)) {
835 TentativeValues.insert(std::make_pair(&*LI, &*RI));
855 BasicBlock::const_iterator LI = LStart, RI = RStart;
867 unify(&*LI, &*RI);
870 ++RI;
876 assert(LI != LE && RI != RE);
878 const Instruction *L = &*LI, *R = &*RI;
882 ++LI; ++RI;
892 assert(RI != RE);
893 Diff.addRight(&*RI);
894 ++RI;
902 assert(RI != RE);
903 unify(&*LI, &*RI);
905 ++RI;