| /freebsd-src/contrib/llvm-project/llvm/lib/Transforms/ObjCARC/ |
| H A D | ProvenanceAnalysis.cpp | 41 bool ProvenanceAnalysis::relatedSelect(const SelectInst *A, in relatedSelect() 45 if (const SelectInst *SB = dyn_cast<SelectInst>(B)) in relatedSelect() 150 if (const SelectInst *S = dyn_cast<SelectInst>(A)) in relatedCheck() 152 if (const SelectInst *S = dyn_cast<SelectInst>(B)) in relatedCheck()
|
| H A D | ProvenanceAnalysis.h | 37 class SelectInst; variable 63 bool relatedSelect(const SelectInst *A, const Value *B);
|
| /freebsd-src/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/ |
| H A D | ControlHeightReduction.cpp | 138 SmallVector<SelectInst *, 8> Selects; 275 DenseSet<SelectInst *> TrueBiasedSelects; 276 DenseSet<SelectInst *> FalseBiasedSelects; 355 void fixupSelect(SelectInst *SI, CHRScope *Scope, IRBuilder<> &IRB, 386 DenseSet<SelectInst *> TrueBiasedSelectsGlobal; 388 DenseSet<SelectInst *> FalseBiasedSelectsGlobal; 392 DenseMap<SelectInst *, BranchProbability> SelectBiasMap; 471 return isa<BinaryOperator>(I) || isa<CastInst>(I) || isa<SelectInst>(I) || in isHoistableInstructionType() 661 SelectInst *SI, Region *R, in checkBiasedSelect() 662 DenseSet<SelectInst *> in checkBiasedSelect() 663 checkBiasedSelect(SelectInst * SI,Region * R,DenseSet<SelectInst * > & TrueBiasedSelectsGlobal,DenseSet<SelectInst * > & FalseBiasedSelectsGlobal,DenseMap<SelectInst *,BranchProbability> & SelectBiasMap) checkBiasedSelect() argument [all...] |
| /freebsd-src/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineSelect.cpp | 55 static Instruction *foldSelectBinOpIdentity(SelectInst &Sel, in foldSelectBinOpIdentity() 122 static Value *foldSelectICmpAnd(SelectInst &Sel, ICmpInst *Cmp, in foldSelectICmpAnd() 271 Instruction *InstCombinerImpl::foldSelectOpOp(SelectInst &SI, Instruction *TI, in foldSelectOpOp() 510 Instruction *InstCombinerImpl::foldSelectIntoOp(SelectInst &SI, Value *TrueVal, in foldSelectIntoOp() 514 auto TryFoldSelectIntoOp = [&](SelectInst &SI, Value *TrueVal, in foldSelectIntoOp() 818 static Instruction *foldSetClearBits(SelectInst &Sel, in foldSetClearBits() 858 static Instruction *foldSelectZeroOrMul(SelectInst &SI, InstCombinerImpl &IC) { in foldSelectZeroOrMul() 1286 Instruction *InstCombinerImpl::foldSelectValueEquivalence(SelectInst &Sel, in foldSelectValueEquivalence() 1393 static Value *canonicalizeClampLike(SelectInst &Sel0, ICmpInst &Cmp0, in canonicalizeClampLike() 1410 if (!isa<SelectInst>(Sel in canonicalizeClampLike() [all...] |
| H A D | InstCombineInternal.h | 150 Instruction *visitSelectInst(SelectInst &SI); 196 bool replacedSelectWithOperand(SelectInst *SI, const ICmpInst *Icmp, 452 Instruction *foldAndOrOfSelectUsingImpliedCond(Value *Op, SelectInst &SI, in CreateNonTerminatorUnreachable() 544 bool matchThreeWayIntCompare(SelectInst *SI, Value *&LHS, Value *&RHS, 592 Instruction *foldVectorSelect(SelectInst &Sel); 614 Instruction *FoldOpIntoSelect(Instruction &Op, SelectInst *SI, 647 Instruction *foldSelectICmp(ICmpInst::Predicate Pred, SelectInst *SI, 681 Instruction *foldICmpSelectConstant(ICmpInst &Cmp, SelectInst *Select, 733 Instruction *foldSelectOfBools(SelectInst &SI); 734 Instruction *foldSelectExtConst(SelectInst [all...] |
| H A D | InstCombineMulDivRem.cpp | 470 return SelectInst::Create(X, Op1, ConstantInt::getNullValue(Ty)); in visitMul() 472 return SelectInst::Create(X, Op0, ConstantInt::getNullValue(Ty)); in visitMul() 478 return SelectInst::Create(X, Builder.CreateNeg(Y, "", I.hasNoSignedWrap()), in visitMul() 486 return SelectInst::Create(X, NegC, ConstantInt::getNullValue(Ty)); in visitMul() 495 return SelectInst::Create(IsNeg, NegC, ConstantInt::getNullValue(Ty)); in visitMul() 506 return SelectInst::Create(IsNeg, Y, ConstantInt::getNullValue(Ty)); in visitMul() 512 return SelectInst::Create(Tr, Y, ConstantInt::getNullValue(Ty)); in visitMul() 916 auto *SI = SelectInst::Create(X, Op1, ConstantFP::get(I.getType(), 0.0)); in multiplyOverflows() 922 auto *SI = SelectInst::Create(X, Op0, ConstantFP::get(I.getType(), 0.0)); 986 SelectInst *S in foldIDivShl() [all...] |
| H A D | InstCombineLoadStoreAlloca.cpp | 82 if (isa<PHINode, SelectInst>(I)) { in isOnlyCopiedFromConstantMemory() 322 } else if (auto *SI = dyn_cast<SelectInst>(Inst)) { in collectUsersRecursive() 396 } else if (auto *SI = dyn_cast<SelectInst>(I)) { in replace() 403 auto *NewSI = SelectInst::Create(SI->getCondition(), TrueValue, FalseValue, in replace() 820 if (SelectInst *SI = dyn_cast<SelectInst>(P)) { in isObjectSizeLessThanOrEq() 1067 if (SelectInst *SI = dyn_cast<SelectInst>(Op)) { in visitLoadInst() 1085 return SelectInst::Create(SI->getCondition(), V1, V2); in visitLoadInst()
|
| H A D | InstCombineAndOrXor.cpp | 1602 return SelectInst::Create(Cond, Builder.CreateNeg(X, X->getName() + ".neg"), in matchDeMorgansLaws() 2364 return SelectInst::Create(Cmp, ConstantInt::getNullValue(Ty), Y); in visitAnd() 2524 return SelectInst::Create(Cmp, ConstantInt::get(Ty, *C), in visitAnd() 2544 return SelectInst::Create(Cmp, ConstantInt::get(Ty, *C3), in visitAnd() 2561 return SelectInst::Create(Cmp, ConstantInt::get(Ty, *C3), in visitAnd() 2605 if (auto *SI0 = dyn_cast<SelectInst>(Op0)) { in visitAnd() 2610 if (auto *SI1 = dyn_cast<SelectInst>(Op1)) { in visitAnd() 2695 bool IsLogical = isa<SelectInst>(Op1); in visitAnd() 2712 bool IsLogical = isa<SelectInst>(Op0); in visitAnd() 2752 return SelectInst in matchFunnelShift() [all...] |
| H A D | InstCombineAddSub.cpp | 883 return SelectInst::Create(X, InstCombiner::AddOne(Op1C), Op1); in foldAddWithConstant() 887 return SelectInst::Create(X, InstCombiner::SubOne(Op1C), Op1); in foldAddWithConstant() 2299 return SelectInst::Create(X, InstCombiner::SubOne(C), C); in visitSub() 2302 return SelectInst::Create(X, InstCombiner::AddOne(C), C); in visitSub() 2309 if (SelectInst *SI = dyn_cast<SelectInst>(Op1)) in visitSub() 2456 return SelectInst::Create(C, Builder.CreateNeg(X), X); in visitSub() 2458 return SelectInst::Create(C, X, Builder.CreateNeg(X)); in visitSub() 2493 SelectInst *NewSel = in visitSub() 2494 SelectInst in visitSub() [all...] |
| H A D | InstCombineShifts.cpp | 426 if (SelectInst *SI = dyn_cast<SelectInst>(Op1)) in commonShiftTransforms() 598 SelectInst *SI = cast<SelectInst>(I); in canEvaluateShifted() 871 return SelectInst::Create(Cond, NewOp, NewShift); in FoldShiftByConstant() 888 return SelectInst::Create(Cond, NewShift, NewOp); in foldLShrOverflowBit() 1234 return SelectInst::Create(X, NewC, ConstantInt::getNullValue(Ty)); 1429 return SelectInst::Create(X, NewC, ConstantInt::getNullValue(Ty)); in visitLShr()
|
| /freebsd-src/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | DFAJumpThreading.cpp | 122 SelectInst *SI; in getInst() 126 SelectInstToUnfold(SelectInst *SI, PHINode *SIUse) : SI(SI), SIUse(SIUse) {} 128 SelectInst *getInst() { return SI; } 182 DomTreeUpdater *DTU, SelectInst *SI, PHINode *SIUse, SelectInst *SIToSink, in createBasicBlockAndSinkSelectInst() 208 SelectInst *SI = SIToUnfold.getInst(); in unfold() 226 if (SelectInst *SIOp = dyn_cast<SelectInst>(SI->getTrueValue())) { in unfold() 231 if (SelectInst *SIOp = dyn_cast<SelectInst>(S in unfold() [all...] |
| H A D | TailRecursionElimination.cpp | 421 SmallVector<SelectInst *, 8> RetSelects; 719 SelectInst *SI = in eliminateCall() 720 SelectInst::Create(RetKnownPN, RetPN, Ret->getReturnValue(), in eliminateCall() 794 SelectInst *SI = in cleanupAndFinalize() 795 SelectInst::Create(RetKnownPN, RetPN, RI->getOperand(0), in cleanupAndFinalize() 805 for (SelectInst *SI : RetSelects) { in cleanupAndFinalize()
|
| H A D | SROA.cpp | 212 SmallMapVector<SelectInst *, RewriteableMemOps, 8> SelectsToRewrite; 231 isSafeSelectToSpeculate(SelectInst &SI, bool PreserveCFG); 988 static Value *foldSelectInst(SelectInst &SI) { 1006 return foldSelectInst(cast<SelectInst>(I)); in foldSelectInst() 1317 !isa<SelectInst>(I) && !isa<AddrSpaceCastInst>(I)) { in visitIntrinsicInst() 1330 assert(isa<PHINode>(I) || isa<SelectInst>(I)); in hasUnsafePHIOrSelectUse() 1389 void visitSelectInst(SelectInst &SI) { visitPHINodeOrSelectInst(SI); } in visitPHINodeOrSelectInst() 1684 isSafeLoadOfSelectToSpeculate(LoadInst &LI, SelectInst &SI, bool PreserveCFG) { in speculatePHINodeLoads() 1700 SROA::isSafeSelectToSpeculate(SelectInst &SI, bool PreserveCFG) { in speculatePHINodeLoads() 1746 static void speculateSelectInstLoads(SelectInst 2728 AllocaSliceRewriter(const DataLayout & DL,AllocaSlices & AS,SROA & Pass,AllocaInst & OldAI,AllocaInst & NewAI,uint64_t NewAllocaBeginOffset,uint64_t NewAllocaEndOffset,bool IsIntegerPromotable,VectorType * PromotableVecTy,SmallSetVector<PHINode *,8> & PHIUsers,SmallSetVector<SelectInst *,8> & SelectUsers) AllocaSliceRewriter() argument [all...] |
| H A D | JumpThreading.cpp | 869 if (SelectInst *SI = dyn_cast<SelectInst>(I)) { in computeValueKnownInPredecessorsImpl() 2754 SelectInst *SI, PHINode *SIUse, 2824 SelectInst *PredSI = dyn_cast<SelectInst>(CondPHI->getIncomingValue(I)); in tryToUnfoldSelect() 2865 SelectInst *SI = dyn_cast<SelectInst>(CondLHS->getIncomingValue(I)); in tryToUnfoldSelect() 2931 auto isUnfoldCandidate = [BB](SelectInst *SI, Value *V) { in tryToUnfoldSelectInCurrBB() 2942 SelectInst *SI = nullptr; in tryToUnfoldSelectInCurrBB() 2949 if (SelectInst *Select in tryToUnfoldSelectInCurrBB() [all...] |
| H A D | LowerExpectIntrinsic.cpp | 275 // Handle both BranchInst and SelectInst. in handleBrSelExpect() 383 if (SelectInst *SI = dyn_cast<SelectInst>(&Inst)) { in lowerExpectIntrinsic()
|
| /freebsd-src/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | SelectOptimize.cpp | 127 /// SelectLike is an abstraction over SelectInst and other operations that can 143 if (isa<SelectInst>(I)) in match() 176 if (auto *Sel = dyn_cast<SelectInst>(I)) in getCondition() 210 if (auto *Sel = dyn_cast<SelectInst>(I)) in getFalseValue() 226 if (auto *Sel = dyn_cast<SelectInst>(I)) in getTrueOpCost() 246 if (isa<SelectInst>(I)) in getFalseOpCost() 272 if (isa<SelectInst>(I)) 537 for (SelectInst *DefSI = dyn_cast<SelectInst>(SI.getI()); in convertProfitableSIGroups() 539 DefSI = dyn_cast<SelectInst>( in convertProfitableSIGroups() [all...] |
| H A D | CodeGenPrepare.cpp | 440 bool optimizeSelectInst(SelectInst *SI); 1854 // If icmp eq has users other than BranchInst and SelectInst, converting it to in foldICmpWithDominatingICmp() 1859 if (isa<SelectInst>(U) && cast<SelectInst>(U)->getCondition() == Cmp) in foldICmpWithDominatingICmp() 1901 if (auto *SI = dyn_cast<SelectInst>(U)) { in foldICmpWithDominatingICmp() 3696 SmallPtrSet<SelectInst *, 32> AllSelectNodes; 3726 if (auto *Select = dyn_cast<SelectInst>(PI)) in addNewAddrMode() 3754 void insertNewSelect(SelectInst *SI) { AllSelectNodes.insert(SI); } in addNewAddrMode() 4108 if (SelectInst *Select = dyn_cast<SelectInst>( in matchScaledValue() [all...] |
| /freebsd-src/contrib/llvm-project/llvm/lib/Target/Hexagon/ |
| H A D | HexagonLoopIdiomRecognition.cpp | 622 bool matchLeftShift(SelectInst *SelI, Value *CIV, ParsedValues &PV); 623 bool matchRightShift(SelectInst *SelI, ParsedValues &PV); 624 bool scanSelect(SelectInst *SI, BasicBlock *LoopB, BasicBlock *PrehB, 683 bool PolynomialMultiplyRecognize::matchLeftShift(SelectInst *SelI, in matchLeftShift() 797 bool PolynomialMultiplyRecognize::matchRightShift(SelectInst *SelI, 867 bool PolynomialMultiplyRecognize::scanSelect(SelectInst *SelI, in matchRightShift() 1642 if (SelectInst *Sel = dyn_cast<SelectInst>(BO->getOperand(0))) { in setupPreSimplifier() 1650 if (SelectInst *Sel = dyn_cast<SelectInst>(B in setupPreSimplifier() [all...] |
| /freebsd-src/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | IVDescriptors.cpp | 366 if (!Cur->isCommutative() && !IsAPhi && !isa<SelectInst>(Cur) && in AddReductionVar() 385 if (auto *Sel = dyn_cast<SelectInst>(ReduxDesc.getPatternInst())) { in AddReductionVar() 402 bool IsASelect = isa<SelectInst>(Cur); in AddReductionVar() 420 (isa<ICmpInst>(Cur) || isa<SelectInst>(Cur))) in AddReductionVar() 423 (isa<FCmpInst>(Cur) || isa<SelectInst>(Cur))) in AddReductionVar() 486 !isa<SelectInst>(UI)) || in AddReductionVar() 634 if (auto *Select = dyn_cast<SelectInst>(*I->user_begin())) in isAnyOfPattern() 642 SelectInst *SI = cast<SelectInst>(I); in isAnyOfPattern() 665 assert((isa<CmpInst>(I) || isa<SelectInst>( in isMinMaxPattern() [all...] |
| H A D | BasicAliasAnalysis.cpp | 792 if (const SelectInst *SI = dyn_cast<SelectInst>(V)) { 1383 BasicAAResult::aliasSelect(const SelectInst *SI, LocationSize SISize, in aliasPHI() 1388 if (const SelectInst *SI2 = dyn_cast<SelectInst>(V2)) in aliasPHI() 1788 if (const SelectInst *S1 = dyn_cast<SelectInst>(V1)) { in constantOffsetHeuristic() 1792 } else if (const SelectInst *S2 = dyn_cast<SelectInst>(V2)) { in constantOffsetHeuristic()
|
| /freebsd-src/contrib/llvm-project/llvm/include/llvm/Analysis/ |
| H A D | MemoryBuiltins.h | 48 class SelectInst; variable 260 SizeOffsetAPInt visitSelectInst(SelectInst &I); 338 SizeOffsetValue visitSelectInst(SelectInst &I);
|
| H A D | BasicAliasAnalysis.h | 31 class SelectInst; variable 137 AliasResult aliasSelect(const SelectInst *SI, LocationSize SISize,
|
| /freebsd-src/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/ |
| H A D | JumpThreading.h | 43 class SelectInst; 158 void unfoldSelectInstr(BasicBlock *Pred, BasicBlock *BB, SelectInst *SI, 42 class SelectInst; global() variable
|
| /freebsd-src/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
| H A D | AMDGPUCodeGenPrepare.cpp | 157 bool isSigned(const SelectInst &I) const; 209 bool promoteUniformOpToI32(SelectInst &I) const; 312 bool visitSelectInst(SelectInst &I); 398 bool AMDGPUCodeGenPrepareImpl::isSigned(const SelectInst &I) const { in isSigned() 539 bool AMDGPUCodeGenPrepareImpl::promoteUniformOpToI32(SelectInst &I) const { in promoteUniformOpToI32() 694 static SelectInst *findSelectThroughCast(Value *V, CastInst *&Cast) { in findSelectThroughCast() 696 if (SelectInst *Sel = dyn_cast<SelectInst>(V)) in findSelectThroughCast() 700 if (SelectInst *Sel = dyn_cast<SelectInst>(Cas in findSelectThroughCast() [all...] |
| /freebsd-src/contrib/llvm-project/llvm/lib/Transforms/IPO/ |
| H A D | CalledValuePropagation.cpp | 183 return visitSelect(*cast<SelectInst>(&I), ChangedValues, SS); in ComputeInstructionState() 301 void visitSelect(SelectInst &I, in visitSelect()
|