Searched refs:Div (Results 1 - 24 of 24) sorted by relevance

/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/
H A DIntegerDivision.h34 /// Generate code to divide two integers, replacing Div with the generated
40 /// Replace Div with generated code.
41 bool expandDivision(BinaryOperator* Div);
57 /// Generate code to divide two integers, replacing Div with the generated
58 /// code. Uses ExpandDivision with a 32bit Div which makes it useful for
62 bool expandDivisionUpTo32Bits(BinaryOperator *Div);
64 /// Generate code to divide two integers, replacing Div with the generated
65 /// code. Uses ExpandDivision with a 64bit Div.
68 bool expandDivisionUpTo64Bits(BinaryOperator *Div);
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DIntegerDivision.cpp382 assert(!Rem->getType()->isVectorTy() && "Div over vectors not supported");
385 "Div of bitwidth other than 32 or 64 not supported");
426 /// Generate code to divide two integers, replacing Div with the generated
432 /// Replace Div with generated code.
433 bool llvm::expandDivision(BinaryOperator *Div) { argument
434 assert((Div->getOpcode() == Instruction::SDiv ||
435 Div->getOpcode() == Instruction::UDiv) &&
438 IRBuilder<> Builder(Div);
440 assert(!Div->getType()->isVectorTy() && "Div ove
583 expandDivisionUpTo32Bits(BinaryOperator *Div) argument
631 expandDivisionUpTo64Bits(BinaryOperator *Div) argument
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DDivRemPairs.cpp57 Instruction *Div; local
62 m_Instruction(Div)),
67 M.Key.SignedOp = Div->getOpcode() == Instruction::SDiv;
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/ARM/
H A DMVETailPredication.cpp384 if (auto *Div = dyn_cast<SCEVUDivExpr>(TC->getOperand(1)))
385 if (auto *Add = dyn_cast<SCEVAddExpr>(Div->getLHS()))
387 if (auto *Div = VisitMul(Mul))
388 if (auto *Res = VisitDiv(Div))
H A DARMISelLowering.cpp16239 "Invalid opcode for Div/Rem lowering");
16257 SDValue Div = DAG.getNode(DivOpcode, dl, VT, Dividend, Divisor); local
16258 SDValue Mul = DAG.getNode(ISD::MUL, dl, VT, Div, Divisor);
16261 SDValue Values[2] = {Div, Rem};
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineMulDivRem.cpp302 BinaryOperator *Div = dyn_cast<BinaryOperator>(Op0); local
303 if (!Div || (Div->getOpcode() != Instruction::UDiv &&
304 Div->getOpcode() != Instruction::SDiv)) {
306 Div = dyn_cast<BinaryOperator>(Op1);
309 if (Div && Div->hasOneUse() &&
310 (Div->getOperand(1) == Y || Div->getOperand(1) == Neg) &&
311 (Div
[all...]
H A DInstCombineCompares.cpp2325 BinaryOperator *Div,
2334 if (!match(Div->getOperand(1), m_APInt(C2)))
2345 bool DivIsSigned = Div->getOpcode() == Instruction::SDiv;
2372 APInt RangeSize = Div->isExact() ? APInt(C2->getBitWidth(), 1) : *C2;
2413 if (Div->isExact())
2440 Value *X = Div->getOperand(0);
2449 ConstantInt::get(Div->getType(), LoBound));
2453 ConstantInt::get(Div->getType(), HiBound));
2462 ConstantInt::get(Div->getType(), LoBound));
2466 ConstantInt::get(Div
2324 foldICmpDivConstant(ICmpInst &Cmp, BinaryOperator *Div, const APInt &C) argument
[all...]
H A DInstCombineInternal.h952 Instruction *foldICmpDivConstant(ICmpInst &Cmp, BinaryOperator *Div,
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/MC/
H A DMCExpr.h428 Div, ///< Signed division. enumerator in enum:llvm::MCBinaryExpr::Opcode
479 return create(Div, LHS, RHS, Ctx);
/freebsd-11-stable/contrib/llvm-project/clang/include/clang/AST/
H A DStmtVisitor.h127 BINOP_FALLBACK(Mul) BINOP_FALLBACK(Div) BINOP_FALLBACK(Rem)
H A DRecursiveASTVisitor.h63 OPERATOR(PtrMemD) OPERATOR(PtrMemI) OPERATOR(Mul) OPERATOR(Div) \
71 OPERATOR(Mul) OPERATOR(Div) OPERATOR(Rem) OPERATOR(Add) OPERATOR(Sub) \
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUCodeGenPrepare.cpp719 Value *Div = Builder.CreateAdd(IQ, JQ); local
721 Value *Res = Div;
724 Value *Rem = Builder.CreateMul(Div, Den);
857 // Div = (Tmp1 == 0 ? Quotient : Quotient_A_One)
858 Value *Div = Builder.CreateSelect(Tmp1_0_CC, Quotient, Quotient_A_One); local
860 // Div = (Remainder_GE_Zero == 0 ? Quotient_S_One : Div)
861 Res = Builder.CreateSelect(Num_GE_Num_S_Rem_CC, Div, Quotient_S_One);
H A DAMDGPUISelLowering.cpp1614 SDValue Div = DAG.getNode(ISD::ADD, DL, VT, iq, jq); local
1617 SDValue Rem = DAG.getNode(ISD::MUL, DL, VT, Div, RHS);
1624 Div = DAG.getNode(ISD::SIGN_EXTEND_INREG, DL, VT, Div, InRegSize);
1628 Div = DAG.getNode(ISD::AND, DL, VT, Div, TruncMask);
1632 return DAG.getMergeValues({ Div, Rem }, DL);
1794 SDValue Div = DAG.getSelectCC(DL, C3, Zero, Sel1, Mulhi3, ISD::SETNE); local
1799 Results.push_back(Div);
1933 // Div
1934 SDValue Div = DAG.getSelectCC(DL, Tmp1, DAG.getConstant(0, DL, VT), local
2007 SDValue Div = DAG.getNode(ISD::UDIVREM, DL, DAG.getVTList(VT, VT), LHS, RHS); local
2032 SDValue Div = DAG.getNode(ISD::FDIV, SL, VT, X, Y); local
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Analysis/
H A DLoopCacheAnalysis.cpp352 const SCEV *Div = SE.getUDivExactExpr(AccessFn, ElemSize);
353 Subscripts.push_back(Div);
H A DScalarEvolution.cpp1865 if (auto *Div = dyn_cast<SCEVUDivExpr>(Op))
1866 return getUDivExpr(getZeroExtendExpr(Div->getLHS(), Ty, Depth + 1),
1867 getZeroExtendExpr(Div->getRHS(), Ty, Depth + 1));
3260 const SCEV *Div = getUDivExpr(Op, RHSC);
3261 if (!isa<SCEVUDivExpr>(Div) && getMulExpr(Div, RHSC) == Op) {
3264 Operands[i] = Div;
8357 if (const SCEVUDivExpr *Div = dyn_cast<SCEVUDivExpr>(V)) {
8358 const SCEV *LHS = getSCEVAtScope(Div->getLHS(), L);
8359 const SCEV *RHS = getSCEVAtScope(Div
[all...]
H A DScalarEvolutionExpander.cpp269 const SCEV *Div = SE.getConstant(CI); local
270 S = Div;
/freebsd-11-stable/contrib/llvm-project/llvm/lib/MC/
H A DMCExpr.cpp116 case MCBinaryExpr::Div: OS << '/'; break;
836 case MCBinaryExpr::Div:
846 if (ABE->getOpcode() == MCBinaryExpr::Div)
/freebsd-11-stable/contrib/llvm-project/llvm/lib/IR/
H A DConstantFold.cpp1258 assert(!CI2->isZero() && "Div by zero handled above");
1261 assert(!CI2->isZero() && "Div by zero handled above");
1266 assert(!CI2->isZero() && "Div by zero handled above");
1269 assert(!CI2->isZero() && "Div by zero handled above");
2452 Constant *Div = ConstantExpr::getSDiv(CurrIdx, Factor); local
2456 Div->getType()->getScalarSizeInBits());
2461 Type *ExtendedTy = Type::getIntNTy(Div->getContext(), CommonExtendedWidth);
2471 if (!Div->getType()->isIntOrIntVectorTy(CommonExtendedWidth))
2472 Div = ConstantExpr::getSExt(Div, ExtendedT
[all...]
H A DAsmWriter.cpp1282 } else if (const PossiblyExactOperator *Div =
1284 if (Div->isExact())
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/AMDGPU/AsmParser/
H A DAMDGPUAsmParser.cpp6047 static bool ConvertOmodDiv(int64_t &Div) {
6048 if (Div == 1) {
6049 Div = 0;
6053 if (Div == 2) {
6054 Div = 3;
/freebsd-11-stable/contrib/llvm-project/clang/lib/CodeGen/
H A DTargetInfo.cpp6493 const unsigned Div = std::min<unsigned>(MaxSize, Alignment);
6494 llvm::Type *IntType = llvm::Type::getIntNTy(LLVMContext, Div);
6495 const uint64_t NumElements = (Size + Div - 1) / Div;
H A DCGExprScalar.cpp55 /// and signed BO_{Div,Rem}. For these opcodes, and for unsigned BO_{Div,Rem},
791 HANDLEBINOP(Div)
4608 COMPOUND_OP(Div);
/freebsd-11-stable/contrib/llvm-project/llvm/lib/MC/MCParser/
H A DAsmParser.cpp1555 Kind = MCBinaryExpr::Div;
1625 Kind = MCBinaryExpr::Div;
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/Mips/AsmParser/
H A DMipsAsmParser.cpp6317 Opcode = MCBinaryExpr::Div;

Completed in 561 milliseconds