Lines Matching defs:BO

554       if (BinaryOperator *BO = isReassociableOp(Op, Opcode)) {
557 Worklist.push_back(std::make_pair(BO, Weight));
593 if (BinaryOperator *BO = isReassociableOp(Op, Opcode)) {
595 Worklist.push_back(std::make_pair(BO, It->second));
622 BinaryOperator *BO = dyn_cast<BinaryOperator>(Op);
623 if (Opcode == Instruction::Mul && BO && BinaryOperator::isNeg(BO)) {
625 BO = LowerNegateToMultiply(BO);
626 DEBUG(dbgs() << *BO << 'n');
627 Worklist.push_back(std::make_pair(BO, Weight));
738 BinaryOperator *BO = isReassociableOp(OldLHS, Opcode);
739 if (BO && !NotRewritable.count(BO))
740 NodesToRewrite.push_back(BO);
744 BinaryOperator *BO = isReassociableOp(OldRHS, Opcode);
745 if (BO && !NotRewritable.count(BO))
746 NodesToRewrite.push_back(BO);
769 BinaryOperator *BO = isReassociableOp(Op->getOperand(1), Opcode);
770 if (BO && !NotRewritable.count(BO))
771 NodesToRewrite.push_back(BO);
783 BinaryOperator *BO = isReassociableOp(Op->getOperand(0), Opcode);
784 if (BO && !NotRewritable.count(BO)) {
785 Op = BO;
998 BinaryOperator *BO = isReassociableOp(V, Instruction::Mul);
999 if (!BO) return nullptr;
1002 MadeChange |= LinearizeExprTree(BO, Tree);
1032 RewriteExprTree(BO, Factors);
1036 BasicBlock::iterator InsertPt = BO; ++InsertPt;
1041 RedoInsts.insert(BO);
1044 RewriteExprTree(BO, Factors);
1045 V = BO;
1061 BinaryOperator *BO = isReassociableOp(V, Instruction::Mul);
1062 if (!BO) {
1068 FindSingleUseMultiplyFactors(BO->getOperand(1), Factors, Ops);
1069 FindSingleUseMultiplyFactors(BO->getOperand(0), Factors, Ops);
1884 BinaryOperator *BO = cast<BinaryOperator>(I);
1888 unsigned Opcode = BO->getOpcode();
1889 if (BO->hasOneUse() && BO->user_back()->getOpcode() == Opcode)
1894 if (BO->hasOneUse() && BO->getOpcode() == Instruction::Add &&
1895 cast<Instruction>(BO->user_back())->getOpcode() == Instruction::Sub)
1898 ReassociateExpression(BO);