Home | History | Annotate | Download | only in InstCombine

Lines Matching refs:V1

2075   Value *V1 = nullptr;
2077 if (!match(Op, m_And(m_Value(V1), m_ConstantInt(CI2)))) return nullptr;
2082 if (V1 == A || V1 == B) {
2083 Value *NewOp = Builder->CreateAnd((V1 == A) ? B : A, CI1);
2084 return BinaryOperator::CreateOr(NewOp, V1);
2105 Value *V1 = nullptr;
2107 if (!match(Op, m_And(m_Value(V1), m_ConstantInt(CI2))))
2114 if (V1 == A || V1 == B) {
2115 Value *NewOp = Builder->CreateAnd(V1 == A ? B : A, CI1);
2116 return BinaryOperator::CreateXor(NewOp, V1);
2225 Value *V1 = nullptr, *V2 = nullptr;
2232 if (match(A, m_Or(m_Value(V1), m_Value(V2))) &&
2233 ((V1 == B &&
2236 MaskedValueIsZero(V1, ~C1->getValue(), 0, &I)))) // (N|V)
2240 if (match(B, m_Or(m_Value(V1), m_Value(V2))) &&
2241 ((V1 == A &&
2244 MaskedValueIsZero(V1, ~C2->getValue(), 0, &I)))) // (N|V)
2251 if (match(A, m_Or(m_Value(V1), m_ConstantInt(C3))) &&
2253 match(B, m_Or(m_Specific(V1), m_ConstantInt(C4))) &&
2255 V2 = Builder->CreateOr(V1, ConstantExpr::getOr(C3, C4), "bitfield");
2303 if (match(A, m_Or(m_Value(V1), m_Specific(B))) ||
2304 match(A, m_Or(m_Specific(B), m_Value(V1)))) {
2305 Instruction *Ret = FoldOrWithConstants(I, Op1, V1, B, C);
2309 if (match(B, m_Or(m_Specific(A), m_Value(V1))) ||
2310 match(B, m_Or(m_Value(V1), m_Specific(A)))) {
2311 Instruction *Ret = FoldOrWithConstants(I, Op0, A, V1, D);
2315 if (match(A, m_Xor(m_Value(V1), m_Specific(B))) ||
2316 match(A, m_Xor(m_Specific(B), m_Value(V1)))) {
2317 Instruction *Ret = FoldXorWithConstants(I, Op1, V1, B, C);
2321 if (match(B, m_Xor(m_Specific(A), m_Value(V1))) ||
2322 match(B, m_Xor(m_Value(V1), m_Specific(A)))) {
2323 Instruction *Ret = FoldXorWithConstants(I, Op0, A, V1, D);