Home
last modified time | relevance | path

Searched refs:InstCombiner (Results 1 – 25 of 31) sorted by relevance

12

/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUTargetTransformInfo.h29 class InstCombiner; variable
214 const Value *Op1, InstCombiner &IC) const;
216 bool simplifyDemandedLaneMaskArg(InstCombiner &IC, IntrinsicInst &II,
220 instCombineIntrinsic(InstCombiner &IC, IntrinsicInst &II) const override;
222 Value *simplifyAMDGCNLaneIntrinsicDemanded(InstCombiner &IC,
227 Instruction *hoistLaneIntrinsicThroughOperand(InstCombiner &IC,
231 InstCombiner &IC, IntrinsicInst &II, APInt DemandedElts, APInt &UndefElts,
H A DAMDGPUInstCombineIntrinsic.cpp105 static Value *convertTo16Bit(Value &V, InstCombiner::BuilderTy &Builder) { in convertTo16Bit()
122 InstCombiner &IC, in modifyIntrinsicCall()
156 IntrinsicInst &II, InstCombiner &IC) { in simplifyAMDGCNImageIntrinsic()
393 InstCombiner &IC) const { in canSimplifyLegacyMulToMul()
432 static APInt trimTrailingZerosInVector(InstCombiner &IC, Value *UseV, in trimTrailingZerosInVector()
485 static Value *simplifyAMDGCNMemoryIntrinsicDemanded(InstCombiner &IC,
518 bool GCNTTIImpl::simplifyDemandedLaneMaskArg(InstCombiner &IC, in simplifyDemandedLaneMaskArg()
557 GCNTTIImpl::hoistLaneIntrinsicThroughOperand(InstCombiner &IC, in hoistLaneIntrinsicThroughOperand()
639 GCNTTIImpl::instCombineIntrinsic(InstCombiner &IC, IntrinsicInst &II) const { in instCombineIntrinsic()
1712 static Value *simplifyAMDGCNMemoryIntrinsicDemanded(InstCombiner &IC, in simplifyAMDGCNMemoryIntrinsicDemanded()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86TargetTransformInfo.h26 class InstCombiner; variable
201 instCombineIntrinsic(InstCombiner &IC, IntrinsicInst &II) const override;
203 simplifyDemandedUseBitsIntrinsic(InstCombiner &IC, IntrinsicInst &II,
207 InstCombiner &IC, IntrinsicInst &II, APInt DemandedElts, APInt &UndefElts,
H A DX86InstCombineIntrinsic.cpp58 static Instruction *simplifyX86MaskedLoad(IntrinsicInst &II, InstCombiner &IC) { in simplifyX86MaskedLoad()
82 static bool simplifyX86MaskedStore(IntrinsicInst &II, InstCombiner &IC) { in simplifyX86MaskedStore()
116 InstCombiner::BuilderTy &Builder) { in simplifyX86immShift()
298 InstCombiner::BuilderTy &Builder) { in simplifyX86varShift()
434 InstCombiner::BuilderTy &Builder, bool IsSigned) { in simplifyX86pack()
500 InstCombiner::BuilderTy &Builder, bool IsSigned, in simplifyX86pmulh()
558 InstCombiner::BuilderTy &Builder, in simplifyX86pmadd()
612 InstCombiner::BuilderTy &Builder) { in simplifyX86movmsk()
643 InstCombiner::BuilderTy &Builder) { in simplifyX86addcarry()
670 InstCombiner::BuilderTy &Builder) { in simplifyTernarylogic()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineSelect.cpp126 InstCombiner::BuilderTy &Builder) { in foldSelectICmpAnd()
573 InstCombiner::BuilderTy &Builder, in foldSelectICmpMinMax()
634 InstCombiner::BuilderTy &Builder) { in foldSelectICmpAndAnd()
682 InstCombiner::BuilderTy &Builder) { in foldSelectICmpAndZeroShl()
720 InstCombiner::BuilderTy &Builder) { in foldSelectICmpLshrAshr()
776 InstCombiner::BuilderTy &Builder) { in foldSelectICmpAndBinOp()
842 InstCombiner::BuilderTy &Builder) { in foldSetClearBits()
928 InstCombiner::BuilderTy &Builder) { in canonicalizeSaturatedSubtract()
993 InstCombiner::BuilderTy &Builder) { in canonicalizeSaturatedAdd()
1097 InstCombiner::BuilderTy &Builder) { in foldAbsDiff()
[all …]
H A DInstCombineNegator.cpp114 if (I->isCommutative() && InstCombiner::getComplexity(I->getOperand(0)) < in getSortedOperandsOfBinOp()
115 InstCombiner::getComplexity(I->getOperand(1))) in getSortedOperandsOfBinOp()
157 InstCombiner::BuilderTy::InsertPointGuard Guard(Builder); in visitImpl()
570 InstCombiner::BuilderTy::InsertPointGuard Guard(IC.Builder); in Negate()
H A DInstCombineAndOrXor.cpp33 InstCombiner::BuilderTy &Builder) { in getNewICmpValue()
43 InstCombiner::BuilderTy &Builder, FMFSource FMF) { in getFCmpValue()
349 InstCombiner::BuilderTy &Builder) { in foldLogOpOfMaskedICmps_NotAllZeros_BMask_Mixed()
499 unsigned LHSMask, unsigned RHSMask, InstCombiner::BuilderTy &Builder) { in foldLogOpOfMaskedICmpsAsymmetric()
529 InstCombiner::BuilderTy &Builder, in foldLogOpOfMaskedICmps()
777 foldAndOrOfICmpsWithPow2AndWithZero(InstCombiner::BuilderTy &Builder, in foldAndOrOfICmpsWithPow2AndWithZero()
842 InstCombiner::BuilderTy &Builder) { in foldSignedTruncationCheck()
937 InstCombiner::BuilderTy &Builder, in foldIsPowerOf2OrZero()
967 InstCombiner::BuilderTy &Builder, in foldIsPowerOf2()
1010 ICmpInst::Predicate PredR, InstCombiner::BuilderTy &Builder) { in foldNegativePower2AndShiftedMask()
[all …]
H A DInstCombineAddSub.cpp180 FAddCombine(InstCombiner::BuilderTy &B) : Builder(B) {} in FAddCombine()
212 InstCombiner::BuilderTy &Builder;
753 InstCombiner::BuilderTy &Builder) { in checkForNegativeOperand()
810 InstCombiner::BuilderTy &Builder) { in foldNoWrapAdd()
883 return SelectInst::Create(X, InstCombiner::AddOne(Op1C), Op1); in foldAddWithConstant()
887 return SelectInst::Create(X, InstCombiner::SubOne(Op1C), Op1); in foldAddWithConstant()
1222 InstCombiner::BuilderTy &Builder) { in canonicalizeLowbitMask()
1265 static Instruction *combineAddSubWithShlAddSub(InstCombiner::BuilderTy &Builder, in combineAddSubWithShlAddSub()
1447 InstCombiner::BuilderTy &Builder) { in factorizeMathWithShlOps()
1774 Value *Add = isa<ZExtInst>(Ext) ? InstCombiner::AddOne(C) in visitAdd()
[all …]
H A DInstCombineVectorOps.cpp1462 InstCombiner::BuilderTy &Builder) { in hoistInsEltConst()
1589 InstCombiner::BuilderTy &Builder) { in narrowInsElt()
1623 InstCombiner::BuilderTy &Builder) { in foldTruncInsEltPair()
2274 NewC = InstCombiner::getSafeVectorConstantForBinop(BOpcode, NewC, true); in foldSelectShuffleWith1Binop()
2294 InstCombiner::BuilderTy &Builder) { in canonicalizeInsertSplat()
2407 NewC = InstCombiner::getSafeVectorConstantForBinop(BOpc, NewC, in foldSelectShuffle()
2506 InstCombiner::BuilderTy &Builder) { in narrowVectorSelect()
2540 InstCombiner::BuilderTy &Builder) { in foldShuffleOfUnaryOps()
2573 InstCombiner::BuilderTy &Builder) { in foldCastShuffle()
H A DInstCombineInternal.h61 : public InstCombiner,
71 : InstCombiner(Worklist, Builder, MinimizeSize, AA, AC, TLI, TTI, DT, ORE, in InstCombinerImpl()
572 using InstCombiner::SimplifyDemandedBits;
H A DInstCombineCompares.cpp541 InstCombiner &IC) { in rewriteGEPAsOffset()
635 InstCombiner &IC) { in transformToIndexedCompare()
1155 InstCombiner::BuilderTy &Builder = IC.Builder; in processUGT_ADDCST_ADD()
2025 InstCombiner::BuilderTy &Builder) { in foldICmpOrXorSubChain()
3765 InstCombiner::BuilderTy &Builder, in foldCtpopPow2Test()
3910 InstCombiner::BuilderTy &Builder) { in foldICmpIntrinsicWithIntrinsic()
4053 InstCombiner::BuilderTy &Builder) { in foldICmpUSubSatOrUAddSatWithConstant()
4138 InstCombiner::BuilderTy &Builder) { in foldICmpOfCmpIntrinsicWithConstant()
4507 InstCombiner &IC) { in foldICmpWithLowBitMaskedVal()
4636 InstCombiner::BuilderTy &Builder) { in foldICmpWithTruncSignExtendedVal()
[all …]
H A DInstCombineMulDivRem.cpp101 InstCombiner::BuilderTy &Builder) { in foldMulSelectToNegate()
143 InstCombiner::BuilderTy &Builder) { in foldMulShl1()
620 InstCombiner::BuilderTy &Builder = IC.Builder; in foldPowiReassoc()
1189 static Value *foldIDivShl(BinaryOperator &I, InstCombiner::BuilderTy &Builder) { in foldIDivShl()
1972 InstCombiner::BuilderTy &Builder) { in foldFDivPowDivisor()
2018 InstCombiner::BuilderTy &Builder) { in foldFDivSqrtDivisor()
2060 InstCombiner::BuilderTy &B, InstCombinerImpl *IC) { in convertFSqrtDivIntoFMul()
H A DInstCombineCasts.cpp707 InstCombiner::BuilderTy &Builder) { in shrinkSplatShuffle()
727 InstCombiner::BuilderTy &Builder) { in shrinkInsertElt()
2005 static Instruction *foldFPtoI(Instruction &FI, InstCombiner &IC) { in foldFPtoI()
2438 InstCombiner::BuilderTy &Builder) { in foldBitCastBitwiseLogic()
2510 InstCombiner::BuilderTy &Builder) { in foldBitCastSelect()
2739 InstCombiner::BuilderTy &Builder, in foldCopySignIdioms()
H A DInstructionCombining.cpp158 InstCombiner::targetInstCombineIntrinsic(IntrinsicInst &II) { in targetInstCombineIntrinsic()
166 std::optional<Value *> InstCombiner::targetSimplifyDemandedUseBitsIntrinsic( in targetSimplifyDemandedUseBitsIntrinsic()
177 std::optional<Value *> InstCombiner::targetSimplifyDemandedVectorEltsIntrinsic( in targetSimplifyDemandedVectorEltsIntrinsic()
191 bool InstCombiner::isValidAddrSpaceCast(unsigned FromAS, unsigned ToAS) const { in isValidAddrSpaceCast()
696 InstCombiner::BuilderTy &Builder, in tryFactorization()
1720 Value *NewOp, InstCombiner &IC) { in foldOperationIntoSelectOperand()
2564 InstCombiner::BuilderTy &Builder) { in foldSelectGEP()
2750 Value *InstCombiner::getFreelyInvertedImpl(Value *V, bool WillInvertAllUses, in getFreelyInvertedImpl()
4350 InstCombiner::BuilderTy &Builder) { in foldFrexpOfSelect()
5839 void InstCombiner::computeBackEdges() { in computeBackEdges()
H A DInstCombineCalls.cpp736 InstCombiner::BuilderTy &Builder) { in simplifyNeonTbl1()
1142 InstCombiner::BuilderTy &Builder) { in moveAddAfterMinMax()
1241 InstCombiner::BuilderTy &Builder) { in foldClampRangeOfTwo()
1315 InstCombiner::BuilderTy &Builder) { in reassociateMinMaxWithConstantInOperand()
1501 InstCombiner::BuilderTy &Builder) { in foldBitOrderCrossLogicOp()
1570 InstCombiner::BuilderTy &Builder) { in foldMinimumOverTrailingOrLeadingZeroCount()
1624 InstCombiner::BuilderTy &Builder) { in foldIntrinsicUsingDistributiveLaws()
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64TargetTransformInfo.cpp978 static std::optional<Instruction *> processPhiNode(InstCombiner &IC, in processPhiNode()
1571 simplifySVEIntrinsicBinOp(InstCombiner &IC, IntrinsicInst &II, in simplifySVEIntrinsicBinOp()
1623 simplifySVEIntrinsic(InstCombiner &IC, IntrinsicInst &II, in simplifySVEIntrinsic()
1678 tryCombineFromSVBoolBinOp(InstCombiner &IC, IntrinsicInst &II) { in tryCombineFromSVBoolBinOp()
1727 instCombineConvertFromSVBool(InstCombiner &IC, IntrinsicInst &II) { in instCombineConvertFromSVBool()
1779 static std::optional<Instruction *> instCombineSVESel(InstCombiner &IC, in instCombineSVESel()
1791 static std::optional<Instruction *> instCombineSVEDup(InstCombiner &IC, in instCombineSVEDup()
1815 static std::optional<Instruction *> instCombineSVEDupX(InstCombiner &IC, in instCombineSVEDupX()
1825 static std::optional<Instruction *> instCombineSVECmpNE(InstCombiner &IC, in instCombineSVECmpNE()
1918 static std::optional<Instruction *> instCombineSVELast(InstCombiner &IC, in instCombineSVELast()
[all …]
H A DAArch64TargetTransformInfo.h138 instCombineIntrinsic(InstCombiner &IC, IntrinsicInst &II) const override;
141 InstCombiner &IC, IntrinsicInst &II, APInt DemandedElts, APInt &UndefElts,
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/InstCombine/
H A DInstCombiner.h48 class LLVM_LIBRARY_VISIBILITY InstCombiner {
101 InstCombiner(InstructionWorklist &Worklist, BuilderTy &Builder, in InstCombiner() function
114 virtual ~InstCombiner() = default;
/freebsd/contrib/llvm-project/llvm/lib/Target/NVPTX/
H A DNVPTXTargetTransformInfo.cpp121 static Instruction *convertNvvmIntrinsicToLlvm(InstCombiner &IC, in convertNvvmIntrinsicToLlvm()
448 handleSpaceCheckIntrinsics(InstCombiner &IC, IntrinsicInst &II) { in handleSpaceCheckIntrinsics()
475 NVPTXTTIImpl::instCombineIntrinsic(InstCombiner &IC, IntrinsicInst &II) const { in instCombineIntrinsic()
H A DNVPTXTargetTransformInfo.h62 instCombineIntrinsic(InstCombiner &IC, IntrinsicInst &II) const override;
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMTargetTransformInfo.h123 instCombineIntrinsic(InstCombiner &IC, IntrinsicInst &II) const override;
125 InstCombiner &IC, IntrinsicInst &II, APInt DemandedElts, APInt &UndefElts,
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DTargetTransformInfo.h52 class InstCombiner; variable
708 instCombineIntrinsic(InstCombiner &IC, IntrinsicInst &II) const;
712 simplifyDemandedUseBitsIntrinsic(InstCombiner &IC, IntrinsicInst &II,
718 InstCombiner &IC, IntrinsicInst &II, APInt DemandedElts, APInt &UndefElts,
H A DTargetTransformInfoImpl.h240 instCombineIntrinsic(InstCombiner &IC, IntrinsicInst &II) const { in instCombineIntrinsic()
245 simplifyDemandedUseBitsIntrinsic(InstCombiner &IC, IntrinsicInst &II, in simplifyDemandedUseBitsIntrinsic()
252 InstCombiner &IC, IntrinsicInst &II, APInt DemandedElts, APInt &UndefElts, in simplifyDemandedVectorEltsIntrinsic()
/freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCTargetTransformInfo.h44 instCombineIntrinsic(InstCombiner &IC, IntrinsicInst &II) const override;
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DTargetTransformInfo.cpp380 TargetTransformInfo::instCombineIntrinsic(InstCombiner &IC, in instCombineIntrinsic()
386 InstCombiner &IC, IntrinsicInst &II, APInt DemandedMask, KnownBits &Known, in simplifyDemandedUseBitsIntrinsic()
393 InstCombiner &IC, IntrinsicInst &II, APInt DemandedElts, APInt &UndefElts, in simplifyDemandedVectorEltsIntrinsic()

12