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
142 case Instruction::LShr: {
147 // We can always fold lshr(c1)+lshr(c2) -> lshr(c1+c2).
150 // We can always turn lshr(c)+shl(c) -> and(c2).
155 // We can always turn lshr(c1)+shl(c2) -> lshr(c3)+and(c4), but it isn't
238 // We turn shl(c)+lshr(c) -> and(c2) if the input doesn't already have
260 case Instruction::LShr: {
266 // We can always fold lshr(c1)+lshr(c2) -> lshr(c1+c2).
278 // We turn lshr(c)+shl(c) -> and(c2) if the input doesn't already have
291 // We turn lshr(c1)+shl(c2) -> lshr(c3)+and(c4), but only when we know that
337 // cast of lshr(shl(x,c1),c2) as well as other more complex cases.
399 assert(I.getOpcode() == Instruction::LShr && "Unknown logical shift");
400 MaskV = MaskV.lshr(COp1->getZExtValue());
586 if (I.getOpcode() == Instruction::LShr &&
601 assert(ShiftOp->getOpcode() == Instruction::LShr ||
612 if (I.getOpcode() == Instruction::LShr &&
617 BinaryOperator *NewLShr = BinaryOperator::Create(Instruction::LShr,
660 if (I.getOpcode() == Instruction::LShr &&