Home | History | Annotate | Download | only in InstCombine

Lines Matching defs:BO

190     BinaryOperator *BO = BinaryOperator::CreateNeg(Op0, I.getName());
192 BO->setHasNoSignedWrap();
193 return BO;
207 BinaryOperator *BO = BinaryOperator::CreateMul(NewOp, Shl);
209 BO->setHasNoUnsignedWrap();
212 BO->setHasNoSignedWrap();
213 return BO;
295 BinaryOperator *BO = BinaryOperator::CreateMul(Op0v, Op1v);
299 BO->setHasNoSignedWrap();
300 return BO;
308 BinaryOperator *BO = dyn_cast<BinaryOperator>(Op0);
309 if (!BO ||
310 (BO->getOpcode() != Instruction::UDiv &&
311 BO->getOpcode() != Instruction::SDiv)) {
313 BO = dyn_cast<BinaryOperator>(Op1);
316 if (BO && BO->hasOneUse() &&
317 (BO->getOperand(1) == Op1C || BO->getOperand(1) == Neg) &&
318 (BO->getOpcode() == Instruction::UDiv ||
319 BO->getOpcode() == Instruction::SDiv)) {
320 Value *Op0BO = BO->getOperand(0), *Op1BO = BO->getOperand(1);
323 if (PossiblyExactOperator *SDiv = dyn_cast<PossiblyExactOperator>(BO))
331 if (BO->getOpcode() == Instruction::UDiv)
335 Rem->takeName(BO);
351 BinaryOperator *BO = nullptr;
354 BO = BinaryOperator::CreateShl(Op1, Y);
357 BO = BinaryOperator::CreateShl(Op0, Y);
360 if (BO) {
362 BO->setHasNoUnsignedWrap();
364 BO->setHasNoSignedWrap();
365 return BO;
839 BinaryOperator *BO = BinaryOperator::Create(
841 BO->setIsExact(I.isExact());
842 return BO;
847 BinaryOperator *BO = BinaryOperator::Create(
849 BO->setHasNoUnsignedWrap(
852 BO->setHasNoSignedWrap(
854 return BO;
867 BinaryOperator *BO = BinaryOperator::Create(
869 BO->setIsExact(I.isExact());
870 return BO;
875 BinaryOperator *BO = BinaryOperator::Create(
877 BO->setHasNoUnsignedWrap(
880 BO->setHasNoSignedWrap(
882 return BO;
1079 BinaryOperator *BO = BinaryOperator::CreateUDiv(
1082 BO->setIsExact();
1083 return BO;
1180 auto *BO = BinaryOperator::CreateSDiv(X, ConstantExpr::getNeg(RHS));
1181 BO->setIsExact(I.isExact());
1182 return BO;
1193 auto *BO = BinaryOperator::CreateUDiv(Op0, Op1, I.getName());
1194 BO->setIsExact(I.isExact());
1195 return BO;
1203 auto *BO = BinaryOperator::CreateUDiv(Op0, Op1, I.getName());
1204 BO->setIsExact(I.isExact());
1205 return BO;