Lines Matching defs:Div
392 BinaryOperator *Div = dyn_cast<BinaryOperator>(Op0);
393 if (!Div || (Div->getOpcode() != Instruction::UDiv &&
394 Div->getOpcode() != Instruction::SDiv)) {
396 Div = dyn_cast<BinaryOperator>(Op1);
399 if (Div && Div->hasOneUse() &&
400 (Div->getOperand(1) == Y || Div->getOperand(1) == Neg) &&
401 (Div->getOpcode() == Instruction::UDiv ||
402 Div->getOpcode() == Instruction::SDiv)) {
403 Value *X = Div->getOperand(0), *DivOp1 = Div->getOperand(1);
406 if (Div->isExact()) {
412 auto RemOpc = Div->getOpcode() == Instruction::UDiv ? Instruction::URem
666 static bool getFSqrtDivOptPattern(Instruction *Div,
670 if (match(Div, m_FDiv(m_FPOne(), m_Sqrt(m_Value(A)))) ||
671 match(Div, m_FDiv(m_SpecificFP(-1.0), m_Sqrt(m_Value(A))))) {
672 for (User *U : Div->users()) {
674 if (match(I, m_FMul(m_Specific(Div), m_Specific(Div))))
678 CallInst *CI = cast<CallInst>(Div->getOperand(1));