Home
last modified time | relevance | path

Searched refs:Div (Results 1 – 25 of 66) sorted by relevance

123

/llvm-project-15.0.7/llvm/lib/Transforms/Utils/
H A DIntegerDivision.cpp437 IRBuilder<> Builder(Div); in expandDivision()
454 Div->eraseFromParent(); in expandDivision()
463 Div = BO; in expandDivision()
471 Div->dropAllReferences(); in expandDivision()
472 Div->eraseFromParent(); in expandDivision()
599 IRBuilder<> Builder(Div); in expandDivisionUpTo32Bits()
619 Div->dropAllReferences(); in expandDivisionUpTo32Bits()
620 Div->eraseFromParent(); in expandDivisionUpTo32Bits()
648 IRBuilder<> Builder(Div); in expandDivisionUpTo64Bits()
668 Div->dropAllReferences(); in expandDivisionUpTo64Bits()
[all …]
/llvm-project-15.0.7/llvm/lib/Target/RISCV/MCTargetDesc/
H A DRISCVMatInt.cpp315 int64_t Div = 0; in generateInstSeq() local
320 Div = 3; in generateInstSeq()
323 Div = 5; in generateInstSeq()
326 Div = 9; in generateInstSeq()
330 if (Div > 0) { in generateInstSeq()
331 generateInstSeqImpl(Val / Div, ActiveFeatures, TmpSeq); in generateInstSeq()
339 Div = 0; in generateInstSeq()
341 Div = 3; in generateInstSeq()
344 Div = 5; in generateInstSeq()
347 Div = 9; in generateInstSeq()
[all …]
/llvm-project-15.0.7/llvm/unittests/Transforms/Utils/
H A DIntegerDivisionTest.cpp40 Value *Div = Builder.CreateSDiv(A, B); in TEST() local
43 Value *Ret = Builder.CreateRet(Div); in TEST()
45 expandDivision(cast<BinaryOperator>(Div)); in TEST()
70 Value *Div = Builder.CreateUDiv(A, B); in TEST() local
73 Value *Ret = Builder.CreateRet(Div); in TEST()
75 expandDivision(cast<BinaryOperator>(Div)); in TEST()
161 Value *Div = Builder.CreateSDiv(A, B); in TEST() local
164 Value *Ret = Builder.CreateRet(Div); in TEST()
166 expandDivision(cast<BinaryOperator>(Div)); in TEST()
191 Value *Div = Builder.CreateUDiv(A, B); in TEST() local
[all …]
/llvm-project-15.0.7/llvm/include/llvm/Transforms/Utils/
H A DIntegerDivision.h41 bool expandDivision(BinaryOperator* Div);
62 bool expandDivisionUpTo32Bits(BinaryOperator *Div);
68 bool expandDivisionUpTo64Bits(BinaryOperator *Div);
/llvm-project-15.0.7/llvm/test/Transforms/SCCP/
H A Dapfloat-basictest.ll23 %Div = fdiv double 1.0, 1.0
24 %Val = fneg double %Div
/llvm-project-15.0.7/llvm/lib/Transforms/Scalar/
H A DDivRemPairs.cpp58 Instruction *Div; in matchExpandedRem() local
63 m_Instruction(Div)), in matchExpandedRem()
68 M.Key.SignedOp = Div->getOpcode() == Instruction::SDiv; in matchExpandedRem()
/llvm-project-15.0.7/llvm/lib/Transforms/InstCombine/
H A DInstCombineMulDivRem.cpp273 BinaryOperator *Div = dyn_cast<BinaryOperator>(Op0); in visitMul() local
274 if (!Div || (Div->getOpcode() != Instruction::UDiv && in visitMul()
275 Div->getOpcode() != Instruction::SDiv)) { in visitMul()
277 Div = dyn_cast<BinaryOperator>(Op1); in visitMul()
280 if (Div && Div->hasOneUse() && in visitMul()
281 (Div->getOperand(1) == Y || Div->getOperand(1) == Neg) && in visitMul()
282 (Div->getOpcode() == Instruction::UDiv || in visitMul()
283 Div->getOpcode() == Instruction::SDiv)) { in visitMul()
284 Value *X = Div->getOperand(0), *DivOp1 = Div->getOperand(1); in visitMul()
287 if (Div->isExact()) { in visitMul()
[all …]
/llvm-project-15.0.7/clang/test/CodeGen/
H A Dfp-floatcontrol-pragma.cpp354 float Div(float x, float y, float z) { in Div() function
384 float f = Div(4.2f, 1.0f, 3.0f); in main()
/llvm-project-15.0.7/llvm/lib/Target/AArch64/
H A DAArch64SchedThunderX.td43 def THXT8XUnitFPMDS : ProcResource<1> { let BufferSize = 0; } // FP Mul/Div/Sqrt
70 // Div
161 // FP Mul, Div, Sqrt
238 // Div
H A DAArch64SchedA53.td48 def A53UnitFPMDS : ProcResource<1> { let BufferSize = 0; } // FP Mult/Div/Sqrt
72 // Div
134 // FP Mul, Div, Sqrt
195 // Div
H A DAArch64SchedA55.td56 def CortexA55UnitFPDIV : ProcResource<1> { let BufferSize = 0; } // FP Div/SQRT, 64/128
77 // Div
187 // FP Mul, Div, Sqrt. Div/Sqrt are not pipelined
252 // Div
/llvm-project-15.0.7/llvm/lib/Target/SPIRV/
H A DSPIRVPrepareFunctions.cpp216 Value *Div = IRB.CreateUDiv(Mul, UMulFunc->getArg(0)); in buildUMulWithOverflowFunc() local
217 Value *Overflow = IRB.CreateICmpNE(UMulFunc->getArg(0), Div); in buildUMulWithOverflowFunc()
/llvm-project-15.0.7/lld/test/ELF/linkerscript/
H A Doperators.test142 ## Div by zero error.
160 ## Div by zero error.
/llvm-project-15.0.7/llvm/test/CodeGen/X86/
H A Ddiv-rem-simplify.ll4 ; Div/rem by zero is undef.
38 ; Div/rem by zero vectors is undef.
H A Dvec_sdiv_to_shift.ll180 ; Div-by-0 in any lane is UB.
/llvm-project-15.0.7/clang/include/clang/AST/
H A DCommentHTMLTags.td20 def Div : Tag<"div">;
H A DStmtVisitor.h127 BINOP_FALLBACK(Mul) BINOP_FALLBACK(Div) BINOP_FALLBACK(Rem) in BINOP_FALLBACK()
/llvm-project-15.0.7/llvm/include/llvm/MC/
H A DMCExpr.h486 Div, ///< Signed division. enumerator
537 return create(Div, LHS, RHS, Ctx); in createDiv()
/llvm-project-15.0.7/llvm/test/CodeGen/AArch64/
H A Dstrict-fp-opt.ll5 ; Div whose result is unused should be removed unless we have strict exceptions
/llvm-project-15.0.7/llvm/lib/IR/
H A DConstantFold.cpp2233 Constant *Div = in ConstantFoldGetElementPtr() local
2238 assert(NewIdxs[i] != nullptr && Div != nullptr && "Should have folded"); in ConstantFoldGetElementPtr()
2242 Div->getType()->getScalarSizeInBits()); in ConstantFoldGetElementPtr()
2247 Type *ExtendedTy = Type::getIntNTy(Div->getContext(), CommonExtendedWidth); in ConstantFoldGetElementPtr()
2258 if (!Div->getType()->isIntOrIntVectorTy(CommonExtendedWidth)) in ConstantFoldGetElementPtr()
2259 Div = ConstantExpr::getSExt(Div, ExtendedTy); in ConstantFoldGetElementPtr()
2261 NewIdxs[i - 1] = ConstantExpr::getAdd(PrevIdx, Div); in ConstantFoldGetElementPtr()
/llvm-project-15.0.7/llvm/lib/Target/AMDGPU/
H A DAMDGPUCodeGenPrepare.cpp988 Value *Div = Builder.CreateAdd(IQ, JQ); in expandDivRem24Impl() local
990 Value *Res = Div; in expandDivRem24Impl()
993 Value *Rem = Builder.CreateMul(Div, Den); in expandDivRem24Impl()
1306 for (BinaryOperator *Div : Div64ToExpand) { in visitBinaryOperator()
1307 expandDivRem64(*Div); in visitBinaryOperator()
H A DAMDGPUISelLowering.cpp1662 SDValue Div = DAG.getNode(ISD::ADD, DL, VT, iq, jq); in LowerDIVREM24() local
1665 SDValue Rem = DAG.getNode(ISD::MUL, DL, VT, Div, RHS); in LowerDIVREM24()
1672 Div = DAG.getNode(ISD::SIGN_EXTEND_INREG, DL, VT, Div, InRegSize); in LowerDIVREM24()
1676 Div = DAG.getNode(ISD::AND, DL, VT, Div, TruncMask); in LowerDIVREM24()
1680 return DAG.getMergeValues({ Div, Rem }, DL); in LowerDIVREM24()
1850 Results.push_back(Div); in LowerUDIVREM64()
1999 SDValue Rem = Div.getValue(1); in LowerSDIVREM()
2001 Div = DAG.getNode(ISD::XOR, DL, VT, Div, DSign); in LowerSDIVREM()
2004 Div = DAG.getNode(ISD::SUB, DL, VT, Div, DSign); in LowerSDIVREM()
2008 Div, in LowerSDIVREM()
[all …]
/llvm-project-15.0.7/llvm/lib/MC/
H A DMCExpr.cpp140 case MCBinaryExpr::Div: OS << '/'; break; in print()
933 case MCBinaryExpr::Div: in evaluateAsRelocatableImpl()
943 if (ABE->getOpcode() == MCBinaryExpr::Div) in evaluateAsRelocatableImpl()
/llvm-project-15.0.7/llvm/lib/Analysis/
H A DLoopCacheAnalysis.cpp433 const SCEV *Div = SE.getUDivExactExpr(AccessFn, ElemSize); in delinearize() local
434 Subscripts.push_back(Div); in delinearize()
/llvm-project-15.0.7/llvm/lib/Target/ARM/
H A DARMScheduleM4.td105 // Most FP instructions are single-cycle latency, except MAC's, Div's and Sqrt's.

123