Lines Matching defs:Cst
465 // Transform trunc(lshr (zext A), Cst) to eliminate one type conversion.
466 Value *A = 0; ConstantInt *Cst = 0;
468 match(Src, m_LShr(m_ZExt(m_Value(A)), m_ConstantInt(Cst)))) {
477 if (Cst->getZExtValue() >= ASize)
483 Value *Shift = Builder->CreateLShr(A, Cst->getZExtValue());
488 // Transform "trunc (and X, cst)" -> "and (trunc X), cst" so long as the dest
492 match(Src, m_And(m_Value(A), m_ConstantInt(Cst)))) {
495 ConstantExpr::getTrunc(Cst, CI.getType()));
704 // We can promote lshr(x, cst) if we can promote x. This requires the
1624 // bitcast(trunc(lshr(bitcast(somevector), cst))