Searched refs:BO (Results 1 - 25 of 81) sorted by relevance

1234

/freebsd-11.0-release/contrib/llvm/include/llvm/IR/
H A DNoFolder.h42 BinaryOperator *BO = BinaryOperator::CreateAdd(LHS, RHS); local
43 if (HasNUW) BO->setHasNoUnsignedWrap();
44 if (HasNSW) BO->setHasNoSignedWrap();
45 return BO;
58 BinaryOperator *BO = BinaryOperator::CreateSub(LHS, RHS); local
59 if (HasNUW) BO->setHasNoUnsignedWrap();
60 if (HasNSW) BO->setHasNoSignedWrap();
61 return BO;
74 BinaryOperator *BO = BinaryOperator::CreateMul(LHS, RHS); local
75 if (HasNUW) BO
120 BinaryOperator *BO = BinaryOperator::CreateShl(LHS, RHS); local
158 BinaryOperator *BO = BinaryOperator::CreateNeg(C); local
[all...]
H A DInstrTypes.h391 BinaryOperator *BO = Create(Opc, V1, V2, Name); local
392 BO->setHasNoSignedWrap(true);
393 return BO;
397 BinaryOperator *BO = Create(Opc, V1, V2, Name, BB); local
398 BO->setHasNoSignedWrap(true);
399 return BO;
403 BinaryOperator *BO = Create(Opc, V1, V2, Name, I); local
404 BO->setHasNoSignedWrap(true);
405 return BO;
410 BinaryOperator *BO local
416 BinaryOperator *BO = Create(Opc, V1, V2, Name, BB); local
422 BinaryOperator *BO = Create(Opc, V1, V2, Name, I); local
429 BinaryOperator *BO = Create(Opc, V1, V2, Name); local
435 BinaryOperator *BO = Create(Opc, V1, V2, Name, BB); local
441 BinaryOperator *BO = Create(Opc, V1, V2, Name, I); local
[all...]
/freebsd-11.0-release/contrib/llvm/lib/Analysis/
H A DScalarEvolutionAliasAnalysis.cpp79 Value *BO = GetBaseValue(BS); local
80 if ((AO && AO != LocA.Ptr) || (BO && BO != LocB.Ptr))
84 MemoryLocation(BO ? BO : LocB.Ptr,
85 BO ? +MemoryLocation::UnknownSize : LocB.Size,
86 BO ? AAMDNodes() : LocB.AATags)) == NoAlias)
H A DPHITransAddr.cpp295 if (BinaryOperator *BO = dyn_cast<BinaryOperator>(U))
296 if (BO->getOpcode() == Instruction::Add &&
297 BO->getOperand(0) == LHS && BO->getOperand(1) == RHS &&
298 BO->getParent()->getParent() == CurBB->getParent() &&
299 (!DT || DT->dominates(BO->getParent(), PredBB)))
300 return BO;
/freebsd-11.0-release/contrib/llvm/lib/Transforms/Scalar/
H A DSeparateConstOffsetFromGEP.cpp248 APInt findInEitherOperand(BinaryOperator *BO, bool SignExtended,
290 /// of binary operator BO for a constant offset.
292 /// \p SignExtended Whether BO is surrounded by sext
293 /// \p ZeroExtended Whether BO is surrounded by zext
294 /// \p NonNegative Whether BO is known to be non-negative, e.g., an in-bound
296 bool CanTraceInto(bool SignExtended, bool ZeroExtended, BinaryOperator *BO,
447 BinaryOperator *BO,
452 if (BO->getOpcode() != Instruction::Add &&
453 BO->getOpcode() != Instruction::Sub &&
454 BO
445 CanTraceInto(bool SignExtended, bool ZeroExtended, BinaryOperator *BO, bool NonNegative) argument
508 findInEitherOperand(BinaryOperator *BO, bool SignExtended, bool ZeroExtended) argument
621 BinaryOperator *BO = cast<BinaryOperator>(U); local
644 BinaryOperator *BO = cast<BinaryOperator>(UserChain[ChainIndex]); local
[all...]
H A DReassociate.cpp592 if (BinaryOperator *BO = isReassociableOp(Op, Opcode)) {
595 Worklist.push_back(std::make_pair(BO, Weight));
631 if (BinaryOperator *BO = isReassociableOp(Op, Opcode)) {
633 Worklist.push_back(std::make_pair(BO, It->second));
662 if (BinaryOperator *BO = dyn_cast<BinaryOperator>(Op))
663 if ((Opcode == Instruction::Mul && BinaryOperator::isNeg(BO)) ||
664 (Opcode == Instruction::FMul && BinaryOperator::isFNeg(BO))) {
666 BO = LowerNegateToMultiply(BO);
667 DEBUG(dbgs() << *BO << '\
779 BinaryOperator *BO = isReassociableOp(OldLHS, Opcode); local
785 BinaryOperator *BO = isReassociableOp(OldRHS, Opcode); local
810 BinaryOperator *BO = isReassociableOp(Op->getOperand(1), Opcode); local
824 BinaryOperator *BO = isReassociableOp(Op->getOperand(0), Opcode); local
1099 BinaryOperator *BO = isReassociableOp(V, Instruction::Mul, Instruction::FMul); local
1175 BinaryOperator *BO = isReassociableOp(V, Instruction::Mul, Instruction::FMul); local
[all...]
H A DJumpThreading.cpp161 bool ProcessBranchOnXOR(BinaryOperator *BO);
528 } else if (BinaryOperator *BO = dyn_cast<BinaryOperator>(I)) {
531 if (ConstantInt *CI = dyn_cast<ConstantInt>(BO->getOperand(1))) {
533 ComputeValueKnownInPredecessors(BO->getOperand(0), BB, LHSVals,
539 Constant *Folded = ConstantExpr::get(BO->getOpcode(), V, CI);
1312 bool JumpThreading::ProcessBranchOnXOR(BinaryOperator *BO) { argument
1313 BasicBlock *BB = BO->getParent();
1317 if (isa<ConstantInt>(BO->getOperand(0)) ||
1318 isa<ConstantInt>(BO->getOperand(1)))
1346 if (!ComputeValueKnownInPredecessors(BO
[all...]
/freebsd-11.0-release/contrib/llvm/lib/Transforms/InstCombine/
H A DInstCombineMulDivRem.cpp190 BinaryOperator *BO = BinaryOperator::CreateNeg(Op0, I.getName()); local
192 BO->setHasNoSignedWrap();
193 return BO;
207 BinaryOperator *BO = BinaryOperator::CreateMul(NewOp, Shl); local
209 BO->setHasNoUnsignedWrap();
212 BO->setHasNoSignedWrap();
213 return BO;
295 BinaryOperator *BO = BinaryOperator::CreateMul(Op0v, Op1v); local
299 BO->setHasNoSignedWrap();
300 return BO;
308 BinaryOperator *BO = dyn_cast<BinaryOperator>(Op0); local
351 BinaryOperator *BO = nullptr; local
825 BinaryOperator *BO = BinaryOperator::Create( local
833 BinaryOperator *BO = BinaryOperator::Create( local
853 BinaryOperator *BO = BinaryOperator::Create( local
861 BinaryOperator *BO = BinaryOperator::Create( local
1065 BinaryOperator *BO = BinaryOperator::CreateUDiv( local
1150 auto *BO = BinaryOperator::CreateSDiv(X, ConstantExpr::getNeg(RHS)); local
1163 auto *BO = BinaryOperator::CreateUDiv(Op0, Op1, I.getName()); local
1173 auto *BO = BinaryOperator::CreateUDiv(Op0, Op1, I.getName()); local
[all...]
H A DInstCombineShifts.cpp219 BinaryOperator *BO = cast<BinaryOperator>(I); local
220 unsigned TypeWidth = BO->getType()->getScalarSizeInBits();
223 ConstantInt *CI = cast<ConstantInt>(BO->getOperand(1));
232 BO->setOperand(1, ConstantInt::get(BO->getType(), NewShAmt));
233 BO->setHasNoUnsignedWrap(false);
234 BO->setHasNoSignedWrap(false);
242 V = IC.Builder->CreateAnd(BO->getOperand(0),
243 ConstantInt::get(BO->getContext(), Mask));
245 VI->moveBefore(BO);
261 BinaryOperator *BO = cast<BinaryOperator>(I); local
[all...]
H A DInstCombineSelect.cpp184 if (BinaryOperator *BO = dyn_cast<BinaryOperator>(TI)) {
186 return BinaryOperator::Create(BO->getOpcode(), MatchOp, NewSI);
188 return BinaryOperator::Create(BO->getOpcode(), NewSI, MatchOp);
232 BinaryOperator *BO = BinaryOperator::Create(TVI_BO->getOpcode(), local
234 if (isa<PossiblyExactOperator>(BO))
235 BO->setIsExact(TVI_BO->isExact());
236 if (isa<OverflowingBinaryOperator>(BO)) {
237 BO->setHasNoUnsignedWrap(TVI_BO->hasNoUnsignedWrap());
238 BO->setHasNoSignedWrap(TVI_BO->hasNoSignedWrap());
240 return BO;
267 BinaryOperator *BO = BinaryOperator::Create(FVI_BO->getOpcode(), local
[all...]
H A DInstCombineVectorOps.cpp51 if (BinaryOperator *BO = dyn_cast<BinaryOperator>(I))
52 if (BO->hasOneUse() &&
53 (cheapToScalarize(BO->getOperand(0), isConstant) ||
54 cheapToScalarize(BO->getOperand(1), isConstant)))
187 if (BinaryOperator *BO = dyn_cast<BinaryOperator>(I)) {
189 cheapToScalarize(BO, isa<ConstantInt>(EI.getOperand(1)))) {
191 Builder->CreateExtractElement(BO->getOperand(0), EI.getOperand(1),
194 Builder->CreateExtractElement(BO->getOperand(1), EI.getOperand(1),
196 return BinaryOperator::Create(BO->getOpcode(), newEI0, newEI1);
715 BinaryOperator *BO local
[all...]
H A DInstCombineCompares.cpp1753 BinaryOperator *BO = cast<BinaryOperator>(LHSI); local
1755 if (Instruction *Res = FoldICmpShrCst(ICI, BO, ShAmt))
1760 if (ICI.isEquality() && BO->isExact() && BO->hasOneUse()) {
1762 return new ICmpInst(ICI.getPredicate(), BO->getOperand(0), RHS);
1860 if (BinaryOperator *BO = dyn_cast<BinaryOperator>(LHSI)) {
1861 switch (BO->getOpcode()) {
1864 if (RHSV == 0 && isa<ConstantInt>(BO->getOperand(1)) &&BO->hasOneUse()){
1865 const APInt &V = cast<ConstantInt>(BO
[all...]
H A DInstCombineInternal.h94 if (BinaryOperator *BO = dyn_cast<BinaryOperator>(V))
95 if (BO->getOpcode() == Instruction::Add ||
96 BO->getOpcode() == Instruction::Sub)
97 if (isa<Constant>(BO->getOperand(0)) || isa<Constant>(BO->getOperand(1)))
/freebsd-11.0-release/contrib/llvm/tools/clang/lib/Analysis/
H A DThreadSafetyCommon.cpp455 const BinaryOperator *BO,
457 til::SExpr *E0 = translate(BO->getLHS(), Ctx);
458 til::SExpr *E1 = translate(BO->getRHS(), Ctx);
466 const BinaryOperator *BO,
469 const Expr *LHS = BO->getLHS();
470 const Expr *RHS = BO->getRHS();
491 til::SExpr *SExprBuilder::translateBinaryOperator(const BinaryOperator *BO, argument
493 switch (BO->getOpcode()) {
496 return new (Arena) til::Undefined(BO);
498 case BO_Mul: return translateBinOp(til::BOP_Mul, BO, Ct
454 translateBinOp(til::TIL_BinaryOpcode Op, const BinaryOperator *BO, CallingContext *Ctx, bool Reverse) argument
465 translateBinAssign(til::TIL_BinaryOpcode Op, const BinaryOperator *BO, CallingContext *Ctx, bool Assign) argument
[all...]
H A DPseudoConstantAnalysis.cpp94 const BinaryOperator *BO = cast<BinaryOperator>(Head); local
96 const Decl *LHSDecl = getDecl(BO->getLHS()->IgnoreParenCasts());
103 switch (BO->getOpcode()) {
107 const Decl *RHSDecl = getDecl(BO->getRHS()->IgnoreParenCasts());
H A DUninitializedValues.cpp329 void VisitBinaryOperator(BinaryOperator *BO);
389 if (const BinaryOperator *BO = dyn_cast<BinaryOperator>(E)) {
390 switch (BO->getOpcode()) {
393 classify(BO->getLHS(), C);
396 classify(BO->getRHS(), C);
417 void ClassifyRefs::VisitBinaryOperator(BinaryOperator *BO) { argument
423 if (BO->isCompoundAssignmentOp())
424 classify(BO->getLHS(), Use);
425 else if (BO->getOpcode() == BO_Assign || BO
745 VisitBinaryOperator(BinaryOperator *BO) argument
[all...]
/freebsd-11.0-release/contrib/llvm/lib/Transforms/Utils/
H A DSimplifyIndVar.cpp348 /// Annotate BO with nsw / nuw if it provably does not signed-overflow /
350 bool SimplifyIndvar::strengthenOverflowingOperation(BinaryOperator *BO, argument
353 // Fastpath: we don't have any work to do if `BO` is `nuw` and `nsw`.
354 if (BO->hasNoUnsignedWrap() && BO->hasNoSignedWrap())
360 switch (BO->getOpcode()) {
377 unsigned BitWidth = cast<IntegerType>(BO->getType())->getBitWidth();
378 Type *WideTy = IntegerType::get(BO->getContext(), BitWidth * 2);
379 const SCEV *LHS = SE->getSCEV(BO->getOperand(0));
380 const SCEV *RHS = SE->getSCEV(BO
[all...]
/freebsd-11.0-release/contrib/llvm/tools/clang/lib/ARCMigrate/
H A DTransZeroOutPropsInDealloc.cpp154 if (BinaryOperator *BO = dyn_cast<BinaryOperator>(E))
155 return isZeroingPropIvar(BO);
194 BinaryOperator *BO = dyn_cast<BinaryOperator>(PO->getSyntacticForm()); local
195 if (!BO) return false;
196 if (BO->getOpcode() != BO_Assign) return false;
199 dyn_cast<ObjCPropertyRefExpr>(BO->getLHS()->IgnoreParens());
211 return isZero(cast<OpaqueValueExpr>(BO->getRHS())->getSourceExpr());
/freebsd-11.0-release/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/
H A DDirectIvarAssignment.cpp77 void VisitBinaryOperator(const BinaryOperator *BO);
165 const BinaryOperator *BO) {
166 if (!BO->isAssignmentOp())
170 dyn_cast<ObjCIvarRefExpr>(BO->getLHS()->IgnoreParenCasts());
164 VisitBinaryOperator( const BinaryOperator *BO) argument
H A DCheckObjCDealloc.cpp59 if (BinaryOperator* BO = dyn_cast<BinaryOperator>(S))
60 if (BO->isAssignmentOp())
62 dyn_cast<ObjCPropertyRefExpr>(BO->getLHS()->IgnoreParenCasts()))
64 if (BO->getRHS()->isNullPointerConstant(Ctx,
H A DDeadStoresChecker.cpp105 const BinaryOperator *BO = local
107 if (!BO)
109 if (BO->getOpcode() == BO_Assign) {
110 Ex = BO->getRHS();
113 if (BO->getOpcode() == BO_Comma) {
114 Ex = BO->getRHS();
H A DIvarInvalidationChecker.cpp165 void VisitBinaryOperator(const BinaryOperator *BO);
672 const BinaryOperator *BO) {
673 VisitStmt(BO);
677 BinaryOperatorKind Opcode = BO->getOpcode();
683 if (isZero(BO->getRHS())) {
684 check(BO->getLHS());
688 if (Opcode != BO_Assign && isZero(BO->getLHS())) {
689 check(BO->getRHS());
671 VisitBinaryOperator( const BinaryOperator *BO) argument
H A DTestAfterDivZeroChecker.cpp107 if (const BinaryOperator *BO = P->getStmtAs<BinaryOperator>()) {
108 BinaryOperator::Opcode Op = BO->getOpcode();
111 E = BO->getRHS();
/freebsd-11.0-release/contrib/llvm/tools/clang/lib/AST/
H A DExpr.cpp87 } else if (const BinaryOperator *BO = dyn_cast<BinaryOperator>(E)) {
88 if (BO->isPtrMemOp()) {
89 assert(BO->getRHS()->isRValue());
90 E = BO->getLHS();
92 BO->getRHS()->getType()->getAs<MemberPointerType>();
93 Adjustments.push_back(SubobjectAdjustment(MPT, BO->getRHS()));
95 } else if (BO->getOpcode() == BO_Comma) {
96 CommaLHSs.push_back(BO->getLHS());
97 E = BO->getRHS();
136 if (const BinaryOperator *BO
2094 const BinaryOperator *BO = cast<BinaryOperator>(this); local
[all...]
/freebsd-11.0-release/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/
H A DThreadSafetyCommon.h384 const BinaryOperator *BO,
387 const BinaryOperator *BO,
389 til::SExpr *translateBinaryOperator(const BinaryOperator *BO,

Completed in 562 milliseconds

1234