Home
last modified time | relevance | path

Searched refs:Cmp0 (Results 1 – 11 of 11) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineSelect.cpp998 Value *Cmp0 = Cmp->getOperand(0); in canonicalizeSaturatedAdd() local
1017 if (match(FVal, m_Add(m_Specific(Cmp0), m_One())) && in canonicalizeSaturatedAdd()
1020 Intrinsic::uadd_sat, Cmp0, ConstantInt::get(Cmp0->getType(), 1)); in canonicalizeSaturatedAdd()
1026 match(FVal, m_Add(m_Specific(Cmp0), m_APIntAllowPoison(C))) && in canonicalizeSaturatedAdd()
1030 return Builder.CreateBinaryIntrinsic(Intrinsic::uadd_sat, Cmp0, in canonicalizeSaturatedAdd()
1031 ConstantInt::get(Cmp0->getType(), *C)); in canonicalizeSaturatedAdd()
1037 match(FVal, m_Add(m_Specific(Cmp0), m_APIntAllowPoison(C))) && in canonicalizeSaturatedAdd()
1040 return Builder.CreateBinaryIntrinsic(Intrinsic::uadd_sat, Cmp0, in canonicalizeSaturatedAdd()
1041 ConstantInt::get(Cmp0->getType(), *C)); in canonicalizeSaturatedAdd()
1047 match(FVal, m_Add(m_Specific(Cmp0), m_APIntAllowPoison(C))) && in canonicalizeSaturatedAdd()
[all …]
H A DInstCombineAndOrXor.cpp717 Value *InstCombinerImpl::simplifyRangeCheck(ICmpInst *Cmp0, ICmpInst *Cmp1, in simplifyRangeCheck() argument
721 ConstantInt *RangeStart = dyn_cast<ConstantInt>(Cmp0->getOperand(1)); in simplifyRangeCheck()
725 ICmpInst::Predicate Pred0 = (Inverted ? Cmp0->getInversePredicate() : in simplifyRangeCheck()
726 Cmp0->getPredicate()); in simplifyRangeCheck()
736 Value *Input = Cmp0->getOperand(0); in simplifyRangeCheck()
936 static Value *foldIsPowerOf2OrZero(ICmpInst *Cmp0, ICmpInst *Cmp1, bool IsAnd, in foldIsPowerOf2OrZero() argument
941 if (!match(Cmp0, m_ICmp(Pred0, m_Intrinsic<Intrinsic::ctpop>(m_Value(X)), in foldIsPowerOf2OrZero()
946 auto *CtPop = cast<Instruction>(Cmp0->getOperand(0)); in foldIsPowerOf2OrZero()
966 static Value *foldIsPowerOf2(ICmpInst *Cmp0, ICmpInst *Cmp1, bool JoinedByAnd, in foldIsPowerOf2() argument
971 std::swap(Cmp0, Cmp1); in foldIsPowerOf2()
[all …]
H A DInstCombineInternal.h112 Value *simplifyRangeCheck(ICmpInst *Cmp0, ICmpInst *Cmp1, bool Inverted);
422 Value *foldEqOfParts(Value *Cmp0, Value *Cmp1, bool IsAnd);
H A DInstCombineCompares.cpp3588 Value *Cmp0 = Cmp.getOperand(0); in foldICmpInstWithConstant() local
3590 if (C->isZero() && Cmp.isEquality() && Cmp0->hasOneUse() && in foldICmpInstWithConstant()
3591 (match(Cmp0, in foldICmpInstWithConstant()
3594 match(Cmp0, in foldICmpInstWithConstant()
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUInstCombineIntrinsic.cpp50 APFloat::cmpResult Cmp0 = Max3.compare(Src0); in fmed3AMDGCN() local
51 assert(Cmp0 != APFloat::cmpUnordered && "nans handled separately"); in fmed3AMDGCN()
52 if (Cmp0 == APFloat::cmpEqual) in fmed3AMDGCN()
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DInstructionSimplify.cpp1617 static Value *simplifyAndOrOfICmpsWithConstants(ICmpInst *Cmp0, ICmpInst *Cmp1, in simplifyAndOrOfICmpsWithConstants() argument
1620 if (Cmp0->getOperand(0) != Cmp1->getOperand(0)) in simplifyAndOrOfICmpsWithConstants()
1624 if (!match(Cmp0->getOperand(1), m_APInt(C0)) || in simplifyAndOrOfICmpsWithConstants()
1628 auto Range0 = ConstantRange::makeExactICmpRegion(Cmp0->getPredicate(), *C0); in simplifyAndOrOfICmpsWithConstants()
1634 return getFalse(Cmp0->getType()); in simplifyAndOrOfICmpsWithConstants()
1639 return getTrue(Cmp0->getType()); in simplifyAndOrOfICmpsWithConstants()
1647 return IsAnd ? Cmp1 : Cmp0; in simplifyAndOrOfICmpsWithConstants()
1649 return IsAnd ? Cmp0 : Cmp1; in simplifyAndOrOfICmpsWithConstants()
1702 static Value *simplifyAndOrOfICmpsWithCtpop(ICmpInst *Cmp0, ICmpInst *Cmp1, in simplifyAndOrOfICmpsWithCtpop() argument
1707 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 DLoopUtils.cpp1994 Value *Cmp0 = ChkBuilder.CreateICmpULT(A.Start, B.End, "bound0"); in addRuntimeChecks() local
1996 Value *IsConflict = ChkBuilder.CreateAnd(Cmp0, Cmp1, "found.conflict"); in addRuntimeChecks()
/freebsd/contrib/llvm-project/llvm/lib/Target/SPIRV/
H A DSPIRVInstructionSelector.cpp2454 Register Cmp0 = I.getOperand(2).getReg(); in selectCmp() local
2456 assert(GR.getSPIRVTypeForVReg(Cmp0)->getOpcode() == in selectCmp()
2462 .addUse(Cmp0) in selectCmp()
/freebsd/contrib/llvm-project/clang/lib/CodeGen/
H A DMicrosoftCXXABI.cpp3039 llvm::Value *Cmp0 = Builder.CreateICmp(Eq, L0, R0, "memptr.cmp.first"); in EmitMemberPointerComparison() local
3064 return Builder.CreateBinOp(And, Res, Cmp0, "memptr.cmp"); in EmitMemberPointerComparison()
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64ISelLowering.cpp19421 SDValue Cmp0 = CSel0.getOperand(3); in performANDORCSELCombine() local
19425 if (!Cmp0->hasOneUse() || !Cmp1->hasOneUse()) in performANDORCSELCombine()
19428 Cmp0.getOpcode() == AArch64ISD::SUBS) { in performANDORCSELCombine()
19429 std::swap(Cmp0, Cmp1); in performANDORCSELCombine()
19461 NZCVOp, Condition, Cmp0); in performANDORCSELCombine()
19464 Cmp1.getOperand(1), NZCVOp, Condition, Cmp0); in performANDORCSELCombine()
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86ISelLowering.cpp24102 SDValue Cmp0, Cmp1; in LowerVSETCC() local
24104 Cmp0 = DAG.getNode( in LowerVSETCC()
24110 Chain = DAG.getNode(ISD::TokenFactor, dl, MVT::Other, Cmp0.getValue(1), in LowerVSETCC()
24113 Cmp0 = DAG.getNode( in LowerVSETCC()
24118 Cmp = DAG.getNode(CombineOpc, dl, VT, Cmp0, Cmp1); in LowerVSETCC()