Home | History | Annotate | Download | only in InstCombine

Lines Matching refs:BO0

3788   BinaryOperator *BO0 = dyn_cast<BinaryOperator>(Op0);
3790 if (BO0 || BO1) {
3793 if (BO0 && isa<OverflowingBinaryOperator>(BO0))
3795 (CmpInst::isUnsigned(Pred) && BO0->hasNoUnsignedWrap()) ||
3796 (CmpInst::isSigned(Pred) && BO0->hasNoSignedWrap());
3805 if (BO0 && BO0->getOpcode() == Instruction::Add) {
3806 A = BO0->getOperand(0);
3807 B = BO0->getOperand(1);
3834 BO0->hasOneUse() && BO1->hasOneUse()) {
3906 (BO0->hasOneUse() || BO1->hasOneUse()) && !I.isUnsigned())
3933 if (BO0 && BO0->getOpcode() == Instruction::Sub) {
3934 A = BO0->getOperand(0);
3935 B = BO0->getOperand(1);
3953 BO0->hasOneUse() && BO1->hasOneUse())
3959 BO0->hasOneUse() && BO1->hasOneUse())
3965 if (match(BO0, m_Neg(m_Value(X))))
3974 if (BO0 && BO0->getOpcode() == Instruction::SRem &&
3975 Op1 == BO0->getOperand(1))
3976 SRem = BO0;
3984 switch (SRem == BO0 ? ICmpInst::getSwappedPredicate(Pred) : Pred) {
4001 if (BO0 && BO1 && BO0->getOpcode() == BO1->getOpcode() &&
4002 BO0->hasOneUse() && BO1->hasOneUse() &&
4003 BO0->getOperand(1) == BO1->getOperand(1)) {
4004 switch (BO0->getOpcode()) {
4010 return new ICmpInst(I.getPredicate(), BO0->getOperand(0),
4013 if (ConstantInt *CI = dyn_cast<ConstantInt>(BO0->getOperand(1))) {
4018 return new ICmpInst(Pred, BO0->getOperand(0),
4022 if (BO0->getOpcode() == Instruction::Xor && CI->isMaxValue(true)) {
4027 return new ICmpInst(Pred, BO0->getOperand(0),
4036 if (ConstantInt *CI = dyn_cast<ConstantInt>(BO0->getOperand(1))) {
4045 Value *And1 = Builder->CreateAnd(BO0->getOperand(0), Mask);
4058 if (!BO0->isExact() || !BO1->isExact())
4060 return new ICmpInst(I.getPredicate(), BO0->getOperand(0),
4063 bool NUW = BO0->hasNoUnsignedWrap() && BO1->hasNoUnsignedWrap();
4064 bool NSW = BO0->hasNoSignedWrap() && BO1->hasNoSignedWrap();
4069 return new ICmpInst(I.getPredicate(), BO0->getOperand(0),
4075 if (BO0) {
4081 if (match(BO0, BitwiseAnd) && I.getPredicate() == ICmpInst::ICMP_ULT) {
4082 auto *Zero = Constant::getNullValue(BO0->getType());