Searched refs:Cmp (Results 1 - 25 of 110) sorted by relevance

12345

/freebsd-11-stable/contrib/llvm-project/llvm/utils/TableGen/
H A DOptEmitter.cpp54 if (int Cmp = StrCmpOptionName(A->getValueAsString("Name").str().c_str(),
56 return Cmp;
67 if (int Cmp = StrCmpOptionName(APre->str().c_str(), BPre->str().c_str()))
68 return Cmp;
/freebsd-11-stable/contrib/llvm-project/compiler-rt/lib/scudo/standalone/
H A Datomic_helpers.h102 inline bool atomic_compare_exchange_strong(volatile T *A, typename T::Type *Cmp, argument
105 return __atomic_compare_exchange(&A->ValDoNotUse, Cmp, &Xchg, false, MO,
110 inline bool atomic_compare_exchange_weak(volatile T *A, typename T::Type *Cmp, argument
113 return __atomic_compare_exchange(&A->ValDoNotUse, Cmp, &Xchg, true, MO,
131 typename T::Type Cmp,
133 atomic_compare_exchange_strong(A, &Cmp, Xchg, memory_order_acquire);
134 return Cmp;
130 atomic_compare_exchange(volatile T *A, typename T::Type Cmp, typename T::Type Xchg) argument
/freebsd-11-stable/contrib/llvm-project/clang/include/clang/Analysis/Analyses/
H A DThreadSafetyTIL.h294 // template <class C> typename C::CType compare(CType* E, C& Cmp) {
413 typename C::CType compare(const Variable* E, C& Cmp) const {
414 return Cmp.compareVariableRefs(this, E);
473 typename C::CType compare(const Future* E, C& Cmp) const {
475 return Cmp.comparePointers(this, E);
476 return Cmp.compare(Result, E->Result);
500 typename C::CType compare(const Undefined* E, C& Cmp) const {
501 return Cmp.trueResult();
521 typename C::CType compare(const Wildcard* E, C& Cmp) const {
522 return Cmp
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64ConditionOptimizer.cpp112 CmpInfo adjustCmp(MachineInstr *CmpMI, AArch64CC::CondCode Cmp);
114 bool adjustTo(MachineInstr *CmpMI, AArch64CC::CondCode Cmp, MachineInstr *To,
229 static AArch64CC::CondCode getAdjustedCmp(AArch64CC::CondCode Cmp) { argument
230 switch (Cmp) {
243 MachineInstr *CmpMI, AArch64CC::CondCode Cmp) {
250 int Correction = (Cmp == AArch64CC::GT) ? 1 : -1;
266 return CmpInfo(NewImm, Opc, getAdjustedCmp(Cmp));
274 AArch64CC::CondCode Cmp; local
275 std::tie(Imm, Opc, Cmp) = Info;
293 .addImm(Cmp)
242 adjustCmp( MachineInstr *CmpMI, AArch64CC::CondCode Cmp) argument
318 adjustTo(MachineInstr *CmpMI, AArch64CC::CondCode Cmp, MachineInstr *To, int ToImm) argument
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonHardwareLoops.cpp147 static Kind getSwappedComparison(Kind Cmp) { argument
148 assert ((!((Cmp & L) && (Cmp & G))) && "Malformed comparison operator");
149 if ((Cmp & L) || (Cmp & G))
150 return (Kind)(Cmp ^ (L|G));
151 return Cmp;
154 static Kind getNegatedComparison(Kind Cmp) { argument
155 if ((Cmp & L) || (Cmp
162 isSigned(Kind Cmp) argument
166 isUnsigned(Kind Cmp) argument
512 Comparison::Kind Cmp = (Comparison::Kind)0; local
671 Comparison::Kind Cmp; local
1469 Comparison::Kind Cmp = local
1804 Comparison::Kind Cmp = local
[all...]
H A DHexagonConstPropagation.cpp347 static uint32_t negate(uint32_t Cmp) { argument
348 if (Cmp == EQ)
350 if (Cmp == NE)
352 assert((Cmp & (L|G)) != (L|G));
353 return Cmp ^ (L|G);
365 bool evaluateCMPrr(uint32_t Cmp, const RegisterSubReg &R1, const RegisterSubReg &R2,
367 bool evaluateCMPri(uint32_t Cmp, const RegisterSubReg &R1, const APInt &A2,
369 bool evaluateCMPrp(uint32_t Cmp, const RegisterSubReg &R1, uint64_t Props2,
371 bool evaluateCMPii(uint32_t Cmp, const APInt &A1, const APInt &A2,
373 bool evaluateCMPpi(uint32_t Cmp, uint32_
1107 evaluateCMPrr(uint32_t Cmp, const RegisterSubReg &R1, const RegisterSubReg &R2, const CellMap &Inputs, bool &Result) argument
1146 evaluateCMPri(uint32_t Cmp, const RegisterSubReg &R1, const APInt &A2, const CellMap &Inputs, bool &Result) argument
1173 evaluateCMPrp(uint32_t Cmp, const RegisterSubReg &R1, uint64_t Props2, const CellMap &Inputs, bool &Result) argument
1199 evaluateCMPii(uint32_t Cmp, const APInt &A1, const APInt &A2, bool &Result) argument
1240 evaluateCMPpi(uint32_t Cmp, uint32_t Props, const APInt &A2, bool &Result) argument
1306 evaluateCMPpp(uint32_t Cmp, uint32_t Props1, uint32_t Props2, bool &Result) argument
2602 uint32_t Cmp = getCmp(Opc); local
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineCompares.cpp951 Value *Cmp = Builder.CreateICmp(ICmpInst::getSignedPredicate(Cond), local
953 return replaceInstUsesWith(I, Cmp);
1392 Instruction *InstCombiner::foldICmpWithZero(ICmpInst &Cmp) { argument
1393 CmpInst::Predicate Pred = Cmp.getPredicate();
1394 if (!match(Cmp.getOperand(1), m_Zero()))
1400 SelectPatternResult SPR = matchSelectPattern(Cmp.getOperand(0), A, B);
1402 if (isKnownPositive(A, DL, 0, &AC, &Cmp, &DT))
1403 return new ICmpInst(Pred, B, Cmp.getOperand(1));
1404 if (isKnownPositive(B, DL, 0, &AC, &Cmp, &DT))
1405 return new ICmpInst(Pred, A, Cmp
1433 foldICmpWithConstant(ICmpInst &Cmp) argument
1458 foldICmpWithDominatingICmp(ICmpInst &Cmp) argument
1528 foldICmpTruncConstant(ICmpInst &Cmp, TruncInst *Trunc, const APInt &C) argument
1561 foldICmpXorConstant(ICmpInst &Cmp, BinaryOperator *Xor, const APInt &C) argument
1633 foldICmpAndShift(ICmpInst &Cmp, BinaryOperator *And, const APInt &C1, const APInt &C2) argument
1716 foldICmpAndConstConst(ICmpInst &Cmp, BinaryOperator *And, const APInt &C1) argument
1825 foldICmpAndConstant(ICmpInst &Cmp, BinaryOperator *And, const APInt &C) argument
1879 foldICmpOrConstant(ICmpInst &Cmp, BinaryOperator *Or, const APInt &C) argument
1940 foldICmpMulConstant(ICmpInst &Cmp, BinaryOperator *Mul, const APInt &C) argument
1961 foldICmpShlOne(ICmpInst &Cmp, Instruction *Shl, const APInt &C) argument
2023 foldICmpShlConstant(ICmpInst &Cmp, BinaryOperator *Shl, const APInt &C) argument
2163 foldICmpShrConstant(ICmpInst &Cmp, BinaryOperator *Shr, const APInt &C) argument
2256 foldICmpSRemConstant(ICmpInst &Cmp, BinaryOperator *SRem, const APInt &C) argument
2295 foldICmpUDivConstant(ICmpInst &Cmp, BinaryOperator *UDiv, const APInt &C) argument
2324 foldICmpDivConstant(ICmpInst &Cmp, BinaryOperator *Div, const APInt &C) argument
2494 foldICmpSubConstant(ICmpInst &Cmp, BinaryOperator *Sub, const APInt &C) argument
2556 foldICmpAddConstant(ICmpInst &Cmp, BinaryOperator *Add, const APInt &C) argument
2674 foldICmpSelectConstant(ICmpInst &Cmp, SelectInst *Select, ConstantInt *C) argument
2725 foldICmpBitCast(ICmpInst &Cmp, InstCombiner::BuilderTy &Builder) argument
2819 foldICmpInstWithConstant(ICmpInst &Cmp) argument
2904 foldICmpBinOpEqualityWithConstant(ICmpInst &Cmp, BinaryOperator *BO, const APInt &C) argument
3024 foldICmpEqIntrinsicWithConstant(ICmpInst &Cmp, IntrinsicInst *II, const APInt &C) argument
3109 foldICmpIntrinsicWithConstant(ICmpInst &Cmp, IntrinsicInst *II, const APInt &C) argument
4070 foldICmpWithMinMax(ICmpInst &Cmp) argument
5353 foldICmpWithHighBitMask(ICmpInst &Cmp, InstCombiner::BuilderTy &Builder) argument
5404 foldVectorCmp(CmpInst &Cmp, InstCombiner::BuilderTy &Builder) argument
[all...]
H A DInstCombineInternal.h919 Instruction *foldICmpUsingKnownBits(ICmpInst &Cmp);
920 Instruction *foldICmpWithDominatingICmp(ICmpInst &Cmp);
921 Instruction *foldICmpWithConstant(ICmpInst &Cmp);
922 Instruction *foldICmpInstWithConstant(ICmpInst &Cmp);
923 Instruction *foldICmpInstWithConstantNotInt(ICmpInst &Cmp);
924 Instruction *foldICmpBinOp(ICmpInst &Cmp, const SimplifyQuery &SQ);
925 Instruction *foldICmpEquality(ICmpInst &Cmp);
928 Instruction *foldICmpWithZero(ICmpInst &Cmp);
930 Value *foldUnsignedMultiplicationOverflowCheck(ICmpInst &Cmp);
932 Instruction *foldICmpSelectConstant(ICmpInst &Cmp, SelectIns
[all...]
H A DInstCombineSelect.cpp123 static Value *foldSelectICmpAnd(SelectInst &Sel, ICmpInst *Cmp, argument
132 if (SelType->isVectorTy() != Cmp->getType()->isVectorTy())
138 ICmpInst::Predicate Pred = Cmp->getPredicate();
140 if (!match(Cmp->getOperand(1), m_Zero()))
143 V = Cmp->getOperand(0);
149 } else if (decomposeBitTestICmp(Cmp->getOperand(0), Cmp->getOperand(1),
175 if (!Cmp->hasOneUse())
501 static Instruction *foldSelectICmpAndAnd(Type *SelType, const ICmpInst *Cmp, argument
504 if (!(Cmp
735 canonicalizeSaturatedAdd(ICmpInst *Cmp, Value *TVal, Value *FVal, InstCombiner::BuilderTy &Builder) argument
902 adjustMinMax(SelectInst &Sel, ICmpInst &Cmp) argument
999 canonicalizeMinMaxWithConstant(SelectInst &Sel, ICmpInst &Cmp, InstCombiner::BuilderTy &Builder) argument
1043 canonicalizeAbsNabs(SelectInst &Sel, ICmpInst &Cmp, InstCombiner::BuilderTy &Builder) argument
1151 foldSelectValueEquivalence(SelectInst &Sel, ICmpInst &Cmp, const SimplifyQuery &Q) argument
1330 tryToReuseConstantFromSelectInComparison(SelectInst &Sel, ICmpInst &Cmp, InstCombiner::BuilderTy &Builder) argument
1891 auto *Cmp = dyn_cast<CmpInst>(Cond); local
2571 Value *Cmp; local
[all...]
H A DInstCombineCasts.cpp283 auto *Cmp = dyn_cast<CmpInst>(Sel->getCondition()); local
284 if (!Cmp || Cmp->getOperand(0)->getType() != Sel->getType())
847 Instruction *InstCombiner::transformZExtICmp(ICmpInst *Cmp, ZExtInst &Zext, argument
853 if (match(Cmp->getOperand(1), m_APInt(Op1CV))) {
857 if ((Cmp->getPredicate() == ICmpInst::ICMP_SLT && Op1CV->isNullValue()) ||
858 (Cmp->getPredicate() == ICmpInst::ICMP_SGT && Op1CV->isAllOnesValue())) {
859 if (!DoTransform) return Cmp;
861 Value *In = Cmp->getOperand(0);
868 if (Cmp
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DSIOptimizeExecMaskingPreRA.cpp225 auto *Cmp = TRI->findReachingDef(CmpReg, CmpSubReg, *And, MRI, LIS); local
226 if (!Cmp || !(Cmp->getOpcode() == AMDGPU::V_CMP_NE_U32_e32 ||
227 Cmp->getOpcode() == AMDGPU::V_CMP_NE_U32_e64) ||
228 Cmp->getParent() != And->getParent())
231 MachineOperand *Op1 = TII->getNamedOperand(*Cmp, AMDGPU::OpName::src0);
232 MachineOperand *Op2 = TII->getNamedOperand(*Cmp, AMDGPU::OpName::src1);
239 auto *Sel = TRI->findReachingDef(SelReg, Op1->getSubReg(), *Cmp, MRI, LIS);
254 LLVM_DEBUG(dbgs() << "Folding sequence:\n\t" << *Sel << '\t' << *Cmp << '\t'
269 // Try to remove compare. Cmp valu
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86MacroFusion.cpp56 return (TestKind == X86::FirstMacroFusionInstKind::Cmp ||
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Support/
H A DStatistic.cpp138 if (int Cmp = std::strcmp(LHS->getDebugType(), RHS->getDebugType()))
139 return Cmp < 0;
141 if (int Cmp = std::strcmp(LHS->getName(), RHS->getName()))
142 return Cmp < 0;
/freebsd-11-stable/contrib/llvm-project/llvm/lib/CodeGen/
H A DExpandMemCmp.cpp303 Value *Cmp = Builder.CreateICmp(ICmpInst::ICMP_NE, Diff, local
306 BranchInst::Create(EndBlock, LoadCmpBlocks[BlockIndex + 1], Cmp);
334 Value *Cmp = nullptr;
377 Cmp = Builder.CreateICmpNE(LoadSrc1, LoadSrc2);
392 if (!Cmp) {
402 Cmp = Builder.CreateICmpNE(OrList[0], ConstantInt::get(Diff->getType(), 0));
405 return Cmp;
410 Value *Cmp = getCompareLoadPairs(BlockIndex, LoadIndex); local
417 BranchInst *CmpBr = BranchInst::Create(ResBlock.BB, NextBB, Cmp);
482 Value *Cmp local
518 Value *Cmp = Builder.CreateICmp(ICmpInst::ICMP_ULT, ResBlock.PhiSrc1, local
562 Value *Cmp = getCompareLoadPairs(0, LoadIndex); local
[all...]
H A DCodeGenPrepare.cpp113 STATISTIC(NumCmpUses, "Number of uses of Cmp expressions replaced with uses of "
401 bool replaceMathCmpWithIntrinsic(BinaryOperator *BO, CmpInst *Cmp,
403 bool optimizeCmp(CmpInst *Cmp, bool &ModifiedDT);
404 bool combineToUSubWithOverflow(CmpInst *Cmp, bool &ModifiedDT);
405 bool combineToUAddWithOverflow(CmpInst *Cmp, bool &ModifiedDT);
1190 CmpInst *Cmp,
1192 if (BO->getParent() != Cmp->getParent()) {
1217 for (Instruction &Iter : *Cmp->getParent()) {
1218 if (&Iter == BO || &Iter == Cmp) {
1230 Cmp
1189 replaceMathCmpWithIntrinsic(BinaryOperator *BO, CmpInst *Cmp, Intrinsic::ID IID) argument
1237 matchUAddWithOverflowConstantEdgeCases(CmpInst *Cmp, BinaryOperator *&Add) argument
1268 combineToUAddWithOverflow(CmpInst *Cmp, bool &ModifiedDT) argument
1294 combineToUSubWithOverflow(CmpInst *Cmp, bool &ModifiedDT) argument
1361 sinkCmpExpression(CmpInst *Cmp, const TargetLowering &TLI) argument
1440 foldICmpWithDominatingICmp(CmpInst *Cmp, const TargetLowering &TLI) argument
1508 optimizeCmp(CmpInst *Cmp, bool &ModifiedDT) argument
1853 Value *Cmp = Builder.CreateICmpEQ(CountZeros->getOperand(0), Zero, "cmpz"); local
5977 CmpInst *Cmp = dyn_cast<CmpInst>(SI->getCondition()); local
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DLibCallsShrinkWrap.cpp104 Value *createOrCond(CallInst *CI, CmpInst::Predicate Cmp, float Val, argument
109 auto Cond1 = createCond(BBBuilder, Arg, Cmp, Val);
114 Value *createCond(IRBuilder<> &BBBuilder, Value *Arg, CmpInst::Predicate Cmp, argument
119 return BBBuilder.CreateFCmp(Cmp, Arg, V);
123 Value *createCond(CallInst *CI, CmpInst::Predicate Cmp, float Val) { argument
126 return createCond(BBBuilder, Arg, Cmp, Val);
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DCallSiteSplitting.cpp111 static bool isCondRelevantToAnyCallArgument(ICmpInst *Cmp, CallSite CS) { argument
112 assert(isa<Constant>(Cmp->getOperand(1)) && "Expected a constant operand.");
113 Value *Op0 = Cmp->getOperand(0);
143 ICmpInst *Cmp = cast<ICmpInst>(Cond);
145 if (isCondRelevantToAnyCallArgument(Cmp, CS))
146 Conditions.push_back({Cmp, From->getTerminator()->getSuccessor(0) == To
148 : Cmp->getInversePredicate()});
H A DInferAddressSpaces.cpp377 else if (ICmpInst *Cmp = dyn_cast<ICmpInst>(&I)) {
379 if (Cmp->getOperand(0)->getType()->isPointerTy()) {
380 PushPtrOperand(Cmp->getOperand(0));
381 PushPtrOperand(Cmp->getOperand(1));
953 if (ICmpInst *Cmp = dyn_cast<ICmpInst>(CurUser)) {
963 Value *OtherSrc = Cmp->getOperand(OtherIdx);
967 Cmp->setOperand(OtherIdx, OtherNewV);
968 Cmp->setOperand(SrcIdx, NewV);
976 Cmp->setOperand(SrcIdx, NewV);
977 Cmp
[all...]
H A DCorrelatedValuePropagation.cpp303 static bool processCmp(CmpInst *Cmp, LazyValueInfo *LVI) { argument
304 Value *Op0 = Cmp->getOperand(0);
305 auto *C = dyn_cast<Constant>(Cmp->getOperand(1));
315 if (I && I->getParent() == Cmp->getParent())
319 LVI->getPredicateAt(Cmp->getPredicate(), Op0, C, Cmp);
324 Constant *TorF = ConstantInt::get(Type::getInt1Ty(Cmp->getContext()), Result);
325 Cmp->replaceAllUsesWith(TorF);
326 Cmp->eraseFromParent();
H A DGVN.cpp1392 static bool impliesEquivalanceIfTrue(CmpInst* Cmp) { argument
1393 if (Cmp->getPredicate() == CmpInst::Predicate::ICMP_EQ)
1399 if (Cmp->getPredicate() == CmpInst::Predicate::FCMP_OEQ ||
1400 (Cmp->getPredicate() == CmpInst::Predicate::FCMP_UEQ &&
1401 Cmp->getFastMathFlags().noNaNs())) {
1402 Value *LHS = Cmp->getOperand(0);
1403 Value *RHS = Cmp->getOperand(1);
1418 static bool impliesEquivalanceIfFalse(CmpInst* Cmp) { argument
1419 if (Cmp->getPredicate() == CmpInst::Predicate::ICMP_NE)
1425 if ((Cmp
[all...]
H A DLowerAtomic.cpp27 Value *Cmp = CXI->getCompareOperand(); local
31 Value *Equal = Builder.CreateICmpEQ(Orig, Cmp);
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/IR/
H A DValue.h669 /// Sorts the Value's use-list by Cmp using a stable mergesort. Cmp is
671 template <class Compare> void sortUseList(Compare Cmp);
679 /// Merges \c L and \c R using \c Cmp. To enable stable sorts, always pushes
686 static Use *mergeUseLists(Use *L, Use *R, Compare Cmp) { argument
699 if (Cmp(*R, *L)) {
746 template <class Compare> void Value::sortUseList(Compare Cmp) { argument
783 Current = mergeUseLists(Slots[I], Current, Cmp);
804 UseList = mergeUseLists(Slots[I], UseList, Cmp);
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/AVR/
H A DAVRISelLowering.cpp446 SDValue Cmp; local
551 Cmp = DAG.getNode(AVRISD::TST, DL, MVT::Glue, Top);
553 Cmp = DAG.getNode(AVRISD::CMP, DL, MVT::Glue, LHSlo, RHSlo);
554 Cmp = DAG.getNode(AVRISD::CMPC, DL, MVT::Glue, LHShi, RHShi, Cmp);
589 Cmp = DAG.getNode(AVRISD::TST, DL, MVT::Glue, Top);
591 Cmp = DAG.getNode(AVRISD::CMP, DL, MVT::Glue, LHS0, RHS0);
592 Cmp = DAG.getNode(AVRISD::CMPC, DL, MVT::Glue, LHS1, RHS1, Cmp);
593 Cmp
628 SDValue Cmp = getAVRCmp(LHS, RHS, CC, TargetCC, DAG, dl); local
643 SDValue Cmp = getAVRCmp(LHS, RHS, CC, TargetCC, DAG, dl); local
658 SDValue Cmp = getAVRCmp(LHS, RHS, CC, TargetCC, DAG, DL); local
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/IR/
H A DIntrinsicInst.cpp78 auto Cmp = [CmpStart, CmpEnd](const char *LHS, const char *RHS) { local
82 std::tie(Low, High) = std::equal_range(Low, High, Name.data(), Cmp);
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/WebAssembly/
H A DWebAssemblyLowerGlobalDtors.cpp168 Value *Cmp = new ICmpInst(*EntryBB, ICmpInst::ICMP_NE, Res, local
170 BranchInst::Create(FailBB, RetBB, Cmp, EntryBB);

Completed in 293 milliseconds

12345