reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
760 match(Src, m_LShr(m_ZExt(m_Value(A)), m_ConstantInt(Cst)))) { 765 unsigned ASize = A->getType()->getPrimitiveSizeInBits(); 775 Value *Shift = Builder.CreateLShr(A, Cst->getZExtValue()); 787 match(Src, m_LShr(m_SExt(m_Value(A)), m_ConstantInt(Cst)))) { 790 const unsigned ASize = A->getType()->getPrimitiveSizeInBits(); 802 return BinaryOperator::CreateAShr(A, ConstantInt::get(CI.getType(), 805 Value *Shift = Builder.CreateAShr(A, std::min(ShiftAmt, ASize - 1)); 825 if (match(Src, m_Shl(m_Value(A), m_ConstantInt(Cst))) && 826 !match(A, m_Shr(m_Value(), m_Constant()))) { 831 Value *NewTrunc = Builder.CreateTrunc(A, DestTy, A->getName() + ".tr"); 831 Value *NewTrunc = Builder.CreateTrunc(A, DestTy, A->getName() + ".tr");