Lines Matching defs:Builder

98                               InstCombiner::BuilderTy *Builder) {
102 return Builder->CreateICmp(NewPred, LHS, RHS);
110 InstCombiner::BuilderTy *Builder) {
125 return Builder->CreateFCmp(Pred, LHS, RHS);
144 Value *And = Builder->CreateAnd(X, AndRHS);
153 Value *Or = Builder->CreateOr(X, Together);
164 Value *And = Builder->CreateAnd(X, Together);
196 Value *NewAnd = Builder->CreateAnd(X, AndRHS);
260 ShVal = Builder->CreateLShr(ShVal, OpRHS, Op->getName());
289 return Builder->CreateICmp(pred, V, Hi);
294 Value *Add = Builder->CreateAdd(V, NegLo, V->getName()+".off");
296 return Builder->CreateICmpULT(Add, UpperBound);
307 return Builder->CreateICmp(pred, V, Hi);
313 Value *Add = Builder->CreateAdd(V, NegLo, V->getName()+".off");
315 return Builder->CreateICmpUGT(Add, LowerBound);
386 return Builder->CreateSub(LHSI->getOperand(0), RHS, "fold");
387 return Builder->CreateAdd(LHSI->getOperand(0), RHS, "fold");
633 llvm::InstCombiner::BuilderTy* Builder) {
648 Value* newOr = Builder->CreateOr(B, D);
649 Value* newAnd = Builder->CreateAnd(A, newOr);
654 return Builder->CreateICmp(NEWCC, newAnd, zero);
659 Value* newOr = Builder->CreateOr(B, D);
660 Value* newAnd = Builder->CreateAnd(A, newOr);
661 return Builder->CreateICmp(NEWCC, newAnd, newOr);
666 Value* newAnd1 = Builder->CreateAnd(B, D);
667 Value* newAnd = Builder->CreateAnd(A, newAnd1);
668 return Builder->CreateICmp(NEWCC, newAnd, A);
701 Value *newOr1 = Builder->CreateOr(B, D);
703 Value *newAnd = Builder->CreateAnd(A, newOr1);
704 return Builder->CreateICmp(NEWCC, newAnd, newOr2);
723 return getNewICmpValue(isSigned, Code, Op0, Op1, Builder);
728 if (Value *V = foldLogOpOfMaskedICmps(LHS, RHS, ICmpInst::ICMP_EQ, Builder))
742 Value *NewOr = Builder->CreateOr(Val, Val2);
743 return Builder->CreateICmp(LHSCC, NewOr, LHSCst);
748 Value *NewOr = Builder->CreateOr(Val, Val2);
749 return Builder->CreateICmp(LHSCC, NewOr, LHSCst);
781 Value *NewAnd = Builder->CreateAnd(V, Low | AndCst->getValue());
784 return Builder->CreateICmp(LHSCC, NewAnd, NewVal);
852 return Builder->CreateICmpULT(Val, LHSCst);
856 return Builder->CreateICmpSLT(Val, LHSCst);
865 Value *Add = Builder->CreateAdd(Val, AddCST, Val->getName()+".off");
866 return Builder->CreateICmpUGT(Add, ConstantInt::get(Add->getType(), 1));
908 return Builder->CreateICmp(LHSCC, Val, RHSCst);
926 return Builder->CreateICmp(LHSCC, Val, RHSCst);
952 return Builder->CreateFCmpORD(LHS->getOperand(0), RHS->getOperand(0));
959 return Builder->CreateFCmpORD(LHS->getOperand(0), RHS->getOperand(0));
977 return Builder->CreateFCmp((FCmpInst::Predicate)Op0CC, Op0LHS, Op0RHS);
1009 return getFCmpValue(true, Op1Pred, Op0LHS, Op0RHS, Builder);
1050 Value *NewRHS = Builder->CreateAnd(Op0RHS, AndRHS,
1057 Value *NewLHS = Builder->CreateAnd(Op0LHS, AndRHS,
1089 Value *NewNeg = Builder->CreateNeg(Op0RHS);
1101 Builder->CreateICmpEQ(Op0RHS, Constant::getNullValue(I.getType()));
1121 Value *NewCast = Builder->CreateTrunc(X, I.getType(), "and.shrunk");
1142 Value *Or = Builder->CreateOr(Op0NotVal, Op1NotVal,
1184 return BinaryOperator::CreateAnd(A, Builder->CreateNot(B));
1221 Value *NewOp = Builder->CreateAnd(Op0COp, Op1COp, I.getName());
1248 Builder->CreateAnd(SI0->getOperand(0), SI1->getOperand(0),
1451 return getNewICmpValue(isSigned, Code, Op0, Op1, Builder);
1457 if (Value *V = foldLogOpOfMaskedICmps(LHS, RHS, ICmpInst::ICMP_NE, Builder))
1469 Value *NewOr = Builder->CreateOr(Val, Val2);
1470 return Builder->CreateICmp(LHSCC, NewOr, LHSCst);
1480 return Builder->CreateICmpULE(Val, LHSCst);
1530 Value *Add = Builder->CreateAdd(Val, AddCST, Val->getName()+".off");
1532 return Builder->CreateICmpULT(Add, AddCST);
1646 return Builder->CreateFCmpUNO(LHS->getOperand(0), RHS->getOperand(0));
1653 return Builder->CreateFCmpUNO(LHS->getOperand(0), RHS->getOperand(0));
1670 return Builder->CreateFCmp((FCmpInst::Predicate)Op0CC, Op0LHS, Op0RHS);
1684 return getFCmpValue(Op0Ordered, Op0Pred|Op1Pred, Op0LHS, Op0RHS, Builder);
1712 Value *NewOp = Builder->CreateAnd((V1 == A) ? B : A, CI1);
1742 Value *Or = Builder->CreateOr(X, RHS);
1752 Value *Or = Builder->CreateOr(X, RHS);
1786 Value *NOr = Builder->CreateOr(A, Op1);
1795 Value *NOr = Builder->CreateOr(A, Op0);
1855 V2 = Builder->CreateOr(V1, ConstantExpr::getOr(C3, C4), "bitfield");
1914 Value *NewOp = Builder->CreateOr(SI0->getOperand(0), SI1->getOperand(0),
1925 Value *And = Builder->CreateAnd(Op0NotVal, Op1NotVal,
1949 Value *Not = Builder->CreateNot(B, B->getName()+".not");
1953 Value *Not = Builder->CreateNot(A, A->getName()+".not");
1967 Value *Not = Builder->CreateNot(NotOp, NotOp->getName()+".not");
1999 Value *NewOp = Builder->CreateOr(Op0COp, Op1COp, I.getName());
2034 Value *Inner = Builder->CreateOr(A, Op1);
2069 Builder->CreateNot(Op0I->getOperand(1),
2081 Builder->CreateNot(Op0I->getOperand(0), "notlhs");
2083 Builder->CreateNot(Op0I->getOperand(1), "notrhs");
2208 return BinaryOperator::CreateAnd(A, Builder->CreateNot(Op1));
2215 return BinaryOperator::CreateAnd(Builder->CreateNot(A), Op1);
2226 Builder->CreateXor(Op0I->getOperand(0), Op1I->getOperand(0),
2262 Builder));
2277 Value *NewOp = Builder->CreateXor(Op0C->getOperand(0),