Home
last modified time | relevance | path

Searched refs:DemandedBits (Results 1 – 25 of 27) sorted by relevance

12

/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DDemandedBits.h41 class DemandedBits {
43 DemandedBits(Function &F, AssumptionCache &AC, DominatorTree &DT) : in DemandedBits() function
111 using Result = DemandedBits;
115 LLVM_ABI DemandedBits run(Function &F, FunctionAnalysisManager &AM);
H A DIVDescriptors.h25 class DemandedBits; variable
198 DemandedBits *DB = nullptr, AssumptionCache *AC = nullptr,
208 DemandedBits *DB = nullptr, AssumptionCache *AC = nullptr,
H A DVectorUtils.h121 class DemandedBits; variable
355 computeMinimumValueSizes(ArrayRef<BasicBlock *> Blocks, DemandedBits &DB,
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DDemandedBits.cpp52 void DemandedBits::determineLiveOperandBits( in determineLiveOperandBits()
285 void DemandedBits::performAnalysis() { in performAnalysis()
398 APInt DemandedBits::getDemandedBits(Instruction *I) { in getDemandedBits()
409 APInt DemandedBits::getDemandedBits(Use *U) { in getDemandedBits()
436 bool DemandedBits::isInstructionDead(Instruction *I) { in isInstructionDead()
442 bool DemandedBits::isUseDead(Use *U) { in isUseDead()
467 void DemandedBits::print(raw_ostream &OS) { in print()
551 APInt DemandedBits::determineLiveOperandBitsAdd(unsigned OperandNo, in determineLiveOperandBitsAdd()
559 APInt DemandedBits::determineLiveOperandBitsSub(unsigned OperandNo, in determineLiveOperandBitsSub()
572 DemandedBits DemandedBitsAnalysis::run(Function &F, in run()
[all …]
H A DIVDescriptors.cpp96 DemandedBits *DB, in computeRecurrenceType()
217 RecurrenceDescriptor &RedDes, DemandedBits *DB, AssumptionCache *AC, in AddReductionVar()
990 DemandedBits *DB, AssumptionCache *AC, in isReductionPHI()
H A DVectorUtils.cpp816 llvm::computeMinimumValueSizes(ArrayRef<BasicBlock *> Blocks, DemandedBits &DB, in computeMinimumValueSizes()
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Vectorize/
H A DSLPVectorizer.h33 class DemandedBits; variable
72 DemandedBits *DB = nullptr;
81 DominatorTree *DT_, AssumptionCache *AC_, DemandedBits *DB_,
H A DLoopVectorize.h69 class DemandedBits; variable
150 DemandedBits *DB;
H A DLoopVectorizationLegality.h38 class DemandedBits; variable
258 LoopVectorizationRequirements *R, LoopVectorizeHints *H, DemandedBits *DB, in LoopVectorizationLegality()
632 DemandedBits *DB;
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DTargetLowering.cpp537 const APInt &DemandedBits, in ShrinkDemandedConstant() argument
545 if (DemandedBits.isZero() || DemandedElts.isZero()) in ShrinkDemandedConstant()
549 if (targetShrinkDemandedConstant(Op, DemandedBits, DemandedElts, TLO)) in ShrinkDemandedConstant()
565 if (Opcode == ISD::XOR && DemandedBits.isSubsetOf(C)) in ShrinkDemandedConstant()
568 if (!C.isSubsetOf(DemandedBits)) { in ShrinkDemandedConstant()
570 SDValue NewC = TLO.DAG.getConstant(DemandedBits & C, DL, VT); in ShrinkDemandedConstant()
584 const APInt &DemandedBits, in ShrinkDemandedConstant() argument
590 return ShrinkDemandedConstant(Op, DemandedBits, DemandedElts, TLO); in ShrinkDemandedConstant()
598 const APInt &DemandedBits, in ShrinkDemandedOp() argument
624 unsigned DemandedSize = DemandedBits.getActiveBits(); in ShrinkDemandedOp()
[all …]
H A DDAGCombiner.cpp343 APInt DemandedBits = APInt::getAllOnes(BitWidth); in SimplifyDemandedBits() local
344 return SimplifyDemandedBits(Op, DemandedBits); in SimplifyDemandedBits()
347 bool SimplifyDemandedBits(SDValue Op, const APInt &DemandedBits) { in SimplifyDemandedBits() argument
352 return SimplifyDemandedBits(Op, DemandedBits, DemandedElts, false); in SimplifyDemandedBits()
368 bool SimplifyDemandedBits(SDValue Op, const APInt &DemandedBits,
1435 bool DAGCombiner::SimplifyDemandedBits(SDValue Op, const APInt &DemandedBits, in SimplifyDemandedBits() argument
1440 if (!TLI.SimplifyDemandedBits(Op, DemandedBits, DemandedElts, Known, TLO, 0, in SimplifyDemandedBits()
8688 APInt DemandedBits = APInt::getLowBitsSet(NegBits, Bits); in matchRotateSub() local
8690 TLI.SimplifyMultipleUseDemandedBits(Neg, DemandedBits, DAG)) { in matchRotateSub()
8711 APInt DemandedBits = APInt::getLowBitsSet(PosBits, MaskLoBits); in matchRotateSub() local
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DBDCE.cpp44 static void clearAssumptionsOfUsers(Instruction *I, DemandedBits &DB) { in clearAssumptionsOfUsers()
96 static bool bitTrackingDCE(Function &F, DemandedBits &DB) { in bitTrackingDCE()
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DTargetLowering.h4121 bool ShrinkDemandedConstant(SDValue Op, const APInt &DemandedBits,
4126 bool ShrinkDemandedConstant(SDValue Op, const APInt &DemandedBits,
4133 const APInt &DemandedBits, in targetShrinkDemandedConstant() argument
4144 const APInt &DemandedBits,
4160 bool SimplifyDemandedBits(SDValue Op, const APInt &DemandedBits,
4167 bool SimplifyDemandedBits(SDValue Op, const APInt &DemandedBits,
4174 bool SimplifyDemandedBits(SDValue Op, const APInt &DemandedBits,
4179 bool SimplifyDemandedBits(SDValue Op, const APInt &DemandedBits,
4186 SDValue SimplifyMultipleUseDemandedBits(SDValue Op, const APInt &DemandedBits,
4193 SDValue SimplifyMultipleUseDemandedBits(SDValue Op, const APInt &DemandedBits,
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86ISelLowering.h1289 bool targetShrinkDemandedConstant(SDValue Op, const APInt &DemandedBits,
1321 const APInt &DemandedBits,
1328 SDValue Op, const APInt &DemandedBits, const APInt &DemandedElts,
H A DX86ISelLowering.cpp38401 const APInt &DemandedBits, in targetShrinkDemandedConstant() argument
38427 unsigned ActiveBits = DemandedBits.getActiveBits(); in targetShrinkDemandedConstant()
38457 APInt ShrunkMask = Mask & DemandedBits; in targetShrinkDemandedConstant()
38481 if (!ZeroExtendMask.isSubsetOf(Mask | ~DemandedBits)) in targetShrinkDemandedConstant()
44952 SDValue Op, const APInt &DemandedBits, const APInt &DemandedElts, in SimplifyMultipleUseDemandedBitsForTargetNode() argument
44975 unsigned BitWidth = DemandedBits.getBitWidth(); in SimplifyMultipleUseDemandedBitsForTargetNode()
44977 unsigned UpperDemandedBits = BitWidth - DemandedBits.countr_zero(); in SimplifyMultipleUseDemandedBitsForTargetNode()
44985 if (DemandedBits.isSignMask()) in SimplifyMultipleUseDemandedBitsForTargetNode()
44991 if (DemandedBits.isSignMask() && in SimplifyMultipleUseDemandedBitsForTargetNode()
45019 if (DemandedBits.isSubsetOf(RHSKnown.Zero | LHSKnown.Zero)) in SimplifyMultipleUseDemandedBitsForTargetNode()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVISelLowering.h143 bool targetShrinkDemandedConstant(SDValue Op, const APInt &DemandedBits,
157 bool SimplifyDemandedBitsForTargetNode(SDValue Op, const APInt &DemandedBits,
H A DRISCVISelLowering.cpp20828 SDValue Op, const APInt &DemandedBits, const APInt &DemandedElts, in targetShrinkDemandedConstant() argument
20849 APInt ShrunkMask = Mask & DemandedBits; in targetShrinkDemandedConstant()
20853 APInt ExpandedMask = Mask | ~DemandedBits; in targetShrinkDemandedConstant()
21179 APInt DemandedBits = in SimplifyDemandedBitsForTargetNode() local
21182 if (SimplifyDemandedBits(Op.getOperand(0), DemandedBits, in SimplifyDemandedBitsForTargetNode()
/freebsd/contrib/llvm-project/llvm/lib/Target/LoongArch/
H A DLoongArchISelLowering.h321 bool SimplifyDemandedBitsForTargetNode(SDValue Op, const APInt &DemandedBits,
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMISelLowering.h533 bool targetShrinkDemandedConstant(SDValue Op, const APInt &DemandedBits,
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64ISelLowering.h111 bool targetShrinkDemandedConstant(SDValue Op, const APInt &DemandedBits,
H A DAArch64ISelLowering.cpp2418 uint64_t DemandedBits = Demanded.getZExtValue(); in optimizeLogicalImm() local
2421 Imm &= DemandedBits; in optimizeLogicalImm()
2431 uint64_t NonDemandedBits = ~DemandedBits; in optimizeLogicalImm()
2432 uint64_t InvertedImm = ~Imm & DemandedBits; in optimizeLogicalImm()
2453 uint64_t Hi = Imm >> EltSize, DemandedBitsHi = DemandedBits >> EltSize; in optimizeLogicalImm()
2456 if (((Imm ^ Hi) & (DemandedBits & DemandedBitsHi) & Mask) != 0) in optimizeLogicalImm()
2461 DemandedBits |= DemandedBitsHi; in optimizeLogicalImm()
2500 SDValue Op, const APInt &DemandedBits, const APInt &DemandedElts, in targetShrinkDemandedConstant() argument
2519 if (DemandedBits.popcount() == Size) in targetShrinkDemandedConstant()
2540 return optimizeLogicalImm(Op, Size, Imm, DemandedBits, TLO, NewOpc); in targetShrinkDemandedConstant()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineCasts.cpp331 auto DemandedBits = Trunc->getType()->getScalarSizeInBits(); in canEvaluateTruncated() local
332 if ((MaxShiftAmt + DemandedBits).ule(BitWidth)) in canEvaluateTruncated()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DLoopVectorize.cpp912 const TargetLibraryInfo *TLI, DemandedBits *DB, in LoopVectorizationCostModel()
1707 DemandedBits *DB;
9419 TargetLibraryInfo *TLI, DemandedBits *DB, AssumptionCache *AC, in processLoopInVPlanNativePath()
/freebsd/lib/clang/libllvm/
H A DMakefile103 SRCS_MIN+= Analysis/DemandedBits.cpp
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DSIISelLowering.cpp15635 APInt DemandedBits = APInt::getBitsSet(32, 8 * Offset, 8 * Offset + 8); in performCvtF32UByteNCombine() local
15636 if (TLI.SimplifyDemandedBits(Src, DemandedBits, DCI)) { in performCvtF32UByteNCombine()
15646 TLI.SimplifyMultipleUseDemandedBits(Src, DemandedBits, DAG)) in performCvtF32UByteNCombine()

12