Home
last modified time | relevance | path

Searched refs:Trunc (Results 1 – 25 of 106) sorted by relevance

12345

/netbsd-src/external/apache2/llvm/dist/llvm/lib/CodeGen/
H A DTypePromotion.cpp243 else if (auto *Trunc = dyn_cast<TruncInst>(V)) in isSource() local
244 return EqualTypeSize(Trunc); in isSource()
568 auto *Trunc = dyn_cast<Instruction>(Builder.CreateTrunc(V, TruncTy)); in TruncateSinks() local
569 if (Trunc) in TruncateSinks()
570 NewInsts.insert(Trunc); in TruncateSinks()
571 return Trunc; in TruncateSinks()
584 if (Instruction *Trunc = InsertTrunc(Arg, Ty)) { in TruncateSinks() local
585 Trunc->moveBefore(Call); in TruncateSinks()
586 Call->setArgOperand(i, Trunc); in TruncateSinks()
595 if (Instruction *Trunc = InsertTrunc(Switch->getCondition(), Ty)) { in TruncateSinks() local
[all …]
H A DInterleavedLoadCombinePass.cpp171 Trunc, enumerator
498 pushBOperation(Trunc, APInt(sizeof(n) * 8, n)); in sextOrTrunc()
596 case Trunc: in print()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/InstCombine/
H A DInstCombineCasts.cpp209 case Instruction::Trunc: in EvaluateInDifferentType()
303 (CI.getOpcode() == Instruction::Trunc && in commonCastTransforms()
443 case Instruction::Trunc: in canEvaluateTruncated()
480 static Instruction *foldVecTruncToExtElt(TruncInst &Trunc, in foldVecTruncToExtElt() argument
482 Value *TruncOp = Trunc.getOperand(0); in foldVecTruncToExtElt()
483 Type *DestType = Trunc.getType(); in foldVecTruncToExtElt()
520 Instruction *InstCombinerImpl::narrowFunnelShift(TruncInst &Trunc) { in narrowFunnelShift() argument
521 assert((isa<VectorType>(Trunc.getSrcTy()) || in narrowFunnelShift()
522 shouldChangeType(Trunc.getSrcTy(), Trunc.getType())) && in narrowFunnelShift()
527 Type *DestTy = Trunc.getType(); in narrowFunnelShift()
[all …]
H A DInstCombineShifts.cpp73 Value *Trunc = nullptr; in reassociateShiftAmtsOfTwoSameDirectionShifts() local
75 m_CombineOr(m_CombineAnd(m_Trunc(m_Instruction(Sh1)), m_Value(Trunc)), in reassociateShiftAmtsOfTwoSameDirectionShifts()
105 if (Trunc && !AnalyzeForSignBitExtraction && in reassociateShiftAmtsOfTwoSameDirectionShifts()
127 if (HadTwoRightShifts && (Trunc || AnalyzeForSignBitExtraction)) { in reassociateShiftAmtsOfTwoSameDirectionShifts()
146 if (!Trunc) { in reassociateShiftAmtsOfTwoSameDirectionShifts()
160 if (Trunc) { in reassociateShiftAmtsOfTwoSameDirectionShifts()
162 Ret = CastInst::Create(Instruction::Trunc, NewShift, Sh0->getType()); in reassociateShiftAmtsOfTwoSameDirectionShifts()
197 Value *Trunc; in dropRedundantMaskingOfLeftShiftInput() local
198 if (match(Masked, m_CombineAnd(m_Trunc(m_Value(Masked)), m_Value(Trunc))) && in dropRedundantMaskingOfLeftShiftInput()
199 !Trunc->hasOneUse()) in dropRedundantMaskingOfLeftShiftInput()
H A DInstCombineInternal.h321 Instruction *narrowBinOp(TruncInst &Trunc);
324 Instruction *narrowFunnelShift(TruncInst &Trunc);
671 Instruction *foldICmpTruncConstant(ICmpInst &Cmp, TruncInst *Trunc,
H A DInstCombinePHI.cpp788 Constant *Trunc = ConstantExpr::getTrunc(C, NarrowType); in foldPHIArgZextsIntoPHI() local
789 if (ConstantExpr::getZExt(Trunc, C->getType()) != C) in foldPHIArgZextsIntoPHI()
791 NewIncoming.push_back(Trunc); in foldPHIArgZextsIntoPHI()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
H A DIntegerDivision.cpp508 Value *Trunc; in expandRemainderUpTo32Bits() local
520 Trunc = Builder.CreateTrunc(ExtRem, RemTy); in expandRemainderUpTo32Bits()
522 Rem->replaceAllUsesWith(Trunc); in expandRemainderUpTo32Bits()
556 Value *Trunc; in expandRemainderUpTo64Bits() local
568 Trunc = Builder.CreateTrunc(ExtRem, RemTy); in expandRemainderUpTo64Bits()
570 Rem->replaceAllUsesWith(Trunc); in expandRemainderUpTo64Bits()
605 Value *Trunc; in expandDivisionUpTo32Bits() local
617 Trunc = Builder.CreateTrunc(ExtDiv, DivTy); in expandDivisionUpTo32Bits()
619 Div->replaceAllUsesWith(Trunc); in expandDivisionUpTo32Bits()
654 Value *Trunc; in expandDivisionUpTo64Bits() local
[all …]
H A DBypassSlowDivision.cpp295 Builder.CreateCast(Instruction::Trunc, Divisor, BypassType); in createFastBB()
297 Builder.CreateCast(Instruction::Trunc, Dividend, BypassType); in createFastBB()
H A DSimplifyIndVar.cpp1451 Value *Trunc = Builder.CreateTrunc(DU.WideDef, DU.NarrowDef->getType()); in truncateIVUse() local
1452 DU.NarrowUse->replaceUsesOfWith(DU.NarrowDef, Trunc); in truncateIVUse()
1719 Value *Trunc = Builder.CreateTrunc(WidePhi, DU.NarrowDef->getType()); in widenIVUse() local
1720 UsePhi->replaceAllUsesWith(Trunc); in widenIVUse()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/AggressiveInstCombine/
H A DTruncInstCombine.cpp52 case Instruction::Trunc: in getRelevantOperands()
116 case Instruction::Trunc: in buildTruncExpressionDag()
322 case Instruction::Trunc: in ReduceExpressionDag()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/AMDGPU/
H A DAMDGPULowerKernelArguments.cpp220 Value *Trunc = Builder.CreateTrunc(ExtractBits, ArgIntTy); in runOnFunction() local
221 Value *NewVal = Builder.CreateBitCast(Trunc, ArgTy, in runOnFunction()
H A DAMDGPUISelLowering.cpp1824 SDValue Trunc = DAG.getNode(ISD::FTRUNC, DL, MVT::f32, Mul2); in LowerUDIVREM64() local
1825 SDValue Mad2 = DAG.getNode(FMAD, DL, MVT::f32, Trunc, in LowerUDIVREM64()
1829 SDValue Rcp_Hi = DAG.getNode(ISD::FP_TO_UINT, DL, HalfVT, Trunc); in LowerUDIVREM64()
2106 SDValue Trunc = DAG.getNode(ISD::FTRUNC, SL, VT, Div, Flags); in LowerFREM() local
2107 SDValue Neg = DAG.getNode(ISD::FNEG, SL, VT, Trunc, Flags); in LowerFREM()
2120 SDValue Trunc = DAG.getNode(ISD::FTRUNC, SL, MVT::f64, Src); in LowerFCEIL() local
2129 SDValue NeTrunc = DAG.getSetCC(SL, SetCCVT, Src, Trunc, ISD::SETONE); in LowerFCEIL()
2134 return DAG.getNode(ISD::FADD, SL, MVT::f64, Trunc, Add); in LowerFCEIL()
2277 SDValue Trunc = DAG.getNode(ISD::FTRUNC, SL, MVT::f64, Src); in LowerFFLOOR() local
2286 SDValue NeTrunc = DAG.getSetCC(SL, SetCCVT, Src, Trunc, ISD::SETONE); in LowerFFLOOR()
[all …]
H A DAMDGPULegalizerInfo.cpp1926 auto Trunc = B.buildIntrinsicTrunc(S64, Src); in legalizeFceil() local
1931 auto NeTrunc = B.buildFCmp(CmpInst::FCMP_ONE, S1, Src, Trunc); in legalizeFceil()
1936 B.buildFAdd(MI.getOperand(0).getReg(), Trunc, Add); in legalizeFceil()
1950 auto Trunc = B.buildIntrinsicTrunc(Ty, Div, Flags); in legalizeFrem() local
1951 auto Neg = B.buildFNeg(Ty, Trunc, Flags); in legalizeFrem()
2066 auto Trunc = B.buildIntrinsicTrunc(S64, Src, Flags); in legalizeFPTOI() local
2070 auto Mul = B.buildFMul(S64, Trunc, K0, Flags); in legalizeFPTOI()
2072 auto Fma = B.buildFMA(S64, FloorMul, K1, Trunc, Flags); in legalizeFPTOI()
2867 auto Trunc = B.buildIntrinsicTrunc(S32, Mul2); in emitReciprocalU64() local
2870 auto Mad2 = B.buildFMAD(S32, Trunc, in emitReciprocalU64()
[all …]
/netbsd-src/external/apache2/llvm/dist/clang/lib/AST/Interp/
H A DInterp.h121 auto Trunc = Value.trunc(Result.bitWidth()).toString(10); in AddSubMulHelper() local
123 S.report(Loc, diag::warn_integer_constant_overflow) << Trunc << Type; in AddSubMulHelper()
846 unsigned Trunc(InterpState &S, CodePtr OpPC, unsigned Bits, const T &V) { in Trunc() function
904 return ShiftLeft<TL, TR>(S, OpPC, LHS, Trunc<TR, TL>(S, OpPC, Bits, -RHS)); in Shr()
906 return ShiftRight<TL, TR>(S, OpPC, LHS, Trunc<TR, TL>(S, OpPC, Bits, RHS)); in Shr()
919 return ShiftRight<TL, TR>(S, OpPC, LHS, Trunc<TR, TL>(S, OpPC, Bits, -RHS)); in Shl()
921 return ShiftLeft<TL, TR>(S, OpPC, LHS, Trunc<TR, TL>(S, OpPC, Bits, RHS)); in Shl()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/IR/
H A DReplaceConstant.cpp51 case Instruction::Trunc: in createReplacementInstr()
H A DInstructions.cpp2654 case Instruction::Trunc: in isIntegerCast()
2694 case Instruction::Trunc: in isNoopCast()
2951 case Trunc: return new TruncInst (S, Ty, Name, InsertBefore); in Create()
2973 case Trunc: return new TruncInst (S, Ty, Name, InsertAtEnd); in Create()
3027 return Create(Instruction::Trunc, S, Ty, Name, InsertBefore); in CreateTruncOrBitCast()
3035 return Create(Instruction::Trunc, S, Ty, Name, InsertAtEnd); in CreateTruncOrBitCast()
3121 (SrcBits > DstBits ? Instruction::Trunc : in CreateIntegerCast()
3135 (SrcBits > DstBits ? Instruction::Trunc : in CreateIntegerCast()
3256 return Trunc; // int -> smaller int in getCastOpcode()
3354 case Instruction::Trunc: in castIsValid()
[all …]
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/ARM/
H A DARMParallelDSP.cpp794 Value *Trunc = IRB.CreateTrunc(Top, OffsetTy); in CreateWideLoad() local
795 Value *NewOffsetSExt = IRB.CreateSExt(Trunc, OffsetSExt->getType()); in CreateWideLoad()
805 << *Trunc << "\n" in CreateWideLoad()
H A DMVELaneInterleavingPass.cpp177 case Instruction::Trunc: in tryInterleave()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/WebAssembly/
H A DWebAssemblyFastISel.cpp972 const auto *Trunc = cast<TruncInst>(I); in selectTrunc() local
974 unsigned Reg = getRegForValue(Trunc->getOperand(0)); in selectTrunc()
978 if (Trunc->getOperand(0)->getType()->isIntegerTy(64)) { in selectTrunc()
986 updateValueMap(Trunc, Reg); in selectTrunc()
1400 case Instruction::Trunc: in fastSelectInstruction()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Vectorize/
H A DLoopVectorize.cpp532 void widenIntOrFpInduction(PHINode *IV, Value *Start, TruncInst *Trunc,
1433 auto *Trunc = dyn_cast<TruncInst>(I); in isOptimizableIVTruncate() local
1434 if (!Trunc) in isOptimizableIVTruncate()
1446 Value *Op = Trunc->getOperand(0); in isOptimizableIVTruncate()
2271 Start = Builder.CreateCast(Instruction::Trunc, Start, TruncType); in createVectorIntOrFpInductionPHI()
2385 TruncInst *Trunc, VPValue *Def, in widenIntOrFpInduction() argument
2399 Instruction *EntryVal = Trunc ? cast<Instruction>(Trunc) : IV; in widenIntOrFpInduction()
2430 if (Trunc) { in widenIntOrFpInduction()
2431 auto *TruncType = cast<IntegerType>(Trunc->getType()); in widenIntOrFpInduction()
2450 if (Trunc) in widenIntOrFpInduction()
[all …]
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/
H A DSpeculativeExecution.cpp248 case Instruction::Trunc: in ComputeSpeculationCost()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/Hexagon/
H A DHexagonVectorCombine.cpp1052 Value *Trunc = Builder.CreateTrunc(Shift, Type::getInt32Ty(F.getContext())); in vlalignb() local
1053 return Builder.CreateBitCast(Trunc, Hi->getType()); in vlalignb()
1084 Value *Trunc = Builder.CreateTrunc(Shift, Type::getInt32Ty(F.getContext())); in vralignb() local
1085 return Builder.CreateBitCast(Trunc, Lo->getType()); in vralignb()
/netbsd-src/external/apache2/llvm/dist/llvm/include/llvm/CodeGen/
H A DCallingConvLower.h47 Trunc, // The value is truncated in the location. enumerator
/netbsd-src/external/apache2/llvm/dist/llvm/include/llvm/IR/
H A DInstruction.def184 HANDLE_CAST_INST(38, Trunc , TruncInst ) // Truncate integers
/netbsd-src/external/apache2/llvm/dist/llvm/include/llvm/Analysis/
H A DTargetTransformInfoImpl.h503 case Instruction::Trunc: { in getCastInstrCost()
1005 case Instruction::Trunc: in getUserCost()

12345