reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
188 BinaryOperator *BO = BinaryOperator::CreateNeg(Op0, I.getName()); 241 if (Op0->hasOneUse()) { 244 if (match(Op0, m_Sub(m_Value(Y), m_Value(X)))) 246 else if (match(Op0, m_Add(m_Value(Y), m_ConstantInt(C1)))) 268 if (match(Op0, m_OneUse(m_Add(m_Value(X), m_Constant(C1))))) { 280 if (match(Op0, m_Neg(m_Value(X))) && match(Op1, m_Constant(Op1C))) 284 if (match(Op0, m_Neg(m_Value(X))) && match(Op1, m_Neg(m_Value(Y)))) { 287 cast<OverflowingBinaryOperator>(Op0)->hasNoSignedWrap() && 302 BinaryOperator *Div = dyn_cast<BinaryOperator>(Op0); 305 Y = Op0; 333 return BinaryOperator::CreateAnd(Op0, Op1); 341 if (match(Op0, m_Shl(m_One(), m_Value(Y)))) { 343 ShlNSW = cast<ShlOperator>(Op0)->hasNoSignedWrap(); 345 BO = BinaryOperator::CreateShl(Op0, Y); 359 if (match(Op0, m_ZExt(m_Value(X))) && X->getType()->isIntOrIntVectorTy(1)) 362 return SelectInst::Create(X, Op0, ConstantInt::get(I.getType(), 0)); 371 if (match(Op0, m_LShr(m_Value(X), m_APInt(C))) && *C == C->getBitWidth() - 1) 374 return BinaryOperator::CreateAnd(Builder.CreateAShr(X, *C), Op0); 380 if (!I.hasNoSignedWrap() && willNotOverflowSignedMul(Op0, Op1, I)) { 385 if (!I.hasNoUnsignedWrap() && willNotOverflowUnsignedMul(Op0, Op1, I)) {