Lines Matching refs:Op0

794       Value *Op0 = LHS->getOperand(0), *Op1 = LHS->getOperand(1);
797 return getNewICmpValue(isSigned, Code, Op0, Op1, Builder);
1100 Value *Op0 = I.getOperand(0), *Op1 = I.getOperand(1);
1102 if (Value *V = SimplifyAndInst(Op0, Op1, TD))
1118 if (BinaryOperator *Op0I = dyn_cast<BinaryOperator>(Op0)) {
1197 if (match(Op0, m_Trunc(m_And(m_Value(X), m_ConstantInt(YC))))) {
1210 if (SelectInst *SI = dyn_cast<SelectInst>(Op0))
1213 if (isa<PHINode>(Op0))
1220 if (Value *Op0NotVal = dyn_castNotVal(Op0))
1222 if (Op0->hasOneUse() && Op1->hasOneUse()) {
1231 if (match(Op0, m_Or(m_Value(A), m_Value(B))) &&
1238 match(Op0, m_Not(m_And(m_Value(C), m_Value(D)))) &&
1244 Value *tmpOp0 = Op0;
1246 if (Op0->hasOneUse() &&
1247 match(Op0, m_Xor(m_Value(A), m_Value(B)))) {
1249 tmpOp1 = Op0;
1270 if (match(Op0, m_Or(m_Not(m_Specific(Op1)), m_Value(A))) ||
1271 match(Op0, m_Or(m_Value(A), m_Not(m_Specific(Op1)))))
1273 if (match(Op1, m_Or(m_Not(m_Specific(Op0)), m_Value(A))) ||
1274 match(Op1, m_Or(m_Value(A), m_Not(m_Specific(Op0)))))
1275 return BinaryOperator::CreateAnd(A, Op0);
1279 if (ICmpInst *LHS = dyn_cast<ICmpInst>(Op0))
1291 if (CastInst *Op0C = dyn_cast<CastInst>(Op0))
1324 if (BinaryOperator *SI0 = dyn_cast<BinaryOperator>(Op0))
1342 std::swap(Op0, Op1);
1347 if (match(Op0, m_SExt(m_Value(X))) &&
1354 if (match(Op0, m_Not(m_SExt(m_Value(X)))) &&
1356 Value *Zero = Constant::getNullValue(Op0->getType());
1361 std::swap(Op0, Op1);
1607 Value *Op0 = LHS->getOperand(0), *Op1 = LHS->getOperand(1);
1610 return getNewICmpValue(isSigned, Code, Op0, Op1, Builder);
1918 Value *Op0 = I.getOperand(0), *Op1 = I.getOperand(1);
1920 if (Value *V = SimplifyOrInst(Op0, Op1, TD))
1936 if (match(Op0, m_And(m_Value(X), m_ConstantInt(C1))) &&
1938 Op0->hasOneUse()) {
1940 Or->takeName(Op0);
1946 if (match(Op0, m_Xor(m_Value(X), m_ConstantInt(C1))) &&
1947 Op0->hasOneUse()) {
1949 Or->takeName(Op0);
1955 if (SelectInst *SI = dyn_cast<SelectInst>(Op0))
1959 if (isa<PHINode>(Op0))
1969 if (match(Op0, m_Or(m_Value(), m_Value())) ||
1971 (match(Op0, m_LogicalShift(m_Value(), m_Value())) &&
1978 if (Op0->hasOneUse() &&
1979 match(Op0, m_Xor(m_Value(A), m_ConstantInt(C1))) &&
1982 NOr->takeName(Op0);
1989 MaskedValueIsZero(Op0, C1->getValue())) {
1990 Value *NOr = Builder->CreateOr(A, Op0);
1991 NOr->takeName(Op0);
1997 if (match(Op0, m_And(m_Value(A), m_Value(C))) &&
2095 Instruction *Ret = FoldOrWithConstants(I, Op0, A, V1, D);
2102 if (BinaryOperator *SI0 = dyn_cast<BinaryOperator>(Op0))
2114 if (Value *Op0NotVal = dyn_castNotVal(Op0))
2116 if (Op0->hasOneUse() && Op1->hasOneUse()) {
2124 if (match(Op0, m_Xor(m_Value(), m_Value()))) {
2125 std::swap(Op0, Op1);
2133 if (Op0 == A || Op0 == B)
2136 if (match(Op0, m_And(m_Specific(A), m_Specific(B))) ||
2137 match(Op0, m_And(m_Specific(B), m_Specific(A))))
2140 if (Op1->hasOneUse() && match(A, m_Not(m_Specific(Op0)))) {
2142 return BinaryOperator::CreateOr(Not, Op0);
2144 if (Op1->hasOneUse() && match(B, m_Not(m_Specific(Op0)))) {
2146 return BinaryOperator::CreateOr(Not, Op0);
2154 if ((Op0 == B->getOperand(0) || Op0 == B->getOperand(1)) &&
2157 Value *NotOp = Op0 == B->getOperand(0) ? B->getOperand(1) :
2160 return BinaryOperator::CreateOr(Not, Op0);
2164 std::swap(Op0, Op1);
2178 if (CastInst *Op0C = dyn_cast<CastInst>(Op0)) {
2214 if (match(Op0, m_SExt(m_Value(A))) && A->getType()->isIntegerTy(1))
2217 return SelectInst::Create(A, ConstantInt::getSigned(I.getType(), -1), Op0);
2224 if (Op0->hasOneUse() && !isa<ConstantInt>(Op1) &&
2225 match(Op0, m_Or(m_Value(A), m_ConstantInt(C1)))) {
2227 Inner->takeName(Op0);
2236 if (Op0->hasOneUse() && Op1->hasOneUse() &&
2237 match(Op0, m_Select(m_Value(X), m_Value(A), m_Value(B))) &&
2250 Value *Op0 = I.getOperand(0), *Op1 = I.getOperand(1);
2252 if (Value *V = SimplifyXorInst(Op0, Op1, TD))
2305 if (RHS->isOne() && Op0->hasOneUse())
2307 if (CmpInst *CI = dyn_cast<CmpInst>(Op0))
2313 if (CastInst *Op0C = dyn_cast<CastInst>(Op0)) {
2327 if (BinaryOperator *Op0I = dyn_cast<BinaryOperator>(Op0)) {
2392 if (SelectInst *SI = dyn_cast<SelectInst>(Op0))
2395 if (isa<PHINode>(Op0))
2404 if (A == Op0) { // B^(B|A) == (A|B)^B
2407 std::swap(Op0, Op1);
2408 } else if (B == Op0) { // B^(A|B) == (A|B)^B
2410 std::swap(Op0, Op1);
2414 if (A == Op0) { // A^(A&B) -> A^(B&A)
2418 if (B == Op0) { // A^(B&A) -> (B&A)^A
2420 std::swap(Op0, Op1);
2425 BinaryOperator *Op0I = dyn_cast<BinaryOperator>(Op0);
2482 Value *Op0 = LHS->getOperand(0), *Op1 = LHS->getOperand(1);
2486 getNewICmpValue(isSigned, Code, Op0, Op1,
2492 if (CastInst *Op0C = dyn_cast<CastInst>(Op0)) {