Lines Matching refs:C2

780   const APInt *C1 = nullptr, *C2 = nullptr;  in checkForNegativeOperand()  local
794 if (match(Y, m_Or(m_Value(Z), m_APInt(C2))) && (*C2 == ~(*C1))) { in checkForNegativeOperand()
797 } else if (match(Y, m_And(m_Value(Z), m_APInt(C2))) && (*C1 == *C2)) { in checkForNegativeOperand()
819 if (match(Y, m_And(m_Value(Z), m_APInt(C2))) && *C1 == (*C2 + 1)) { in checkForNegativeOperand()
820 Value *NewOr = Builder.CreateOr(Z, ~(*C2)); in checkForNegativeOperand()
869 const APInt *C2; in foldAddWithConstant() local
870 if (match(Op0, m_ZExt(m_Xor(m_Value(X), m_APInt(C2)))) && in foldAddWithConstant()
871 C2->isMinSignedValue() && C2->sext(Ty->getScalarSizeInBits()) == *C) in foldAddWithConstant()
875 if (match(Op0, m_OneUse(m_ZExt(m_NUWAdd(m_Value(X), m_APInt(C2))))) && in foldAddWithConstant()
876 C->isNegative() && C->sge(-C2->sext(C->getBitWidth()))) { in foldAddWithConstant()
878 ConstantInt::get(X->getType(), *C2 + C->trunc(C2->getBitWidth())); in foldAddWithConstant()
895 if (match(Op0, m_AShr(m_Shl(m_Value(X), m_APInt(C2)), m_APInt(C3))) && in foldAddWithConstant()
896 C2 == C3 && *C2 == Ty->getScalarSizeInBits() - 1) { in foldAddWithConstant()
1147 ConstantInt *C2; in visitAdd() local
1149 match(LHS, m_And(m_Value(X), m_ConstantInt(C2))) && in visitAdd()
1150 CRHS->getValue() == (CRHS->getValue() & C2->getValue())) { in visitAdd()
1159 APInt AddRHSHighBitsAnd(AddRHSHighBits & C2->getValue()); in visitAdd()
1164 return BinaryOperator::CreateAnd(NewAdd, C2); in visitAdd()
1536 Constant *C2; in visitSub() local
1537 if (match(Op1, m_Add(m_Value(X), m_Constant(C2)))) in visitSub()
1538 return BinaryOperator::CreateSub(ConstantExpr::getSub(C, C2), X); in visitSub()