Home | History | Annotate | Download | only in InstCombine

Lines Matching refs:ICI

510 Instruction *InstCombiner::transformZExtICmp(ICmpInst *ICI, Instruction &CI,
515 if (ConstantInt *Op1C = dyn_cast<ConstantInt>(ICI->getOperand(1))) {
520 if ((ICI->getPredicate() == ICmpInst::ICMP_SLT && Op1CV == 0) ||
521 (ICI->getPredicate() == ICmpInst::ICMP_SGT &&Op1CV.isAllOnesValue())) {
522 if (!DoXform) return ICI;
524 Value *In = ICI->getOperand(0);
531 if (ICI->getPredicate() == ICmpInst::ICMP_SGT) {
549 ICI->isEquality()) {
553 ComputeMaskedBits(ICI->getOperand(0), KnownZero, KnownOne);
557 if (!DoXform) return ICI;
559 bool isNE = ICI->getPredicate() == ICmpInst::ICMP_NE;
570 Value *In = ICI->getOperand(0);
593 if (ICI->isEquality() && CI.getType() == ICI->getOperand(0)->getType()) {
596 Value *LHS = ICI->getOperand(0);
597 Value *RHS = ICI->getOperand(1);
608 if (!DoXform) return ICI;
621 if (ICI->getPredicate() == ICmpInst::ICMP_EQ)
623 Result->takeName(ICI);
833 if (ICmpInst *ICI = dyn_cast<ICmpInst>(Src))
834 return transformZExtICmp(ICI, CI);
891 Instruction *InstCombiner::transformSExtICmp(ICmpInst *ICI, Instruction &CI) {
892 Value *Op0 = ICI->getOperand(0), *Op1 = ICI->getOperand(1);
893 ICmpInst::Predicate Pred = ICI->getPredicate();
915 if (ICI->hasOneUse() &&
916 ICI->isEquality() && (Op1C->isZero() || Op1C->getValue().isPowerOf2())){
923 Value *In = ICI->getOperand(0);
1105 if (ICmpInst *ICI = dyn_cast<ICmpInst>(Src))
1106 return transformSExtICmp(ICI, CI);