Home
last modified time | relevance | path

Searched refs:TruncInst (Results 1 – 25 of 71) sorted by relevance

123

/freebsd/contrib/llvm-project/llvm/lib/Transforms/AggressiveInstCombine/
H A DAggressiveInstCombineInternal.h48 class TruncInst; variable
59 SmallVector<TruncInst *, 4> Worklist;
62 TruncInst *CurrentTruncInst = nullptr;
H A DTruncInstCombine.cpp401 assert(!isa<TruncInst>(I) && "Cannot reach here with TruncInst"); in ReduceExpressionGraph()
417 if (auto *NewCI = dyn_cast<TruncInst>(Res)) in ReduceExpressionGraph()
421 } else if (auto *NewCI = dyn_cast<TruncInst>(Res)) in ReduceExpressionGraph()
533 if (auto *CI = dyn_cast<TruncInst>(&I)) in run()
/freebsd/contrib/llvm-project/llvm/lib/IR/
H A DInstruction.cpp382 cast<TruncInst>(this)->setHasNoUnsignedWrap(b); in setHasNoUnsignedWrap()
389 cast<TruncInst>(this)->setHasNoSignedWrap(b); in setHasNoSignedWrap()
406 return cast<TruncInst>(this)->hasNoUnsignedWrap(); in hasNoUnsignedWrap()
413 return cast<TruncInst>(this)->hasNoSignedWrap(); in hasNoSignedWrap()
456 cast<TruncInst>(this)->setHasNoUnsignedWrap(false); in dropPoisonGeneratingFlags()
457 cast<TruncInst>(this)->setHasNoSignedWrap(false); in dropPoisonGeneratingFlags()
682 if (auto *TI = dyn_cast<TruncInst>(V)) { in copyIRFlags()
683 if (isa<TruncInst>(this)) { in copyIRFlags()
725 if (auto *TI = dyn_cast<TruncInst>(V)) { in andIRFlags()
726 if (isa<TruncInst>(this)) { in andIRFlags()
H A DOperator.cpp31 if (auto *TI = dyn_cast<TruncInst>(this)) in hasPoisonGeneratingFlags()
H A DInstructions.cpp3040 case Trunc: return new TruncInst (S, Ty, Name, InsertBefore); in Create()
3403 TruncInst::TruncInst(Value *S, Type *Ty, const Twine &Name, in TruncInst() function in TruncInst
4390 TruncInst *TruncInst::cloneImpl() const { in cloneImpl()
4391 return new TruncInst(getOperand(0), getType()); in cloneImpl()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DTypePromotion.cpp241 else if (auto *Trunc = dyn_cast<TruncInst>(V)) in isSource()
615 if (NewInsts.count(Src) && isa<TruncInst>(Src)) { in Cleanup()
616 auto *Trunc = cast<TruncInst>(Src); in Cleanup()
634 if (!isa<TruncInst>(V) || Sources.count(V)) in ConvertTruncs()
637 auto *Trunc = cast<TruncInst>(V); in ConvertTruncs()
673 if (!isa<TruncInst>(V) || Sources.count(V)) in Mutate()
675 auto *Trunc = cast<TruncInst>(V); in Mutate()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineCasts.cpp330 if (auto *Trunc = dyn_cast<TruncInst>(V->user_back())) { in canEvaluateTruncated()
411 static Instruction *foldVecTruncToExtElt(TruncInst &Trunc, in foldVecTruncToExtElt()
461 static Instruction *foldVecExtTruncToExtElt(TruncInst &Trunc, in foldVecExtTruncToExtElt()
516 Instruction *InstCombinerImpl::narrowFunnelShift(TruncInst &Trunc) { in narrowFunnelShift()
620 Instruction *InstCombinerImpl::narrowBinOp(TruncInst &Trunc) { in narrowBinOp()
706 static Instruction *shrinkSplatShuffle(TruncInst &Trunc, in shrinkSplatShuffle()
753 Instruction *InstCombinerImpl::visitTrunc(TruncInst &Trunc) { in visitTrunc()
794 return new TruncInst(Res, DestTy); in visitTrunc()
1195 if (Zext.hasOneUse() && isa<TruncInst>(Zext.user_back()) && in visitZExt()
1249 if (auto *CSrc = dyn_cast<TruncInst>(Src)) { // A->B->C cast in visitZExt()
[all …]
H A DInstCombineInternal.h135 Instruction *visitTrunc(TruncInst &CI);
395 Instruction *narrowBinOp(TruncInst &Trunc);
398 Instruction *narrowFunnelShift(TruncInst &Trunc);
730 Instruction *foldICmpTruncConstant(ICmpInst &Cmp, TruncInst *Trunc,
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVPRecipeBuilder.h112 tryToOptimizeInductionTruncate(TruncInst *I, ArrayRef<VPValue *> Operands,
H A DVPlan.h677 } else if (auto *Op = dyn_cast<TruncInst>(&I)) { in VPIRFlags()
2009 TruncInst *Trunc;
2026 TruncInst *Trunc, DebugLoc DL) in VPWidenIntOrFpInductionRecipe()
2075 TruncInst *getTruncInst() { return Trunc; } in getTruncInst()
2076 const TruncInst *getTruncInst() const { return Trunc; } in getTruncInst()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DSeparateConstOffsetFromGEP.cpp636 } else if (isa<TruncInst>(V)) { in find()
706 (isa<SExtInst>(Cast) || isa<ZExtInst>(Cast) || isa<TruncInst>(Cast)) && in distributeExtsAndCloneChain()
801 if (const TruncInst *TI = dyn_cast<TruncInst>(U)) in allowsPreservingNUW()
H A DLoopFlatten.cpp184 if (auto *V = dyn_cast<TruncInst>(U)) { in checkOuterInductionPhiUsers()
278 if (isa<TruncInst>(U)) { in checkInnerInductionPhiUsers()
H A DCorrelatedValuePropagation.cpp1227 static bool processTrunc(TruncInst *TI, LazyValueInfo *LVI) { in processTrunc()
1319 BBChanged |= processTrunc(cast<TruncInst>(&II), LVI); in runImpl()
/freebsd/contrib/llvm-project/llvm/lib/ExecutionEngine/Interpreter/
H A DInterpreter.h137 void visitTruncInst(TruncInst &I);
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DCmpInstAnalysis.cpp209 Result.Pred = isa<TruncInst>(Cond) ? ICmpInst::ICMP_NE : ICmpInst::ICMP_EQ; in decomposeBitTest()
H A DLazyValueInfo.cpp399 ValueLatticeElement getValueFromTrunc(Value *Val, TruncInst *Trunc,
1299 TruncInst *Trunc, in getValueFromTrunc()
1348 if (auto *Trunc = dyn_cast<TruncInst>(Cond)) in getValueFromCondition()
/freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCBoolRetToInt.cpp263 new TruncInst(IntRetVal, Int1Ty, "backToBool", I->getIterator()); in runOnUse()
/freebsd/contrib/llvm-project/llvm/lib/Target/BPF/
H A DBPFAdjustOpt.cpp107 if (!isa<TruncInst>(Op0)) in adjustICmpToBuiltin()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/SandboxVectorizer/
H A DLegality.cpp65 isa<OverflowingBinaryOperator>(I0) || isa<TruncInst>(I0); in notVectorizableBasedOnOpcodesAndTypes()
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DInstVisitor.h176 RetTy visitTruncInst(TruncInst &I) { DELEGATE(CastInst);} in visitTruncInst()
H A DPatternMatch.h2060 if (auto *I = dyn_cast<TruncInst>(V)) in match()
2131 inline CastInst_match<OpTy, TruncInst> m_Trunc(const OpTy &Op) { in m_Trunc()
2132 return CastInst_match<OpTy, TruncInst>(Op); in m_Trunc()
2137 inline NoWrapTrunc_match<OpTy, TruncInst::NoUnsignedWrap>
2139 return NoWrapTrunc_match<OpTy, TruncInst::NoUnsignedWrap>(Op); in m_NUWTrunc()
2144 inline NoWrapTrunc_match<OpTy, TruncInst::NoSignedWrap>
2146 return NoWrapTrunc_match<OpTy, TruncInst::NoSignedWrap>(Op); in m_NSWTrunc()
2150 inline match_combine_or<CastInst_match<OpTy, TruncInst>, OpTy>
H A DInstruction.def184 HANDLE_CAST_INST(38, Trunc , TruncInst ) // Truncate integers
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DMVELaneInterleavingPass.cpp412 (isa<TruncInst>(I) || isa<FPTruncInst>(I))) || in runOnFunction()
H A DMVEGatherScatterLowering.cpp571 Load = TruncInst::Create(Instruction::Trunc, Load, MemoryTy); in tryCreateMaskedGatherOffset()
673 if (TruncInst *Trunc = dyn_cast<TruncInst>(Input)) { in tryCreateMaskedScatterOffset()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DSimplifyIndVar.cpp96 bool eliminateTrunc(TruncInst *TI);
479 bool SimplifyIndvar::eliminateTrunc(TruncInst *TI) { in eliminateTrunc()
621 if (auto *TI = dyn_cast<TruncInst>(UseInst)) in eliminateIVUser()
952 if ((isa<PtrToIntInst>(UseInst)) || (isa<TruncInst>(UseInst))) in simplifyUsers()

123