• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/llvm-project/llvm/lib/Transforms/InstCombine/

Lines Matching refs:ConstantInt

71     return ConstantInt::get(CmpInst::makeCmpResultType(LHS->getType()), 0);
73 return ConstantInt::get(CmpInst::makeCmpResultType(LHS->getType()), 1);
105 NewRHS = ConstantInt::get(I.getType(), C->byteSwap());
118 ConstantInt *OpRHS,
119 ConstantInt *AndRHS,
176 return Builder.CreateICmp(Pred, V, ConstantInt::get(Ty, Hi));
182 Builder.CreateSub(V, ConstantInt::get(Ty, Lo), V->getName() + ".off");
183 Constant *HiMinusLo = ConstantInt::get(Ty, Hi - Lo);
231 ConstantInt *ACst = dyn_cast<ConstantInt>(A);
232 ConstantInt *BCst = dyn_cast<ConstantInt>(B);
233 ConstantInt *CCst = dyn_cast<ConstantInt>(C);
298 Y = ConstantInt::get(X->getType(), Mask);
299 Z = ConstantInt::get(X->getType(), 0);
455 ConstantInt *BCst = dyn_cast<ConstantInt>(B);
458 ConstantInt *CCst = dyn_cast<ConstantInt>(C);
461 ConstantInt *DCst = dyn_cast<ConstantInt>(D);
464 ConstantInt *ECst = dyn_cast<ConstantInt>(E);
475 ECst = cast<ConstantInt>(ConstantExpr::getXor(DCst, ECst));
510 Value *NewMask = ConstantInt::get(BCst->getType(), BorD);
511 Value *NewMaskedValue = ConstantInt::get(BCst->getType(), BandBxorDorE);
516 auto IsSubSetOrEqual = [](ConstantInt *C1, ConstantInt *C2) {
519 auto IsSuperSetOrEqual = [](ConstantInt *C1, ConstantInt *C2) {
542 return ConstantInt::get(LHS->getType(), !IsAnd);
564 return ConstantInt::get(LHS->getType(), !IsAnd);
676 ConstantInt *BCst = dyn_cast<ConstantInt>(B);
679 ConstantInt *DCst = dyn_cast<ConstantInt>(D);
721 ConstantInt *CCst = dyn_cast<ConstantInt>(C);
724 ConstantInt *ECst = dyn_cast<ConstantInt>(E);
728 CCst = cast<ConstantInt>(ConstantExpr::getXor(BCst, CCst));
730 ECst = cast<ConstantInt>(ConstantExpr::getXor(DCst, ECst));
736 return ConstantInt::get(LHS->getType(), !IsAnd);
755 ConstantInt *RangeStart = dyn_cast<ConstantInt>(Cmp0->getOperand(1));
836 Value *Or = Builder.CreateOr(X, ConstantInt::get(X->getType(), Xor));
837 return Builder.CreateICmp(Pred, Or, ConstantInt::get(X->getType(), *C2));
849 Value *Add = Builder.CreateAdd(X, ConstantInt::get(X->getType(), -(*C1)));
851 return Builder.CreateICmp(NewPred, Add, ConstantInt::get(X->getType(), 1));
873 ConstantInt *LHSC = dyn_cast<ConstantInt>(LHS->getOperand(1));
874 ConstantInt *RHSC = dyn_cast<ConstantInt>(RHS->getOperand(1));
1019 return Builder.CreateICmpULT(X, ConstantInt::get(X->getType(), HighestBit),
1040 return Builder.CreateICmpEQ(CtPop, ConstantInt::get(CtPop->getType(), 1));
1048 return Builder.CreateICmpNE(CtPop, ConstantInt::get(CtPop->getType(), 1));
1247 ConstantInt *LHSC = dyn_cast<ConstantInt>(LHS->getOperand(1));
1248 ConstantInt *RHSC = dyn_cast<ConstantInt>(RHS->getOperand(1));
1269 ConstantInt *AndC, *SmallC = nullptr, *BigC = nullptr;
1293 Value *NewVal = ConstantInt::get(AndC->getType()->getContext(), N);
1703 if (auto *ScalarC = dyn_cast<ConstantInt>(C))
1715 auto *CI = dyn_cast<ConstantInt>(Elt);
1805 Value *IsZero = Builder.CreateICmpEQ(X, ConstantInt::get(I.getType(), 0));
1812 Constant *NewC = ConstantInt::get(I.getType(), *C & *XorC);
1827 Value *And = Builder.CreateAnd(X, ConstantInt::get(I.getType(),
1830 return BinaryOperator::CreateOr(And, ConstantInt::get(I.getType(),
1859 Constant *ShAmtC = ConstantInt::get(I.getType(), ShiftC->zext(Width));
1865 if (ConstantInt *AndRHS = dyn_cast<ConstantInt>(Op1)) {
1882 ConstantInt *C1;
1902 if (ConstantInt *Op0CI = dyn_cast<ConstantInt>(Op0I->getOperand(1)))
1910 Value *X = nullptr; ConstantInt *YC = nullptr;
2029 return SelectInst::Create(NewICmpInst, X, ConstantInt::getNullValue(Ty));
2308 ConstantInt *LHSC = dyn_cast<ConstantInt>(LHS->getOperand(1));
2309 ConstantInt *RHSC = dyn_cast<ConstantInt>(RHS->getOperand(1));
2331 ConstantInt *LAddC, *RAddC;
2339 ConstantInt *MaxAddC = nullptr;
2356 Value *MaskC = ConstantInt::get(LAddC->getType(), ~DiffC);
2409 Builder.CreateAdd(B, ConstantInt::getSigned(B->getType(), -1)), A);
2453 ConstantInt *AddC;
2609 return BinaryOperator::CreateXor(Or, ConstantInt::get(I.getType(), *CV));
2617 ConstantInt *C1 = dyn_cast<ConstantInt>(C);
2618 ConstantInt *C2 = dyn_cast<ConstantInt>(D);
2642 ConstantInt *C3 = nullptr, *C4 = nullptr;
2799 return SelectInst::Create(A, ConstantInt::getSigned(I.getType(), -1), Op1);
2802 return SelectInst::Create(A, ConstantInt::getSigned(I.getType(), -1), Op0);
2809 ConstantInt *CI;
2810 if (Op0->hasOneUse() && !isa<ConstantInt>(Op1) &&
2841 return SelectInst::Create(NewICmpInst, ConstantInt::getAllOnesValue(Ty),
2966 Value *Zero = ConstantInt::getNullValue(LHS0->getType());
2975 Value *MinusOne = ConstantInt::getAllOnesValue(LHS0->getType());
3065 C = Constant::replaceUndefsWith(C, ConstantInt::getAllOnesValue(EltTy));
3204 C = Constant::replaceUndefsWith(C, ConstantInt::getAllOnesValue(EltTy));
3214 C = Constant::replaceUndefsWith(C, ConstantInt::getNullValue(EltTy));
3253 Constant *NewC = ConstantInt::get(I.getType(), *C + *RHSC);
3258 Constant *NewC = ConstantInt::get(I.getType(), *C + *RHSC);
3265 Constant *NewC = ConstantInt::get(I.getType(), *C ^ *RHSC);
3271 if (ConstantInt *RHSC = dyn_cast<ConstantInt>(Op1)) {
3273 if (ConstantInt *Op0CI = dyn_cast<ConstantInt>(Op0I->getOperand(1))) {
3278 ConstantInt *C1;
3282 (C1 = dyn_cast<ConstantInt>(E1->getOperand(1)))) {
3284 ConstantInt *C2 = Op0CI, *C3 = RHSC;
3291 Value *FoldVal = ConstantInt::get(Opnd0->getType(), FoldConst);
3377 Value *Cmp = Builder.CreateICmpSLT(A, ConstantInt::getNullValue(Ty));