reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Analysis/InstructionSimplify.cpp
 1905   if (Constant *C = foldOrCommuteConstant(Instruction::And, Op0, Op1, Q))
 1909   if (match(Op1, m_Undef()))
 1913   if (Op0 == Op1)
 1917   if (match(Op1, m_Zero()))
 1921   if (match(Op1, m_AllOnes()))
 1925   if (match(Op0, m_Not(m_Specific(Op1))) ||
 1926       match(Op1, m_Not(m_Specific(Op0))))
 1930   if (match(Op0, m_c_Or(m_Specific(Op1), m_Value())))
 1931     return Op1;
 1934   if (match(Op1, m_c_Or(m_Specific(Op0), m_Value())))
 1941   if (match(Op1, m_APInt(Mask))) {
 1958   if (Value *V = omitCheckForZeroBeforeMulWithOverflow(Op0, Op1))
 1960   if (Value *V = omitCheckForZeroBeforeMulWithOverflow(Op1, Op0))
 1964   if (match(Op0, m_Neg(m_Specific(Op1))) ||
 1965       match(Op1, m_Neg(m_Specific(Op0)))) {
 1969     if (isKnownToBeAPowerOfTwo(Op1, Q.DL, /*OrZero*/ true, 0, Q.AC, Q.CxtI,
 1971       return Op1;
 1977   if (match(Op0, m_Add(m_Specific(Op1), m_AllOnes())) &&
 1978       isKnownToBeAPowerOfTwo(Op1, Q.DL, /*OrZero*/ true, 0, Q.AC, Q.CxtI, Q.DT))
 1979     return Constant::getNullValue(Op1->getType());
 1980   if (match(Op1, m_Add(m_Specific(Op0), m_AllOnes())) &&
 1984   if (Value *V = simplifyAndOrOfCmps(Q, Op0, Op1, true))
 1988   if (Value *V = SimplifyAssociativeBinOp(Instruction::And, Op0, Op1, Q,
 1993   if (Value *V = ExpandBinOp(Instruction::And, Op0, Op1, Instruction::Or,
 1998   if (Value *V = ExpandBinOp(Instruction::And, Op0, Op1, Instruction::Xor,
 2004   if (isa<SelectInst>(Op0) || isa<SelectInst>(Op1))
 2005     if (Value *V = ThreadBinOpOverSelect(Instruction::And, Op0, Op1, Q,
 2011   if (isa<PHINode>(Op0) || isa<PHINode>(Op1))
 2012     if (Value *V = ThreadBinOpOverPHI(Instruction::And, Op0, Op1, Q,
 2027   if (match(Op1, m_APInt(Mask)) &&