Home
last modified time | relevance | path

Searched refs:hasOneUse (Results 1 – 25 of 161) sorted by relevance

1234567

/freebsd-12-stable/contrib/llvm-project/llvm/lib/Target/RISCV/
DRISCVMergeBaseOffset.cpp86 !MRI->hasOneUse(HiLUI.getOperand(0).getReg())) in INITIALIZE_PASS()
94 !MRI->hasOneUse(LoADDI->getOperand(0).getReg())) in INITIALIZE_PASS()
143 if (!MRI->hasOneUse(Reg)) in matchLargeOffset()
159 !MRI->hasOneUse(OffsetLui.getOperand(0).getReg())) in matchLargeOffset()
182 assert(MRI->hasOneUse(DestReg) && "expected one use for LoADDI"); in detectAndFoldOffset()
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
DInstCombineAndOrXor.cpp100 if (!OldLHS->hasOneUse() && !OldRHS->hasOneUse()) in SimplifyBSwap()
105 if (!OldLHS->hasOneUse()) in SimplifyBSwap()
1013 (ZeroICmp->hasOneUse() || UnsignedICmp->hasOneUse())) { in foldUnsignedUnderflowCheck()
1118 if (!Cmp0->hasOneUse() || !Cmp1->hasOneUse()) in foldEqOfParts()
1198 if (!Cmp1->hasOneUse()) in foldAndOrOfICmpsWithConstEq()
1290 if (PredL == ICmpInst::ICMP_EQ && PredL == PredR && LHS->hasOneUse() && in foldAndOfICmps()
1291 RHS->hasOneUse()) { in foldAndOfICmps()
1542 !InstCombiner::isFreeToInvert(A, A->hasOneUse()) && in matchDeMorgansLaws()
1543 !InstCombiner::isFreeToInvert(B, B->hasOneUse())) { in matchDeMorgansLaws()
1691 if (Op0->hasOneUse() || Op1->hasOneUse()) in foldAndToXor()
[all …]
DInstCombineSelect.cpp177 if (!Cmp->hasOneUse()) in foldSelectICmpAnd()
301 (!TI->hasOneUse() || !FI->hasOneUse())) in foldSelectOpOp()
303 } else if (!TI->hasOneUse() || !FI->hasOneUse()) { in foldSelectOpOp()
321 (TI->hasOneUse() || FI->hasOneUse())) { in foldSelectOpOp()
332 (TII->hasOneUse() || FII->hasOneUse())) { in foldSelectOpOp()
361 !TI->hasOneUse() || !FI->hasOneUse()) in foldSelectOpOp()
436 if (TVI->hasOneUse() && !isa<Constant>(FalseVal)) { in foldSelectIntoOp()
468 if (FVI->hasOneUse() && !isa<Constant>(TrueVal)) { in foldSelectIntoOp()
513 if (!(Cmp->hasOneUse() && Cmp->getOperand(0)->hasOneUse() && in foldSelectICmpAndAnd()
662 (IC->hasOneUse() + Or->hasOneUse())) in foldSelectICmpAndOr()
[all …]
DInstCombineCompares.cpp916 (GEPLHS->hasAllConstantIndices() || GEPLHS->hasOneUse()) && in foldGEPICmp()
917 (GEPRHS->hasAllConstantIndices() || GEPRHS->hasOneUse()) && in foldGEPICmp()
996 if (GEPsInBounds && (isa<ConstantExpr>(GEPLHS) || GEPLHS->hasOneUse()) && in foldGEPICmp()
997 (isa<ConstantExpr>(GEPRHS) || GEPRHS->hasOneUse())) { in foldGEPICmp()
1252 if (!AddWithCst->hasOneUse()) in processUGT_ADDCST_ADD()
1528 if (Cmp.hasOneUse() && in foldICmpWithDominatingICmp()
1557 if (Cmp.isEquality() && Trunc->hasOneUse()) { in foldICmpTruncConstant()
1620 if (Xor->hasOneUse()) { in foldICmpXorConstant()
1728 if (Shift->hasOneUse() && C1.isNullValue() && Cmp.isEquality() && in foldICmpAndShift()
1762 if (!And->hasOneUse()) in foldICmpAndConstConst()
[all …]
DInstCombineCasts.cpp116 if (!AI.hasOneUse() && CastElTyAlign == AllocElTyAlign) return nullptr; in PromoteCastOfAllocation()
127 if (!AI.hasOneUse() && CastElTyStoreSize < AllocElTyStoreSize) return nullptr; in PromoteCastOfAllocation()
168 if (!AI.hasOneUse()) { in PromoteCastOfAllocation()
289 if (CSrc->hasOneUse()) in commonCastTransforms()
364 if (!V->hasOneUse()) in canNotEvaluateInType()
502 if (!TruncOp->hasOneUse() || !isa<IntegerType>(DestType)) in foldVecTruncToExtElt()
701 if (Shuf && Shuf->hasOneUse() && match(Shuf->getOperand(1), m_Undef()) && in shrinkSplatShuffle()
725 if (!InsElt || !InsElt->hasOneUse()) in shrinkInsertElt()
862 if (Src->hasOneUse()) { in visitTrunc()
902 if (Src->hasOneUse() && in visitTrunc()
[all …]
DInstCombineVectorOps.cpp121 if (!PHIUser->hasOneUse() || !(PHIUser->user_back() == PN) || in scalarizePHI()
246 if (!X->hasOneUse() || !Ext.getVectorOperand()->hasOneUse()) in foldBitcastExtElt()
257 if (!Ext.getVectorOperand()->hasOneUse()) in foldBitcastExtElt()
380 if (SrcVec->hasOneUse()) { in visitExtractElementInst()
457 if (IndexC && IdxVal < EC.getKnownMinValue() && GEP->hasOneUse()) { in visitExtractElementInst()
521 if (CI->hasOneUse() && (CI->getOpcode() != Instruction::BitCast)) { in visitExtractElementInst()
651 if (InsElt->hasOneUse() && isa<InsertElementInst>(InsElt->user_back())) in replaceExtractElements()
1064 while (V->hasOneUse() && Depth < 10) { in visitInsertValueInst()
1117 if (InsElt.hasOneUse() && isa<InsertElementInst>(InsElt.user_back())) in foldInsSequenceIntoSplat()
1149 (!CurrIE->hasOneUse() && (NextIE != nullptr || !Idx->isZero()))) in foldInsSequenceIntoSplat()
[all …]
DInstructionCombining.cpp313 if (!Cast || !Cast->hasOneUse()) in simplifyAssocCastAssoc()
327 if (!BinOp2 || !BinOp2->hasOneUse() || BinOp2->getOpcode() != AssocOpcode) in simplifyAssocCastAssoc()
642 if (!V && LHS->hasOneUse() && RHS->hasOneUse()) in tryFactorization()
662 if (!V && LHS->hasOneUse() && RHS->hasOneUse()) in tryFactorization()
866 if (LHS->hasOneUse() && RHS->hasOneUse()) { in SimplifySelectsFeedingBinaryOp()
872 } else if (LHSIsSelect && LHS->hasOneUse()) { in SimplifySelectsFeedingBinaryOp()
877 } else if (RHSIsSelect && RHS->hasOneUse()) { in SimplifySelectsFeedingBinaryOp()
1004 if (!SI->hasOneUse()) in FoldOpIntoSelect()
1039 if (CI->hasOneUse()) { in FoldOpIntoSelect()
1105 if (!PN->hasOneUse()) { in foldOpIntoPhi()
[all …]
DInstCombineMulDivRem.cpp55 if (!V->hasOneUse()) return nullptr; in simplifyValueKnownNonZero()
205 if (Op0->hasOneUse() && match(Op1, m_NegatedPower2())) { in visitMul()
277 if (Div && Div->hasOneUse() && in visitMul()
331 (Op0->hasOneUse() || Op1->hasOneUse() || X == Y)) { in visitMul()
341 (Op0->hasOneUse() || Op1->hasOneUse())) { in visitMul()
416 (Op0->hasOneUse() || Op1->hasOneUse())) { in foldFPSignBitOps()
484 if (Op0->hasOneUse() && C1DivC->isNormalFP()) in visitFMul()
656 if (SI->use_empty() && SelectCond->hasOneUse()) in simplifyDivRemOfSelectWithZeroOp()
980 X->getType() == Y->getType() && (N->hasOneUse() || D->hasOneUse())) { in narrowUDivURem()
1288 if (!II || !II->hasOneUse() || !I.hasAllowReassoc() || in foldFDivPowDivisor()
[all …]
DInstCombineAddSub.cpp471 InstQuota = ((!isa<Constant>(V0) && V0->hasOneUse()) && in simplify()
472 (!isa<Constant>(V1) && V1->hasOneUse())) ? 2 : 1; in simplify()
773 if (!LHS->hasOneUse() && !RHS->hasOneUse()) in checkForNegativeOperand()
950 if (Op0->hasOneUse() && *C2 == -(*C)) { in foldAddWithConstant()
966 if (C->isOneValue() && Op0->hasOneUse()) { in foldAddWithConstant()
1261 if (!Op0 || !Op1 || !(Op0->hasOneUse() || Op1->hasOneUse())) in factorizeMathWithShlOps()
1384 if (SI && SI->hasOneUse()) { in visitAdd()
1589 if (LHSConv->hasOneUse() && in visitFAdd()
1608 (LHSConv->hasOneUse() || RHSConv->hasOneUse()) && in visitFAdd()
1700 ((NumNonConstantIndices1 > 0 && !GEP1->hasOneUse()) || in OptimizePointerDifference()
[all …]
DInstCombineShifts.cpp199 !Trunc->hasOneUse()) in dropRedundantMaskingOfLeftShiftInput()
303 if (!Masked->hasOneUse()) in dropRedundantMaskingOfLeftShiftInput()
334 if (!LogicInst || !LogicInst->isBitwiseLogicOp() || !LogicInst->hasOneUse()) in foldShiftOfShiftedLogic()
414 if (Op1->hasOneUse() && match(Op1, m_SRem(m_Value(A), m_Constant(C))) && in commonShiftTransforms()
494 if (!I->hasOneUse()) return false; in canEvaluateShifted()
731 if (Op0->hasOneUse()) { in FoldShiftByConstant()
744 if (isLeftShift && Op0BO->getOperand(1)->hasOneUse() && in FoldShiftByConstant()
760 if (isLeftShift && Op0BOOp1->hasOneUse() && in FoldShiftByConstant()
776 if (isLeftShift && Op0BO->getOperand(0)->hasOneUse() && in FoldShiftByConstant()
791 if (isLeftShift && Op0BO->getOperand(0)->hasOneUse() && in FoldShiftByConstant()
[all …]
DInstCombineNegator.cpp160 if (!V->hasOneUse() && !IsTrulyNegation) in visitImpl()
223 (I->hasOneUse() || match(I->getOperand(0), m_ImmConstant()))) { in visitImpl()
233 if (!V->hasOneUse()) in visitImpl()
DInstCombineCalls.cpp558 if (Op0->hasOneUse() && in foldCtpop()
765 if (!match(I1, m_APInt(C1)) || !I0->hasOneUse()) in foldClampRangeOfTwo()
973 (I0->hasOneUse() || I1->hasOneUse()) && X->getType() == Y->getType()) { in visitCallInst()
979 I0->hasOneUse()) { in visitCallInst()
995 (I0->hasOneUse() || I1->hasOneUse()) && X->getType() == Y->getType()) { in visitCallInst()
1002 I0->hasOneUse()) { in visitCallInst()
1014 (I0->hasOneUse() || I1->hasOneUse())) { in visitCallInst()
1019 if (match(I1, m_Constant(C)) && I0->hasOneUse()) { in visitCallInst()
1034 if (I0->hasOneUse() && !I1->hasOneUse()) in visitCallInst()
1323 (Arg0->hasOneUse() || Arg1->hasOneUse())) { in visitCallInst()
[all …]
DInstCombinePHI.cpp108 if (!PN.hasOneUse()) in foldIntegerTypedPHI()
178 if (!LoadI->hasOneUse()) in foldIntegerTypedPHI()
266 (LoadI && LoadI->hasOneUse())) && in foldIntegerTypedPHI()
938 if (!PN->hasOneUse()) return false; in DeadPHICycle()
1106 !UserI->hasOneUse() || !isa<TruncInst>(UserI->user_back()) || in SliceUpIllegalIntegerPHI()
1341 if (PN.hasOneUse()) { in visitPHINode()
1359 if (PHIUser->hasOneUse() && in visitPHINode()
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Analysis/
DGuardUtils.cpp67 if (!Cond->hasOneUse()) in parseWidenableBranch()
93 A->hasOneUse()) { in parseWidenableBranch()
100 B->hasOneUse()) { in parseWidenableBranch()
/freebsd-12-stable/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
DDAGCombiner.cpp874 if (Op->hasOneUse() || Op->getNumValues() > 1) in deleteAndRecombine()
932 if (isSetCCEquivalent(N, N0, N1, N2) && N.getNode()->hasOneUse()) in isOneUseSetCC()
1013 if (N0.hasOneUse()) in reassociationCanBreakAddressingModePattern()
1073 if (N0.hasOneUse()) { in reassociateOpsCommutative()
1319 Replace0 &= !N0->hasOneUse(); in PromoteIntBinOp()
1320 Replace1 &= (N0 != N1) && !N1->hasOneUse(); in PromoteIntBinOp()
1851 if (N->hasOneUse() && N->use_begin()->getOpcode() == ISD::TokenFactor) in visitTokenFactor()
1888 if (Op.hasOneUse() && !is_contained(TFs, Op.getNode())) { in visitTokenFactor()
2110 if (Sel.getOpcode() != ISD::SELECT || !Sel.hasOneUse()) { in foldBinOpIntoSelect()
2115 if (Sel.getOpcode() != ISD::SELECT || !Sel.hasOneUse()) in foldBinOpIntoSelect()
[all …]
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Transforms/Scalar/
DReassociate.cpp151 if (I && I->hasOneUse() && I->getOpcode() == Opcode) in isReassociableOp()
160 if (I && I->hasOneUse() && in isReassociableOp()
523 if (!Op->hasOneUse()) { in LinearizeExprTree()
544 assert(!Op->hasOneUse() && "Only one use, but we got here twice!"); in LinearizeExprTree()
562 if (!Op->hasOneUse()) in LinearizeExprTree()
579 assert(Op->hasOneUse() && "Has uses outside the expression tree!"); in LinearizeExprTree()
994 if (Or->hasOneUse() && isInteresting(VB)) in shouldConvertOrWithNoCommonBitsToAdd()
1039 if (Sub->hasOneUse() && in ShouldBreakUpSubtract()
1310 if (!Opnd1->getValue()->hasOneUse()) in CombineXorOpnd()
1344 if (Opnd1->getValue()->hasOneUse()) in CombineXorOpnd()
[all …]
DMergedLoadStoreMotion.cpp233 return A0 && A1 && A0->isIdenticalTo(A1) && A0->hasOneUse() && in canSinkStoresAndGEPs()
234 (A0->getParent() == S0->getParent()) && A1->hasOneUse() && in canSinkStoresAndGEPs()
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Target/X86/
DX86PartialReduction.cpp94 if (!isa<Constant>(LHS) && !LHS->hasOneUse()) in tryMAddReplacement()
96 if (!isa<Constant>(RHS) && !RHS->hasOneUse()) in tryMAddReplacement()
310 if (!BO || BO->getOpcode() != Instruction::Add || !BO->hasOneUse()) in matchAddReduction()
361 if (!Phi->hasOneUse()) in isReachableFromPHI()
368 while (U->hasOneUse() && U->getOpcode() == BO->getOpcode()) in isReachableFromPHI()
DX86ISelDAGToDAG.cpp572 if (!N.hasOneUse()) in IsProfitableToFold()
728 return N->getOperand(1).hasOneUse(); in isProfitableToFormMaskedOp()
773 if (Callee.getNode() == Chain.getNode() || !Callee.hasOneUse()) in isCalleeLoad()
784 if (!Chain.hasOneUse()) in isCalleeLoad()
800 Callee.getValue(1).hasOneUse()) in isCalleeLoad()
1842 !Shift.hasOneUse()) in foldMaskAndShiftToExtract()
1893 if (Shift.getOpcode() == ISD::ANY_EXTEND && Shift.hasOneUse() && in foldMaskedShiftToScaledMask()
1909 if (!N.hasOneUse() || !Shift.hasOneUse()) in foldMaskedShiftToScaledMask()
1976 if (Shift.getOpcode() != ISD::SRL || !Shift.hasOneUse() || in foldMaskAndShiftToScale()
2066 !Shift.hasOneUse() || !N.hasOneUse()) in foldMaskedShiftToBEXTR()
[all …]
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Transforms/Utils/
DRelLookupTableConverter.cpp36 !GV.hasOneUse()) in shouldConvertToRelLookupTable()
41 if (!GEP || !GEP->hasOneUse()) in shouldConvertToRelLookupTable()
45 if (!Load || !Load->hasOneUse()) in shouldConvertToRelLookupTable()
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
DVectorCombine.cpp109 !Scalar->hasOneUse()) in vectorizeLoadInsert()
123 if (!Load || !Load->isSimple() || !Load->hasOneUse() || in vectorizeLoadInsert()
339 : !Ext0->hasOneUse() || !Ext1->hasOneUse(); in isExtractExtractCheap()
347 !Ext0->hasOneUse() * Extract0Cost + in isExtractExtractCheap()
348 !Ext1->hasOneUse() * Extract1Cost; in isExtractExtractCheap()
478 if (I.hasOneUse()) in foldExtractExtract()
640 (IsConst0 ? 0 : !Ins0->hasOneUse() * InsertCost) + in scalarizeBinopOrCmp()
641 (IsConst1 ? 0 : !Ins1->hasOneUse() * InsertCost); in scalarizeBinopOrCmp()
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Target/SystemZ/
DSystemZTargetTransformInfo.cpp451 if (I->hasOneUse() && in getArithmeticInstrCost()
461 if (I->hasOneUse() && I->getOpcode() == Instruction::Xor) in getArithmeticInstrCost()
889 if (!Ld->hasOneUse() && Ld->getParent() == I->getParent() && in getCmpSelInstrCost()
980 if (!Ld->hasOneUse()) in isFoldableLoad()
988 if (UserI->hasOneUse()) { in isFoldableLoad()
1111 if (Opcode == Instruction::Load && I->hasOneUse()) { in getMemoryOpCost()
1115 (!LdUser->hasOneUse() || !isa<StoreInst>(*LdUser->user_begin()))) in getMemoryOpCost()
1120 if (StoredVal->hasOneUse() && isBswapIntrinsicCall(StoredVal)) in getMemoryOpCost()
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Target/AMDGPU/
DAMDGPULowerKernelAttributes.cpp88 if (!U->hasOneUse()) in processUse()
96 if (!BCI || !BCI->hasOneUse()) in processUse()
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Target/WebAssembly/
DWebAssemblyRegStackify.cpp284 static bool hasOneUse(unsigned Reg, MachineInstr *Def, MachineRegisterInfo &MRI, in hasOneUse() function
287 if (MRI.hasOneUse(Reg)) in hasOneUse()
525 if (MRI.hasOneDef(Reg) && MRI.hasOneUse(Reg)) { in moveForSingleUse()
874 if (CanMove && hasOneUse(Reg, DefI, MRI, MDT, LIS)) { in runOnMachineFunction()
911 if (DefReg != UseReg || !MRI.hasOneUse(DefReg)) in runOnMachineFunction()
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Target/ARM/
DMVELaneInterleavingPass.cpp135 if (T->hasOneUse() && !isa<StoreInst>(*T->user_begin())) { in isProfitableToInterleave()
144 if (!E->hasOneUse() || in isProfitableToInterleave()

1234567