Home
last modified time | relevance | path

Searched refs:SelectInst (Results 1 – 25 of 108) sorted by relevance

12345

/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/ObjCARC/
H A DProvenanceAnalysis.cpp41 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 DProvenanceAnalysis.h37 class SelectInst; variable
63 bool relatedSelect(const SelectInst *A, const Value *B);
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/
H A DControlHeightReduction.cpp137 SmallVector<SelectInst *, 8> Selects;
660 SelectInst *SI, Region *R, in checkBiasedSelect()
684 for (SelectInst *SI : RI.Selects) { in getBranchInsertPoint()
697 for (SelectInst *SI : RI.Selects) { in getBranchInsertPoint()
887 for (SelectInst *SI : Selects) { in checkScopeHoistable()
892 SelectInst *SI = *it; in checkScopeHoistable()
1030 for (SelectInst *SI : RI.Selects) { in getCHRConditionValuesForRegion()
1108 for (SelectInst *SI : RI.Selects) in getSelectsInScope()
1300 for (SelectInst *SI : RI.Selects) { in classifyBiasedScopes()
1514 if (isa<SelectInst>(U) && cast<SelectInst>(U)->getCondition() == ICmp) in negateICmpIfUsedByBranchOrSelectOnly()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineSelect.cpp1372 if (!isa<SelectInst>(Sel1)) { in canonicalizeClampLike()
2675 return SelectInst::Create(Op, A, Zero); in foldAndOrOfSelectUsingImpliedCond()
2680 return SelectInst::Create(Op, One, A); in foldAndOrOfSelectUsingImpliedCond()
2686 return SelectInst::Create(Op, B, Zero); in foldAndOrOfSelectUsingImpliedCond()
2691 return SelectInst::Create(Op, One, B); in foldAndOrOfSelectUsingImpliedCond()
2932 return SelectInst::Create(InnerSel.Cond, in foldNestedSelects()
3118 if (auto *Op1SI = dyn_cast<SelectInst>(Op1)) in foldSelectOfBools()
3177 return SelectInst::Create(C, A, B); in foldSelectOfBools()
3193 return SelectInst::Create(C, B, A); in foldSelectOfBools()
3631 if (SelectInst *TrueSI = dyn_cast<SelectInst>(TrueVal)) { in visitSelectInst()
[all …]
H A DInstCombineInternal.h149 Instruction *visitSelectInst(SelectInst &SI);
195 bool replacedSelectWithOperand(SelectInst *SI, const ICmpInst *Icmp,
533 bool matchThreeWayIntCompare(SelectInst *SI, Value *&LHS, Value *&RHS,
570 Instruction *foldVectorSelect(SelectInst &Sel);
592 Instruction *FoldOpIntoSelect(Instruction &Op, SelectInst *SI,
625 Instruction *foldSelectICmp(ICmpInst::Predicate Pred, SelectInst *SI,
659 Instruction *foldICmpSelectConstant(ICmpInst &Cmp, SelectInst *Select,
711 Instruction *foldSelectOfBools(SelectInst &SI);
712 Instruction *foldSelectExtConst(SelectInst &Sel);
714 Instruction *foldSelectIntoOp(SelectInst &SI, Value *, Value *);
[all …]
H A DInstCombineMulDivRem.cpp482 return SelectInst::Create(Tr, Y, ConstantInt::getNullValue(Ty)); in visitMul()
849 SelectInst *SI = dyn_cast<SelectInst>(I.getOperand(1)); in simplifyDivRemOfSelectWithZeroOp()
1050 if (Instruction *R = FoldOpIntoSelect(I, cast<SelectInst>(Op1), in commonIDivTransforms()
1149 return SelectInst::Create(Cmp, F1, ConstantInt::get(Ty, 0)); in commonIDivTransforms()
1306 if (SelectInst *SI = dyn_cast<SelectInst>(Op)) in takeLog2()
1537 return SelectInst::Create(Cond, ConstantInt::get(Ty, 1), in visitSDiv()
1581 return SelectInst::Create(Cond, ConstantInt::get(Ty, 1), in visitSDiv()
1735 if (SelectInst *SI = dyn_cast<SelectInst>(Op1)) in visitFDiv()
1740 if (SelectInst *SI = dyn_cast<SelectInst>(Op0)) in visitFDiv()
1980 if (SelectInst *SI = dyn_cast<SelectInst>(Op0I)) { in commonIRemTransforms()
[all …]
H A DInstCombineLoadStoreAlloca.cpp82 if (isa<PHINode, SelectInst>(I)) { in isOnlyCopiedFromConstantMemory()
322 } else if (auto *SI = dyn_cast<SelectInst>(Inst)) { in collectUsersRecursive()
401 } else if (auto *SI = dyn_cast<SelectInst>(I)) { in replace()
402 auto *NewSI = SelectInst::Create( in replace()
821 if (SelectInst *SI = dyn_cast<SelectInst>(P)) { in isObjectSizeLessThanOrEq()
1068 if (SelectInst *SI = dyn_cast<SelectInst>(Op)) { in visitLoadInst()
1086 return SelectInst::Create(SI->getCondition(), V1, V2); in visitLoadInst()
H A DInstCombineAndOrXor.cpp2488 if (auto *SI0 = dyn_cast<SelectInst>(Op0)) { in visitAnd()
2493 if (auto *SI1 = dyn_cast<SelectInst>(Op1)) { in visitAnd()
2585 bool IsLogical = isa<SelectInst>(Op1); in visitAnd()
2602 bool IsLogical = isa<SelectInst>(Op0); in visitAnd()
2662 return SelectInst::Create( in visitAnd()
3377 if (auto *SI0 = dyn_cast<SelectInst>(Op0)) { in visitOr()
3639 bool IsLogical = isa<SelectInst>(Op1); in visitOr()
3656 bool IsLogical = isa<SelectInst>(Op0); in visitOr()
4200 return SelectInst::Create(IsNeg, NegA, A); in canonicalizeAbs()
4777 bool NeedFreeze = isa<SelectInst>(Op0) && isa<SelectInst>(Op1) && B == D; in visitXor()
[all …]
H A DInstCombineAddSub.cpp876 return SelectInst::Create(X, InstCombiner::AddOne(Op1C), Op1); in foldAddWithConstant()
880 return SelectInst::Create(X, InstCombiner::SubOne(Op1C), Op1); in foldAddWithConstant()
2306 return SelectInst::Create(X, InstCombiner::SubOne(C), C); in visitSub()
2309 return SelectInst::Create(X, InstCombiner::AddOne(C), C); in visitSub()
2316 if (SelectInst *SI = dyn_cast<SelectInst>(Op1)) in visitSub()
2483 SelectInst *NewSel = in visitSub()
2567 return SelectInst::Create(IsNeg, NegA, A); in visitSub()
2766 if (auto *OldSel = dyn_cast<SelectInst>(Op)) { in visitFNeg()
2778 SelectInst *NewSel = SelectInst::Create(Cond, P, NegY); in visitFNeg()
2785 SelectInst *NewSel = SelectInst::Create(Cond, NegX, P); in visitFNeg()
[all …]
H A DInstCombineShifts.cpp423 if (SelectInst *SI = dyn_cast<SelectInst>(Op1)) in commonShiftTransforms()
588 SelectInst *SI = cast<SelectInst>(I); in canEvaluateShifted()
852 return SelectInst::Create(Cond, NewOp, NewShift); in FoldShiftByConstant()
869 return SelectInst::Create(Cond, NewShift, NewOp); in FoldShiftByConstant()
1213 return SelectInst::Create(X, NewC, ConstantInt::getNullValue(Ty)); in visitShl()
1345 return SelectInst::Create(X, NewC, ConstantInt::getNullValue(Ty)); in visitLShr()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DDFAJumpThreading.cpp116 SelectInst *SI;
120 SelectInstToUnfold(SelectInst *SI, PHINode *SIUse) : SI(SI), SIUse(SIUse) {} in SelectInstToUnfold()
122 SelectInst *getInst() { return SI; } in getInst()
174 DomTreeUpdater *DTU, SelectInst *SI, PHINode *SIUse, SelectInst *SIToSink, in createBasicBlockAndSinkSelectInst()
200 SelectInst *SI = SIToUnfold.getInst(); in unfold()
218 if (SelectInst *SIOp = dyn_cast<SelectInst>(SI->getTrueValue())) { in unfold()
223 if (SelectInst *SIOp = dyn_cast<SelectInst>(SI->getFalseValue())) { in unfold()
425 } else if (SelectInst *SelI = dyn_cast<SelectInst>(Current)) { in isCandidate()
457 bool isValidSelectInst(SelectInst *SI) { in isValidSelectInst()
463 if (!SIUse && !(isa<PHINode>(SIUse) || isa<SelectInst>(SIUse))) in isValidSelectInst()
[all …]
H A DTailRecursionElimination.cpp421 SmallVector<SelectInst *, 8> RetSelects;
717 SelectInst *SI = SelectInst::Create( in eliminateCall()
790 SelectInst *SI = SelectInst::Create( in cleanupAndFinalize()
800 for (SelectInst *SI : RetSelects) { in cleanupAndFinalize()
H A DSROA.cpp997 static Value *foldSelectInst(SelectInst &SI) { in foldSelectInst()
1015 return foldSelectInst(cast<SelectInst>(I)); in foldPHINodeOrSelectInst()
1377 assert(isa<PHINode>(I) || isa<SelectInst>(I)); in visitPHINodeOrSelectInst()
1898 static bool rewriteSelectInstMemOps(SelectInst &SI, in rewriteSelectInstMemOps()
2705 SmallSetVector<SelectInst *, 8> &SelectUsers;
3663 bool visitSelectInst(SelectInst &SI) { in visitSelectInst()
3971 SelectInst *Sel = cast<SelectInst>(GEPI.getPointerOperand()); in foldGEPSelect()
4063 if (isa<SelectInst>(GEPI.getPointerOperand()) && in visitGetElementPtrInst()
4080 bool visitSelectInst(SelectInst &SI) { in visitSelectInst()
4836 SmallSetVector<SelectInst *, 8> SelectUsers; in rewritePartition()
[all …]
H A DJumpThreading.cpp880 if (SelectInst *SI = dyn_cast<SelectInst>(I)) { in computeValueKnownInPredecessorsImpl()
2760 SelectInst *SI, PHINode *SIUse, in unfoldSelectInstr()
2830 SelectInst *PredSI = dyn_cast<SelectInst>(CondPHI->getIncomingValue(I)); in tryToUnfoldSelect()
2871 SelectInst *SI = dyn_cast<SelectInst>(CondLHS->getIncomingValue(I)); in tryToUnfoldSelect()
2939 auto isUnfoldCandidate = [BB](SelectInst *SI, Value *V) { in tryToUnfoldSelectInCurrBB()
2950 SelectInst *SI = nullptr; in tryToUnfoldSelectInCurrBB()
2957 if (SelectInst *SelectI = dyn_cast<SelectInst>(Cmp->user_back())) in tryToUnfoldSelectInCurrBB()
2962 } else if (SelectInst *SelectI = dyn_cast<SelectInst>(U.getUser())) { in tryToUnfoldSelectInCurrBB()
H A DLowerExpectIntrinsic.cpp381 if (SelectInst *SI = dyn_cast<SelectInst>(&Inst)) { in lowerExpectIntrinsic()
/freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/
H A DSelectOptimize.cpp139 if (isa<SelectInst>(I)) in match()
164 if (auto *Sel = dyn_cast<SelectInst>(I)) in getCondition()
185 if (auto *Sel = dyn_cast<SelectInst>(I)) in getTrueValue()
199 if (auto *Sel = dyn_cast<SelectInst>(I)) in getFalseValue()
219 if (auto *Sel = dyn_cast<SelectInst>(I)) in getTrueOpCost()
245 if (auto *Sel = dyn_cast<SelectInst>(I)) in getFalseOpCost()
510 for (SelectInst *DefSI = dyn_cast<SelectInst>(SI.getI()); in getTrueOrFalseValue()
512 DefSI = dyn_cast<SelectInst>(V)) { in getTrueOrFalseValue()
583 if (isa<SelectInst>(SI.getI()) || !FI->hasOneUse()) { in convertProfitableSIGroups()
763 if (!isa<SelectInst>(NI)) in collectSelectGroups()
[all …]
H A DCodeGenPrepare.cpp440 bool optimizeSelectInst(SelectInst *SI);
1862 if (isa<SelectInst>(U) && cast<SelectInst>(U)->getCondition() == Cmp) in foldICmpWithDominatingICmp()
4014 if (SelectInst *Select = dyn_cast<SelectInst>(V)) { in FillPlaceholders()
4059 if (SelectInst *CurrentSelect = dyn_cast<SelectInst>(Current)) { in InsertPlaceholders()
4062 SelectInst *Select = SelectInst::Create( in InsertPlaceholders()
5392 if (SelectInst *SI = dyn_cast<SelectInst>(V)) { in optimizeMemoryInst()
6918 DefSI = dyn_cast<SelectInst>(V)) { in getTrueOrFalseValue()
7007 SmallVector<SelectInst *, 2> ASI; in optimizeSelectInst()
7011 SelectInst *I = dyn_cast<SelectInst>(&*It); in optimizeSelectInst()
7019 SelectInst *LastSI = ASI.back(); in optimizeSelectInst()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonLoopIdiomRecognition.cpp623 bool matchRightShift(SelectInst *SelI, ParsedValues &PV);
1648 if (SelectInst *Sel = dyn_cast<SelectInst>(BO->getOperand(0))) { in setupPreSimplifier()
1656 if (SelectInst *Sel = dyn_cast<SelectInst>(BO->getOperand(1))) { in setupPreSimplifier()
1670 SelectInst *Sel = dyn_cast<SelectInst>(I); in setupPreSimplifier()
1675 if (SelectInst *Sel0 = dyn_cast<SelectInst>(Sel->getTrueValue())) { in setupPreSimplifier()
1679 if (SelectInst *Sel1 = dyn_cast<SelectInst>(Sel->getFalseValue())) { in setupPreSimplifier()
1828 SelectInst *SI = dyn_cast<SelectInst>(&In); in recognize()
1834 SelectInst *SelI = (T && isa<SelectInst>(T)) ? cast<SelectInst>(T) : SI; in recognize()
1863 SelectInst *SI = dyn_cast<SelectInst>(&In); in recognize()
1868 SelectInst *SelI = dyn_cast_or_null<SelectInst>(T); in recognize()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Analysis/
H A DIVDescriptors.cpp366 if (!Cur->isCommutative() && !IsAPhi && !isa<SelectInst>(Cur) && 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()
643 SelectInst *SI = cast<SelectInst>(I); in isAnyOfPattern()
666 assert((isa<CmpInst>(I) || isa<SelectInst>(I) || isa<CallInst>(I)) && in isMinMaxPattern()
675 if (auto *Select = dyn_cast<SelectInst>(*I->user_begin())) in isMinMaxPattern()
725 SelectInst *SI = dyn_cast<SelectInst>(I); in isConditionalRdxPattern()
[all …]
H A DBasicAliasAnalysis.cpp760 if (const SelectInst *SI = dyn_cast<SelectInst>(V)) { in getModRefInfoMask()
1310 BasicAAResult::aliasSelect(const SelectInst *SI, LocationSize SISize, in aliasSelect()
1315 if (const SelectInst *SI2 = dyn_cast<SelectInst>(V2)) in aliasSelect()
1695 if (const SelectInst *S1 = dyn_cast<SelectInst>(V1)) { in aliasCheckRecursive()
1699 } else if (const SelectInst *S2 = dyn_cast<SelectInst>(V2)) { in aliasCheckRecursive()
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DMemoryBuiltins.h48 class SelectInst; variable
258 SizeOffsetAPInt visitSelectInst(SelectInst &I);
336 SizeOffsetValue visitSelectInst(SelectInst &I);
H A DBasicAliasAnalysis.h31 class SelectInst; variable
137 AliasResult aliasSelect(const SelectInst *SI, LocationSize SISize,
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/
H A DJumpThreading.h42 class SelectInst; variable
158 void unfoldSelectInstr(BasicBlock *Pred, BasicBlock *BB, SelectInst *SI,
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUCodeGenPrepare.cpp156 bool isSigned(const SelectInst &I) const;
208 bool promoteUniformOpToI32(SelectInst &I) const;
311 bool visitSelectInst(SelectInst &I);
396 bool AMDGPUCodeGenPrepareImpl::isSigned(const SelectInst &I) const { in isSigned()
537 bool AMDGPUCodeGenPrepareImpl::promoteUniformOpToI32(SelectInst &I) const { in promoteUniformOpToI32()
692 static SelectInst *findSelectThroughCast(Value *V, CastInst *&Cast) { in findSelectThroughCast()
694 if (SelectInst *Sel = dyn_cast<SelectInst>(V)) in findSelectThroughCast()
698 if (SelectInst *Sel = dyn_cast<SelectInst>(Cast->getOperand(0))) in findSelectThroughCast()
714 SelectInst *Sel = findSelectThroughCast(BO.getOperand(0), CastOp); in foldBinOpIntoSelect()
1679 bool AMDGPUCodeGenPrepareImpl::visitSelectInst(SelectInst &I) { in visitSelectInst()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/IPO/
H A DCalledValuePropagation.cpp182 return visitSelect(*cast<SelectInst>(&I), ChangedValues, SS); in ComputeInstructionState()
300 void visitSelect(SelectInst &I, in visitSelect()

12345