Home | History | Annotate | Download | only in InstCombine

Lines Matching refs:LShr

66 ///      %F = lshr i128 %E, 64
90 // lshr iff we know that the bits we would otherwise be shifting in are
141 case Instruction::LShr: {
146 // We can always fold lshr(c1)+lshr(c2) -> lshr(c1+c2).
149 // We can always turn lshr(c)+shl(c) -> and(c2).
154 // We can always turn lshr(c1)+shl(c2) -> lshr(c3)+and(c4), but it isn't
233 // We turn shl(c)+lshr(c) -> and(c2) if the input doesn't already have
255 case Instruction::LShr: {
261 // We can always fold lshr(c1)+lshr(c2) -> lshr(c1+c2).
273 // We turn lshr(c)+shl(c) -> and(c2) if the input doesn't already have
286 // We turn lshr(c1)+shl(c2) -> lshr(c3)+and(c4), but only when we know that
330 // cast of lshr(shl(x,c1),c2) as well as other more complex cases.
392 assert(I.getOpcode() == Instruction::LShr && "Unknown logical shift");
393 MaskV = MaskV.lshr(COp1->getZExtValue());
579 if (I.getOpcode() == Instruction::LShr &&
594 assert(ShiftOp->getOpcode() == Instruction::LShr ||
605 if (I.getOpcode() == Instruction::LShr &&
610 BinaryOperator *NewLShr = BinaryOperator::Create(Instruction::LShr,
653 if (I.getOpcode() == Instruction::LShr &&