Lines Matching refs:Op0

720       Value *Op0 = LHS->getOperand(0), *Op1 = LHS->getOperand(1);
723 return getNewICmpValue(isSigned, Code, Op0, Op1, Builder);
1019 Value *Op0 = I.getOperand(0), *Op1 = I.getOperand(1);
1021 if (Value *V = SimplifyAndInst(Op0, Op1, TD))
1037 if (BinaryOperator *Op0I = dyn_cast<BinaryOperator>(Op0)) {
1116 if (match(Op0, m_Trunc(m_And(m_Value(X), m_ConstantInt(YC))))) {
1129 if (SelectInst *SI = dyn_cast<SelectInst>(Op0))
1132 if (isa<PHINode>(Op0))
1139 if (Value *Op0NotVal = dyn_castNotVal(Op0))
1141 if (Op0->hasOneUse() && Op1->hasOneUse()) {
1150 if (match(Op0, m_Or(m_Value(A), m_Value(B))) &&
1157 match(Op0, m_Not(m_And(m_Value(C), m_Value(D)))) &&
1163 Value *tmpOp0 = Op0;
1165 if (Op0->hasOneUse() &&
1166 match(Op0, m_Xor(m_Value(A), m_Value(B)))) {
1168 tmpOp1 = Op0;
1189 if (match(Op0, m_Or(m_Not(m_Specific(Op1)), m_Value(A))) ||
1190 match(Op0, m_Or(m_Value(A), m_Not(m_Specific(Op1)))))
1192 if (match(Op1, m_Or(m_Not(m_Specific(Op0)), m_Value(A))) ||
1193 match(Op1, m_Or(m_Value(A), m_Not(m_Specific(Op0)))))
1194 return BinaryOperator::CreateAnd(A, Op0);
1198 if (ICmpInst *LHS = dyn_cast<ICmpInst>(Op0))
1210 if (CastInst *Op0C = dyn_cast<CastInst>(Op0))
1243 if (BinaryOperator *SI0 = dyn_cast<BinaryOperator>(Op0))
1448 Value *Op0 = LHS->getOperand(0), *Op1 = LHS->getOperand(1);
1451 return getNewICmpValue(isSigned, Code, Op0, Op1, Builder);
1721 Value *Op0 = I.getOperand(0), *Op1 = I.getOperand(1);
1723 if (Value *V = SimplifyOrInst(Op0, Op1, TD))
1739 if (match(Op0, m_And(m_Value(X), m_ConstantInt(C1))) &&
1741 Op0->hasOneUse()) {
1743 Or->takeName(Op0);
1750 if (match(Op0, m_Xor(m_Value(X), m_ConstantInt(C1))) &&
1751 Op0->hasOneUse()) {
1753 Or->takeName(Op0);
1760 if (SelectInst *SI = dyn_cast<SelectInst>(Op0))
1764 if (isa<PHINode>(Op0))
1774 if (match(Op0, m_Or(m_Value(), m_Value())) ||
1776 (match(Op0, m_LogicalShift(m_Value(), m_Value())) &&
1783 if (Op0->hasOneUse() &&
1784 match(Op0, m_Xor(m_Value(A), m_ConstantInt(C1))) &&
1787 NOr->takeName(Op0);
1794 MaskedValueIsZero(Op0, C1->getValue())) {
1795 Value *NOr = Builder->CreateOr(A, Op0);
1796 NOr->takeName(Op0);
1802 if (match(Op0, m_And(m_Value(A), m_Value(C))) &&
1903 Instruction *Ret = FoldOrWithConstants(I, Op0, A, V1, D);
1910 if (BinaryOperator *SI0 = dyn_cast<BinaryOperator>(Op0))
1922 if (Value *Op0NotVal = dyn_castNotVal(Op0))
1924 if (Op0->hasOneUse() && Op1->hasOneUse()) {
1932 if (match(Op0, m_Xor(m_Value(), m_Value()))) {
1933 std::swap(Op0, Op1);
1941 if (Op0 == A || Op0 == B)
1944 if (match(Op0, m_And(m_Specific(A), m_Specific(B))) ||
1945 match(Op0, m_And(m_Specific(B), m_Specific(A))))
1948 if (Op1->hasOneUse() && match(A, m_Not(m_Specific(Op0)))) {
1950 return BinaryOperator::CreateOr(Not, Op0);
1952 if (Op1->hasOneUse() && match(B, m_Not(m_Specific(Op0)))) {
1954 return BinaryOperator::CreateOr(Not, Op0);
1962 if ((Op0 == B->getOperand(0) || Op0 == B->getOperand(1)) &&
1965 Value *NotOp = Op0 == B->getOperand(0) ? B->getOperand(1) :
1968 return BinaryOperator::CreateOr(Not, Op0);
1972 std::swap(Op0, Op1);
1986 if (CastInst *Op0C = dyn_cast<CastInst>(Op0)) {
2022 if (match(Op0, m_SExt(m_Value(A))) && A->getType()->isIntegerTy(1))
2025 return SelectInst::Create(A, ConstantInt::getSigned(I.getType(), -1), Op0);
2032 if (Op0->hasOneUse() && !isa<ConstantInt>(Op1) &&
2033 match(Op0, m_Or(m_Value(A), m_ConstantInt(C1)))) {
2035 Inner->takeName(Op0);
2044 Value *Op0 = I.getOperand(0), *Op1 = I.getOperand(1);
2046 if (Value *V = SimplifyXorInst(Op0, Op1, TD))
2099 if (RHS->isOne() && Op0->hasOneUse())
2101 if (CmpInst *CI = dyn_cast<CmpInst>(Op0))
2107 if (CastInst *Op0C = dyn_cast<CastInst>(Op0)) {
2122 if (BinaryOperator *Op0I = dyn_cast<BinaryOperator>(Op0)) {
2167 if (SelectInst *SI = dyn_cast<SelectInst>(Op0))
2170 if (isa<PHINode>(Op0))
2179 if (A == Op0) { // B^(B|A) == (A|B)^B
2182 std::swap(Op0, Op1);
2183 } else if (B == Op0) { // B^(A|B) == (A|B)^B
2185 std::swap(Op0, Op1);
2189 if (A == Op0) { // A^(A&B) -> A^(B&A)
2193 if (B == Op0) { // A^(B&A) -> (B&A)^A
2195 std::swap(Op0, Op1);
2200 BinaryOperator *Op0I = dyn_cast<BinaryOperator>(Op0);
2257 Value *Op0 = LHS->getOperand(0), *Op1 = LHS->getOperand(1);
2261 getNewICmpValue(isSigned, Code, Op0, Op1,
2267 if (CastInst *Op0C = dyn_cast<CastInst>(Op0)) {