Searched refs:Trunc (Results 1 - 25 of 94) sorted by relevance

1234

/freebsd-13-stable/contrib/llvm-project/llvm/lib/CodeGen/
H A DTypePromotion.cpp242 else if (auto *Trunc = dyn_cast<TruncInst>(V))
243 return EqualTypeSize(Trunc);
564 LLVM_DEBUG(dbgs() << "IR Promotion: Creating " << *TruncTy << " Trunc for "
567 auto *Trunc = dyn_cast<Instruction>(Builder.CreateTrunc(V, TruncTy));
568 if (Trunc)
569 NewInsts.insert(Trunc);
570 return Trunc;
583 if (Instruction *Trunc = InsertTrunc(Arg, Ty)) {
584 Trunc->moveBefore(Call);
585 Call->setArgOperand(i, Trunc);
637 auto *Trunc = cast<TruncInst>(Src); local
659 auto *Trunc = cast<TruncInst>(V); local
697 auto *Trunc = cast<TruncInst>(V); local
[all...]
H A DInterleavedLoadCombinePass.cpp171 Trunc, enumerator in enum:__anon3485::Polynomial::BOps
498 pushBOperation(Trunc, APInt(sizeof(n) * 8, n));
596 case Trunc:
597 OS << "Trunc ";
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DIntegerDivision.cpp508 Value *Trunc; local
520 Trunc = Builder.CreateTrunc(ExtRem, RemTy);
522 Rem->replaceAllUsesWith(Trunc);
556 Value *Trunc; local
568 Trunc = Builder.CreateTrunc(ExtRem, RemTy);
570 Rem->replaceAllUsesWith(Trunc);
605 Value *Trunc; local
617 Trunc = Builder.CreateTrunc(ExtDiv, DivTy);
619 Div->replaceAllUsesWith(Trunc);
654 Value *Trunc; local
[all...]
H A DBypassSlowDivision.cpp295 Builder.CreateCast(Instruction::Trunc, Divisor, BypassType);
297 Builder.CreateCast(Instruction::Trunc, Dividend, BypassType);
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineCasts.cpp192 case Instruction::Trunc:
285 (CI.getOpcode() == Instruction::Trunc &&
425 case Instruction::Trunc:
462 static Instruction *foldVecTruncToExtElt(TruncInst &Trunc, InstCombiner &IC) { argument
463 Value *TruncOp = Trunc.getOperand(0);
464 Type *DestType = Trunc.getType();
501 Instruction *InstCombiner::narrowRotate(TruncInst &Trunc) { argument
502 assert((isa<VectorType>(Trunc.getSrcTy()) ||
503 shouldChangeType(Trunc.getSrcTy(), Trunc
585 narrowBinOp(TruncInst &Trunc) argument
643 shrinkSplatShuffle(TruncInst &Trunc, InstCombiner::BuilderTy &Builder) argument
663 shrinkInsertElt(CastInst &Trunc, InstCombiner::BuilderTy &Builder) argument
690 visitTrunc(TruncInst &Trunc) argument
1218 Value *Trunc = Builder.CreateTrunc(A, CI.getType()); local
[all...]
H A DInstCombineShifts.cpp48 Value *Trunc = nullptr; local
50 m_CombineOr(m_CombineAnd(m_Trunc(m_Instruction(Sh1)), m_Value(Trunc)),
98 if (Trunc && !AnalyzeForSignBitExtraction &&
120 if (HadTwoRightShifts && (Trunc || AnalyzeForSignBitExtraction)) {
139 if (!Trunc) {
153 if (Trunc) {
155 Ret = CastInst::Create(Instruction::Trunc, NewShift, Sh0->getType());
190 Value *Trunc; local
191 if (match(Masked, m_CombineAnd(m_Trunc(m_Value(Masked)), m_Value(Trunc))) &&
192 !Trunc
[all...]
H A DInstCombineInternal.h609 Instruction *narrowBinOp(TruncInst &Trunc);
612 Instruction *narrowRotate(TruncInst &Trunc);
953 Instruction *foldICmpTruncConstant(ICmpInst &Cmp, TruncInst *Trunc,
H A DInstCombinePHI.cpp696 Constant *Trunc = ConstantExpr::getTrunc(C, NarrowType); local
697 if (ConstantExpr::getZExt(Trunc, C->getType()) != C)
699 NewIncoming.push_back(Trunc);
H A DInstCombineNegator.cpp317 case Instruction::Trunc: {
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Transforms/AggressiveInstCombine/
H A DTruncInstCombine.cpp48 /// that instruction, with respect to the Trunc expression dag optimizaton.
52 case Instruction::Trunc:
116 case Instruction::Trunc:
325 case Instruction::Trunc:
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPULowerKernelArguments.cpp222 Value *Trunc = Builder.CreateTrunc(ExtractBits, ArgIntTy); local
223 Value *NewVal = Builder.CreateBitCast(Trunc, ArgTy,
H A DAMDGPUISelLowering.cpp1805 SDValue Trunc = DAG.getNode(ISD::FTRUNC, DL, MVT::f32, Mul2); local
1806 SDValue Mad2 = DAG.getNode(FMAD, DL, MVT::f32, Trunc,
1810 SDValue Rcp_Hi = DAG.getNode(ISD::FP_TO_UINT, DL, HalfVT, Trunc);
2102 SDValue Trunc = DAG.getNode(ISD::FTRUNC, SL, MVT::f64, Src); local
2111 SDValue NeTrunc = DAG.getSetCC(SL, SetCCVT, Src, Trunc, ISD::SETONE);
2116 return DAG.getNode(ISD::FADD, SL, MVT::f64, Trunc, Add);
2259 SDValue Trunc = DAG.getNode(ISD::FTRUNC, SL, MVT::f64, Src); local
2268 SDValue NeTrunc = DAG.getSetCC(SL, SetCCVT, Src, Trunc, ISD::SETONE);
2273 return DAG.getNode(ISD::FADD, SL, MVT::f64, Trunc, Add);
2572 SDValue Trunc local
3260 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, SL, MidVT, local
[all...]
H A DAMDGPULegalizerInfo.cpp1741 auto Trunc = B.buildIntrinsicTrunc(S64, Src);
1746 auto NeTrunc = B.buildFCmp(CmpInst::FCMP_ONE, S1, Src, Trunc);
1751 B.buildFAdd(MI.getOperand(0).getReg(), Trunc, Add);
1862 auto Trunc = B.buildIntrinsicTrunc(S64, Src, Flags);
1866 auto Mul = B.buildFMul(S64, Trunc, K0, Flags);
1868 auto Fma = B.buildFMA(S64, FloorMul, K1, Trunc, Flags);
2617 auto Trunc = B.buildIntrinsicTrunc(S32, Mul2);
2620 auto Mad2 = B.buildFMAD(S32, Trunc,
2624 auto ResultHi = B.buildFPTOUI(S32, Trunc);
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/XCore/
H A DXCoreLowerThreadLocal.cpp108 case Instruction::Trunc:
/freebsd-13-stable/contrib/llvm-project/clang/lib/AST/Interp/
H A DInterp.h121 auto Trunc = Value.trunc(Result.bitWidth()).toString(10); local
123 S.report(Loc, diag::warn_integer_constant_overflow) << Trunc << Type;
846 unsigned Trunc(InterpState &S, CodePtr OpPC, unsigned Bits, const T &V) {
904 return ShiftLeft<TL, TR>(S, OpPC, LHS, Trunc<TR, TL>(S, OpPC, Bits, -RHS));
906 return ShiftRight<TL, TR>(S, OpPC, LHS, Trunc<TR, TL>(S, OpPC, Bits, RHS));
919 return ShiftRight<TL, TR>(S, OpPC, LHS, Trunc<TR, TL>(S, OpPC, Bits, -RHS));
921 return ShiftLeft<TL, TR>(S, OpPC, LHS, Trunc<TR, TL>(S, OpPC, Bits, RHS));
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DLoopVectorize.cpp452 /// Widen an integer or floating-point induction variable \p IV. If \p Trunc
455 void widenIntOrFpInduction(PHINode *IV, TruncInst *Trunc = nullptr);
1169 auto *Trunc = dyn_cast<TruncInst>(I); local
1170 if (!Trunc)
1182 Value *Op = Trunc->getOperand(0);
1712 Start = Builder.CreateCast(Instruction::Trunc, Start, TruncType);
1819 void InnerLoopVectorizer::widenIntOrFpInduction(PHINode *IV, TruncInst *Trunc) {
1831 Instruction *EntryVal = Trunc ? cast<Instruction>(Trunc) : IV;
1862 if (Trunc) {
[all...]
H A DVPlan.h905 TruncInst *Trunc;
908 VPWidenIntOrFpInductionRecipe(PHINode *IV, TruncInst *Trunc = nullptr)
909 : VPRecipeBase(VPWidenIntOrFpInductionSC), IV(IV), Trunc(Trunc) {}
H A DVPlan.cpp759 if (Trunc) {
762 O << " +\n" << Indent << "\" " << VPlanIngredient(Trunc);
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMParallelDSP.cpp794 Value *Trunc = IRB.CreateTrunc(Top, OffsetTy); local
795 Value *NewOffsetSExt = IRB.CreateSExt(Trunc, OffsetSExt->getType());
805 << *Trunc << "\n"
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/WebAssembly/
H A DWebAssemblyFastISel.cpp938 const auto *Trunc = cast<TruncInst>(I); local
940 unsigned Reg = getRegForValue(Trunc->getOperand(0));
944 if (Trunc->getOperand(0)->getType()->isIntegerTy(64)) {
952 updateValueMap(Trunc, Reg);
1361 case Instruction::Trunc:
/freebsd-13-stable/contrib/llvm-project/llvm/lib/IR/
H A DInstructions.cpp2580 case Instruction::Trunc:
2619 case Instruction::Trunc:
2696 { 1, 0, 0,99,99, 0, 0,99,99,99, 0, 3, 0}, // Trunc -+
2876 case Trunc: return new TruncInst (S, Ty, Name, InsertBefore);
2898 case Trunc: return new TruncInst (S, Ty, Name, InsertAtEnd);
2952 return Create(Instruction::Trunc, S, Ty, Name, InsertBefore);
2960 return Create(Instruction::Trunc, S, Ty, Name, InsertAtEnd);
3046 (SrcBits > DstBits ? Instruction::Trunc :
3060 (SrcBits > DstBits ? Instruction::Trunc :
3239 return Trunc; // in
[all...]
/freebsd-13-stable/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DCallingConvLower.h46 Trunc, // The value is truncated in the location. enumerator in enum:llvm::CCValAssign::LocInfo
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Analysis/
H A DDemandedBits.cpp264 case Instruction::Trunc:
/freebsd-13-stable/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DTargetTransformInfoImpl.h430 case Instruction::Trunc:
891 case Instruction::Trunc:
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/SystemZ/
H A DSystemZTargetTransformInfo.cpp168 case Instruction::Trunc:
749 if (Opcode == Instruction::Trunc) {

Completed in 388 milliseconds

1234