Home
last modified time | relevance | path

Searched refs:BO (Results 1 – 25 of 140) sorted by relevance

123456

/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86PartialReduction.cpp168 if (auto *BO = dyn_cast<BinaryOperator>(Op)) { in tryMAddReplacement() local
169 if (BO->getParent() == Mul->getParent() && in tryMAddReplacement()
170 IsFreeTruncation(BO->getOperand(0)) && in tryMAddReplacement()
171 IsFreeTruncation(BO->getOperand(1)) && in tryMAddReplacement()
362 const auto *BO = dyn_cast<BinaryOperator>(EE.getVectorOperand()); in matchAddReduction() local
363 if (!BO || BO->getOpcode() != Instruction::Add || !BO->hasOneUse()) in matchAddReduction()
365 if (EE.getParent() != BO->getParent()) in matchAddReduction()
368 unsigned NumElems = cast<FixedVectorType>(BO->getType())->getNumElements(); in matchAddReduction()
373 const Value *Op = BO; in matchAddReduction()
376 const auto *BO = dyn_cast<BinaryOperator>(Op); in matchAddReduction() local
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVGatherScatterLowering.cpp137 auto *BO = dyn_cast<BinaryOperator>(Start); in matchStridedStart() local
138 if (!BO || (BO->getOpcode() != Instruction::Add && in matchStridedStart()
139 BO->getOpcode() != Instruction::Or && in matchStridedStart()
140 BO->getOpcode() != Instruction::Shl && in matchStridedStart()
141 BO->getOpcode() != Instruction::Mul)) in matchStridedStart()
144 if (BO->getOpcode() == Instruction::Or && in matchStridedStart()
145 !cast<PossiblyDisjointInst>(BO)->isDisjoint()) in matchStridedStart()
150 Value *Splat = getSplatValue(BO->getOperand(1)); in matchStridedStart()
151 if (!Splat && Instruction::isCommutative(BO->getOpcode())) { in matchStridedStart()
152 Splat = getSplatValue(BO->getOperand(0)); in matchStridedStart()
[all …]
H A DRISCVCodeGenPrepare.cpp59 bool visitAnd(BinaryOperator &BO);
69 bool RISCVCodeGenPrepare::visitAnd(BinaryOperator &BO) { in visitAnd() argument
73 if (!BO.getType()->isIntegerTy(64)) in visitAnd()
80 if (!match(BO.getOperand(0), m_NNegZExt(m_Value(LHSSrc)))) in visitAnd()
87 Value *RHS = BO.getOperand(1); in visitAnd()
102 BO.setOperand(1, ConstantInt::get(RHS->getType(), C)); in visitAnd()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DSeparateConstOffsetFromGEP.cpp267 APInt findInEitherOperand(BinaryOperator *BO, bool SignExtended,
319 bool CanTraceInto(bool SignExtended, bool ZeroExtended, BinaryOperator *BO,
513 BinaryOperator *BO, in CanTraceInto() argument
518 if (BO->getOpcode() != Instruction::Add && in CanTraceInto()
519 BO->getOpcode() != Instruction::Sub && in CanTraceInto()
520 BO->getOpcode() != Instruction::Or) { in CanTraceInto()
524 Value *LHS = BO->getOperand(0), *RHS = BO->getOperand(1); in CanTraceInto()
527 if (BO->getOpcode() == Instruction::Or && in CanTraceInto()
528 !cast<PossiblyDisjointInst>(BO)->isDisjoint()) in CanTraceInto()
534 if (ZeroExtended && !SignExtended && BO->getOpcode() == Instruction::Sub) in CanTraceInto()
[all …]
H A DBDCE.cpp135 if (auto *BO = dyn_cast<BinaryOperator>(&I)) { in bitTrackingDCE() local
136 APInt Demanded = DB.getDemandedBits(BO); in bitTrackingDCE()
139 if (match(BO->getOperand(1), m_APInt(Mask))) { in bitTrackingDCE()
141 switch (BO->getOpcode()) { in bitTrackingDCE()
155 clearAssumptionsOfUsers(BO, DB); in bitTrackingDCE()
156 BO->replaceAllUsesWith(BO->getOperand(0)); in bitTrackingDCE()
157 Worklist.push_back(BO); in bitTrackingDCE()
H A DReassociate.cpp164 auto *BO = dyn_cast<BinaryOperator>(V); in isReassociableOp() local
165 if (BO && BO->hasOneUse() && BO->getOpcode() == Opcode) in isReassociableOp()
166 if (!isa<FPMathOperator>(BO) || hasFPAssociativeFlags(BO)) in isReassociableOp()
167 return BO; in isReassociableOp()
173 auto *BO = dyn_cast<BinaryOperator>(V); in isReassociableOp() local
174 if (BO && BO->hasOneUse() && in isReassociableOp()
175 (BO->getOpcode() == Opcode1 || BO->getOpcode() == Opcode2)) in isReassociableOp()
176 if (!isa<FPMathOperator>(BO) || hasFPAssociativeFlags(BO)) in isReassociableOp()
177 return BO; in isReassociableOp()
444 if (BinaryOperator *BO = isReassociableOp(Op, Opcode)) { in LinearizeExprTree() local
[all …]
H A DCorrelatedValuePropagation.cpp437 static bool willNotOverflow(BinaryOpIntrinsic *BO, LazyValueInfo *LVI) { in willNotOverflow() argument
439 LVI->getConstantRangeAtUse(BO->getOperandUse(0), /*UndefAllowed*/ false); in willNotOverflow()
441 LVI->getConstantRangeAtUse(BO->getOperandUse(1), /*UndefAllowed*/ false); in willNotOverflow()
443 BO->getBinaryOp(), RRange, BO->getNoWrapKind()); in willNotOverflow()
524 if (auto *BO = dyn_cast<BinaryOperator>(NegX)) in processAbsIntrinsic() local
525 processBinOp(BO, LVI); in processAbsIntrinsic()
627 if (auto *BO = dyn_cast<BinaryOperator>(NewOp)) in processOverflowIntrinsic() local
628 processBinOp(BO, LVI); in processOverflowIntrinsic()
647 if (auto *BO = dyn_cast<BinaryOperator>(BinOp)) in processSaturatingInst() local
648 processBinOp(BO, LVI); in processSaturatingInst()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DExpandLargeDivRem.cpp57 static void scalarize(BinaryOperator *BO, in scalarize() argument
59 VectorType *VTy = cast<FixedVectorType>(BO->getType()); in scalarize()
61 IRBuilder<> Builder(BO); in scalarize()
66 Value *LHS = Builder.CreateExtractElement(BO->getOperand(0), Idx); in scalarize()
67 Value *RHS = Builder.CreateExtractElement(BO->getOperand(1), Idx); in scalarize()
68 Value *Op = Builder.CreateBinOp(BO->getOpcode(), LHS, RHS); in scalarize()
75 BO->replaceAllUsesWith(Result); in scalarize()
76 BO->dropAllReferences(); in scalarize()
77 BO->eraseFromParent(); in scalarize()
124 BinaryOperator *BO = ReplaceVector.pop_back_val(); in runImpl() local
[all …]
/freebsd/contrib/llvm-project/clang/lib/Analysis/
H A DThreadSafetyCommon.cpp525 const BinaryOperator *BO, in translateBinOp() argument
527 til::SExpr *E0 = translate(BO->getLHS(), Ctx); in translateBinOp()
528 til::SExpr *E1 = translate(BO->getRHS(), Ctx); in translateBinOp()
536 const BinaryOperator *BO, in translateBinAssign() argument
539 const Expr *LHS = BO->getLHS(); in translateBinAssign()
540 const Expr *RHS = BO->getRHS(); in translateBinAssign()
561 til::SExpr *SExprBuilder::translateBinaryOperator(const BinaryOperator *BO, in translateBinaryOperator() argument
563 switch (BO->getOpcode()) { in translateBinaryOperator()
566 return new (Arena) til::Undefined(BO); in translateBinaryOperator()
568 case BO_Mul: return translateBinOp(til::BOP_Mul, BO, Ctx); in translateBinaryOperator()
[all …]
H A DUninitializedValues.cpp305 void VisitBinaryOperator(BinaryOperator *BO);
367 if (const auto *BO = dyn_cast<BinaryOperator>(E)) { in classify() local
368 switch (BO->getOpcode()) { in classify()
371 classify(BO->getLHS(), C); in classify()
374 classify(BO->getRHS(), C); in classify()
395 void ClassifyRefs::VisitBinaryOperator(BinaryOperator *BO) { in VisitBinaryOperator() argument
401 if (BO->isCompoundAssignmentOp()) in VisitBinaryOperator()
402 classify(BO->getLHS(), Use); in VisitBinaryOperator()
403 else if (BO->getOpcode() == BO_Assign || BO->getOpcode() == BO_Comma) in VisitBinaryOperator()
404 classify(BO->getLHS(), Ignore); in VisitBinaryOperator()
[all …]
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DInstrTypes.h249 BinaryOperator *BO = Create(Opc, V1, V2, Name, InsertBefore);
250 BO->copyIRFlags(CopyO);
251 return BO;
258 BinaryOperator *BO = Create(Opc, V1, V2, Name, InsertBefore);
259 BO->setFastMathFlags(FMF);
260 return BO;
308 BinaryOperator *BO = Create(Opc, V1, V2, Name);
309 BO->setHasNoSignedWrap(true);
310 return BO;
314 BinaryOperator *BO = Create(Opc, V1, V2, Name, BB);
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DScalarEvolutionAliasAnalysis.cpp108 Value *BO = GetBaseValue(BS); in alias() local
109 if ((AO && AO != LocA.Ptr) || (BO && BO != LocB.Ptr)) in alias()
114 MemoryLocation(BO ? BO : LocB.Ptr, in alias()
115 BO ? LocationSize::beforeOrAfterPointer() in alias()
117 BO ? AAMDNodes() : LocB.AATags), in alias()
H A DPHITransAddr.cpp281 if (BinaryOperator *BO = dyn_cast<BinaryOperator>(U)) in translateSubExpr() local
282 if (BO->getOpcode() == Instruction::Add && in translateSubExpr()
283 BO->getOperand(0) == LHS && BO->getOperand(1) == RHS && in translateSubExpr()
284 BO->getParent()->getParent() == CurBB->getParent() && in translateSubExpr()
285 (!DT || DT->dominates(BO->getParent(), PredBB))) in translateSubExpr()
286 return BO; in translateSubExpr()
/freebsd/contrib/llvm-project/clang/lib/ARCMigrate/
H A DTransZeroOutPropsInDealloc.cpp151 if (BinaryOperator *BO = dyn_cast<BinaryOperator>(E)) in isZeroingPropIvar() local
152 return isZeroingPropIvar(BO); in isZeroingPropIvar()
191 BinaryOperator *BO = dyn_cast<BinaryOperator>(PO->getSyntacticForm()); in isZeroingPropIvar() local
192 if (!BO) return false; in isZeroingPropIvar()
193 if (BO->getOpcode() != BO_Assign) return false; in isZeroingPropIvar()
196 dyn_cast<ObjCPropertyRefExpr>(BO->getLHS()->IgnoreParens()); in isZeroingPropIvar()
208 return isZero(cast<OpaqueValueExpr>(BO->getRHS())->getSourceExpr()); in isZeroingPropIvar()
/freebsd/contrib/llvm-project/clang/lib/Sema/
H A DSemaConcept.cpp46 if (auto *BO = dyn_cast<BinaryOperator>(E)) { in LogicalBinOp() local
47 Op = BinaryOperator::getOverloadedOperator(BO->getOpcode()); in LogicalBinOp()
48 LHS = BO->getLHS(); in LogicalBinOp()
49 RHS = BO->getRHS(); in LogicalBinOp()
50 Loc = BO->getExprLoc(); in LogicalBinOp()
100 if (LogicalBinOp BO = ConstraintExpression) { in CheckConstraintExpression() local
101 return CheckConstraintExpression(BO.getLHS(), NextToken, in CheckConstraintExpression()
103 CheckConstraintExpression(BO.getRHS(), NextToken, in CheckConstraintExpression()
331 if (LogicalBinOp BO = ConstraintExpr) in calculateConstraintSatisfaction() local
333 S, BO.getLHS(), BO.getOp(), BO.getRHS(), Satisfaction, Evaluator); in calculateConstraintSatisfaction()
[all …]
/freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/
H A DInvalidatedIteratorChecker.cpp44 void checkPreStmt(const BinaryOperator *BO, CheckerContext &C) const;
84 void InvalidatedIteratorChecker::checkPreStmt(const BinaryOperator *BO, in checkPreStmt() argument
87 BinaryOperatorKind OK = BO->getOpcode(); in checkPreStmt()
88 SVal LVal = State->getSVal(BO->getLHS(), C.getLocationContext()); in checkPreStmt()
H A DDirectIvarAssignment.cpp76 void VisitBinaryOperator(const BinaryOperator *BO);
166 const BinaryOperator *BO) { in VisitBinaryOperator() argument
167 if (!BO->isAssignmentOp()) in VisitBinaryOperator()
171 dyn_cast<ObjCIvarRefExpr>(BO->getLHS()->IgnoreParenCasts()); in VisitBinaryOperator()
H A DIteratorRangeChecker.cpp52 void checkPreStmt(const BinaryOperator *BO, CheckerContext &C) const;
161 void IteratorRangeChecker::checkPreStmt(const BinaryOperator *BO, in checkPreStmt() argument
164 BinaryOperatorKind OK = BO->getOpcode(); in checkPreStmt()
165 SVal LVal = State->getSVal(BO->getLHS(), C.getLocationContext()); in checkPreStmt()
170 SVal RVal = State->getSVal(BO->getRHS(), C.getLocationContext()); in checkPreStmt()
171 if (!BO->getRHS()->getType()->isIntegralOrEnumerationType()) in checkPreStmt()
/freebsd/contrib/llvm-project/clang/lib/AST/Interp/
H A DCompiler.cpp687 bool Compiler<Emitter>::VisitBinaryOperator(const BinaryOperator *BO) { in VisitBinaryOperator() argument
689 if (BO->isLogicalOp()) in VisitBinaryOperator()
690 return this->VisitLogicalBinOp(BO); in VisitBinaryOperator()
692 const Expr *LHS = BO->getLHS(); in VisitBinaryOperator()
693 const Expr *RHS = BO->getRHS(); in VisitBinaryOperator()
697 if (BO->isCommaOp()) { in VisitBinaryOperator()
706 if (BO->getType()->isAnyComplexType()) in VisitBinaryOperator()
707 return this->VisitComplexBinOp(BO); in VisitBinaryOperator()
710 BO->isComparisonOp()) in VisitBinaryOperator()
711 return this->emitComplexComparison(LHS, RHS, BO); in VisitBinaryOperator()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineCasts.cpp1722 auto *BO = dyn_cast<BinaryOperator>(FPT.getOperand(0)); in visitFPTrunc() local
1723 if (BO && BO->hasOneUse()) { in visitFPTrunc()
1725 getMinimumFPType(BO->getOperand(0), /*PreferBFloat=*/Ty->isBFloatTy()); in visitFPTrunc()
1727 getMinimumFPType(BO->getOperand(1), /*PreferBFloat=*/Ty->isBFloatTy()); in visitFPTrunc()
1728 unsigned OpWidth = BO->getType()->getFPMantissaWidth(); in visitFPTrunc()
1733 switch (BO->getOpcode()) { in visitFPTrunc()
1756 Value *LHS = Builder.CreateFPTrunc(BO->getOperand(0), Ty); in visitFPTrunc()
1757 Value *RHS = Builder.CreateFPTrunc(BO->getOperand(1), Ty); in visitFPTrunc()
1758 Instruction *RI = BinaryOperator::Create(BO->getOpcode(), LHS, RHS); in visitFPTrunc()
1759 RI->copyFastMathFlags(BO); in visitFPTrunc()
[all …]
H A DInstCombineMulDivRem.cpp238 BinaryOperator *BO = BinaryOperator::CreateMul(NewOp, Shl); in visitMul() local
240 BO->setHasNoUnsignedWrap(); in visitMul()
242 BO->setHasNoSignedWrap(); in visitMul()
243 return BO; in visitMul()
316 auto *BO = BinaryOperator::CreateAdd(NewMul, NewC); in visitMul() local
321 BO->setHasNoUnsignedWrap(); in visitMul()
323 return BO; in visitMul()
1238 auto *BO = BinaryOperator::Create(I.getOpcode(), X, in commonIDivTransforms() local
1240 BO->setIsExact(I.isExact()); in commonIDivTransforms()
1241 return BO; in commonIDivTransforms()
[all …]
/freebsd/contrib/llvm-project/clang/lib/AST/
H A DExprCXX.cpp79 if (auto *BO = dyn_cast<BinaryOperator>(E)) { in getDecomposedForm() local
80 assert(!SkippedNot || BO->getOpcode() == BO_EQ); in getDecomposedForm()
81 Result.Opcode = SkippedNot ? BO_NE : BO->getOpcode(); in getDecomposedForm()
82 Result.LHS = BO->getLHS(); in getDecomposedForm()
83 Result.RHS = BO->getRHS(); in getDecomposedForm()
84 Result.InnerBinOp = BO; in getDecomposedForm()
85 } else if (auto *BO = dyn_cast<CXXOperatorCallExpr>(E)) { in getDecomposedForm() local
86 assert(!SkippedNot || BO->getOperator() == OO_EqualEqual); in getDecomposedForm()
87 assert(BO->isInfixBinaryOp()); in getDecomposedForm()
88 switch (BO->getOperator()) { in getDecomposedForm()
[all …]
/freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/WebKit/
H A DUncountedLocalVarsChecker.cpp144 bool VisitBinaryOperator(const BinaryOperator *BO) { in checkASTDecl()
145 if (BO->isAssignmentOp()) { in checkASTDecl()
146 if (auto *VarRef = dyn_cast<DeclRefExpr>(BO->getLHS())) { in checkASTDecl()
148 Checker->visitVarDecl(V, BO->getRHS()); in checkASTDecl()
/freebsd/sys/powerpc/powerpc/
H A Ddb_disasm.c620 u_int BO, BI; in disasm_fields() local
621 BO = extract_field(instr, 31 - 10, 5); in disasm_fields()
624 if (BO & 4) { in disasm_fields()
626 if (BO & 16) { in disasm_fields()
633 APP_PSTRS(condstr[((BO & 8) >> 1) + (BI & 3)]); in disasm_fields()
640 if (BO & 2) in disasm_fields()
644 if ((BO & 24) == 0) in disasm_fields()
646 else if ((BO & 24) == 8) in disasm_fields()
655 if ((BO & 20) != 20 && (func & Op_BO) == 0) in disasm_fields()
762 u_int BO; in disasm_fields() local
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Support/
H A DFormatVariadic.cpp97 std::size_t BO = Fmt.find_first_of('{'); in splitLiteralAndReplacement() local
98 return std::make_pair(ReplacementItem{Fmt.substr(0, BO)}, Fmt.substr(BO)); in splitLiteralAndReplacement()

123456