/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
H A D | InstCombineSelect.cpp | 976 Value *Cmp0 = Cmp->getOperand(0); in canonicalizeSaturatedAdd() local 982 match(TVal, m_Add(m_Value(X), m_APInt(C))) && X == Cmp0 && in canonicalizeSaturatedAdd() 1001 std::swap(Cmp0, Cmp1); in canonicalizeSaturatedAdd() 1010 if (match(Cmp0, m_Not(m_Value(X))) && in canonicalizeSaturatedAdd() 1018 X = Cmp0; in canonicalizeSaturatedAdd() 1030 match(Cmp0, m_c_Add(m_Specific(Cmp1), m_Value(Y))) && in canonicalizeSaturatedAdd() 1393 static Value *canonicalizeClampLike(SelectInst &Sel0, ICmpInst &Cmp0, in canonicalizeClampLike() argument 1401 if (!Cmp0.hasOneUse()) in canonicalizeClampLike() 1403 ICmpInst::Predicate Pred0 = Cmp0.getPredicate(); in canonicalizeClampLike() 1404 Value *Cmp00 = Cmp0.getOperand(0); in canonicalizeClampLike() [all …]
|
H A D | InstCombineAndOrXor.cpp | 653 Value *InstCombinerImpl::simplifyRangeCheck(ICmpInst *Cmp0, ICmpInst *Cmp1, in simplifyRangeCheck() argument 657 ConstantInt *RangeStart = dyn_cast<ConstantInt>(Cmp0->getOperand(1)); in simplifyRangeCheck() 661 ICmpInst::Predicate Pred0 = (Inverted ? Cmp0->getInversePredicate() : in simplifyRangeCheck() 662 Cmp0->getPredicate()); in simplifyRangeCheck() 672 Value *Input = Cmp0->getOperand(0); in simplifyRangeCheck() 910 static Value *foldIsPowerOf2OrZero(ICmpInst *Cmp0, ICmpInst *Cmp1, bool IsAnd, in foldIsPowerOf2OrZero() argument 914 if (!match(Cmp0, m_ICmp(Pred0, m_Intrinsic<Intrinsic::ctpop>(m_Value(X)), in foldIsPowerOf2OrZero() 919 Value *CtPop = Cmp0->getOperand(0); in foldIsPowerOf2OrZero() 931 static Value *foldIsPowerOf2(ICmpInst *Cmp0, ICmpInst *Cmp1, bool JoinedByAnd, in foldIsPowerOf2() argument 936 std::swap(Cmp0, Cmp1); in foldIsPowerOf2() [all …]
|
H A D | InstCombineInternal.h | 113 Value *simplifyRangeCheck(ICmpInst *Cmp0, ICmpInst *Cmp1, bool Inverted); 417 Value *foldEqOfParts(ICmpInst *Cmp0, ICmpInst *Cmp1, bool IsAnd);
|
H A D | InstCombineCompares.cpp | 3441 Value *Cmp0 = Cmp.getOperand(0); in foldICmpInstWithConstant() local 3443 if (C->isZero() && Cmp.isEquality() && Cmp0->hasOneUse() && in foldICmpInstWithConstant() 3444 (match(Cmp0, in foldICmpInstWithConstant() 3447 match(Cmp0, in foldICmpInstWithConstant()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | AMDGPUInstCombineIntrinsic.cpp | 49 APFloat::cmpResult Cmp0 = Max3.compare(Src0); in fmed3AMDGCN() local 50 assert(Cmp0 != APFloat::cmpUnordered && "nans handled separately"); in fmed3AMDGCN() 51 if (Cmp0 == APFloat::cmpEqual) in fmed3AMDGCN()
|
/freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | InstructionSimplify.cpp | 1666 static Value *simplifyAndOrOfICmpsWithConstants(ICmpInst *Cmp0, ICmpInst *Cmp1, in simplifyAndOrOfICmpsWithConstants() argument 1669 if (Cmp0->getOperand(0) != Cmp1->getOperand(0)) in simplifyAndOrOfICmpsWithConstants() 1673 if (!match(Cmp0->getOperand(1), m_APInt(C0)) || in simplifyAndOrOfICmpsWithConstants() 1677 auto Range0 = ConstantRange::makeExactICmpRegion(Cmp0->getPredicate(), *C0); in simplifyAndOrOfICmpsWithConstants() 1683 return getFalse(Cmp0->getType()); in simplifyAndOrOfICmpsWithConstants() 1688 return getTrue(Cmp0->getType()); in simplifyAndOrOfICmpsWithConstants() 1696 return IsAnd ? Cmp1 : Cmp0; in simplifyAndOrOfICmpsWithConstants() 1698 return IsAnd ? Cmp0 : Cmp1; in simplifyAndOrOfICmpsWithConstants() 1751 static Value *simplifyAndOrOfICmpsWithCtpop(ICmpInst *Cmp0, ICmpInst *Cmp1, in simplifyAndOrOfICmpsWithCtpop() argument 1756 if (!match(Cmp0, m_ICmp(Pred0, m_Intrinsic<Intrinsic::ctpop>(m_Value(X)), in simplifyAndOrOfICmpsWithCtpop()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | LoopUtils.cpp | 1928 Value *Cmp0 = ChkBuilder.CreateICmpULT(A.Start, B.End, "bound0"); in addRuntimeChecks() local 1930 Value *IsConflict = ChkBuilder.CreateAnd(Cmp0, Cmp1, "found.conflict"); in addRuntimeChecks()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/SPIRV/ |
H A D | SPIRVInstructionSelector.cpp | 1532 Register Cmp0 = I.getOperand(2).getReg(); in selectCmp() local 1534 assert(GR.getSPIRVTypeForVReg(Cmp0)->getOpcode() == in selectCmp() 1540 .addUse(Cmp0) in selectCmp()
|
/freebsd/contrib/llvm-project/clang/lib/CodeGen/ |
H A D | MicrosoftCXXABI.cpp | 3047 llvm::Value *Cmp0 = Builder.CreateICmp(Eq, L0, R0, "memptr.cmp.first"); in EmitMemberPointerComparison() local 3072 return Builder.CreateBinOp(And, Res, Cmp0, "memptr.cmp"); in EmitMemberPointerComparison()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
H A D | AArch64ISelLowering.cpp | 18778 SDValue Cmp0 = CSel0.getOperand(3); in performANDORCSELCombine() local 18782 if (!Cmp0->hasOneUse() || !Cmp1->hasOneUse()) in performANDORCSELCombine() 18785 Cmp0.getOpcode() == AArch64ISD::SUBS) { in performANDORCSELCombine() 18786 std::swap(Cmp0, Cmp1); in performANDORCSELCombine() 18818 NZCVOp, Condition, Cmp0); in performANDORCSELCombine() 18821 Cmp1.getOperand(1), NZCVOp, Condition, Cmp0); in performANDORCSELCombine()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/ |
H A D | X86ISelLowering.cpp | 23332 SDValue Cmp0, Cmp1; in LowerVSETCC() local 23334 Cmp0 = DAG.getNode( in LowerVSETCC() 23340 Chain = DAG.getNode(ISD::TokenFactor, dl, MVT::Other, Cmp0.getValue(1), in LowerVSETCC() 23343 Cmp0 = DAG.getNode( in LowerVSETCC() 23348 Cmp = DAG.getNode(CombineOpc, dl, VT, Cmp0, Cmp1); in LowerVSETCC()
|