Lines Matching defs:Shamt
2630 SDValue Shamt = Op.getOperand(2);
2633 // if Shamt-GRLen < 0: // Shamt < GRLen
2634 // Lo = Lo << Shamt
2635 // Hi = (Hi << Shamt) | ((Lo >>u 1) >>u (GRLen-1 ^ Shamt))
2638 // Hi = Lo << (Shamt-GRLen)
2645 SDValue ShamtMinusGRLen = DAG.getNode(ISD::ADD, DL, VT, Shamt, MinusGRLen);
2646 SDValue GRLenMinus1Shamt = DAG.getNode(ISD::XOR, DL, VT, Shamt, GRLenMinus1);
2648 SDValue LoTrue = DAG.getNode(ISD::SHL, DL, VT, Lo, Shamt);
2652 SDValue ShiftLeftHi = DAG.getNode(ISD::SHL, DL, VT, Hi, Shamt);
2671 SDValue Shamt = Op.getOperand(2);
2675 // if Shamt-GRLen < 0: // Shamt < GRLen
2676 // Lo = (Lo >>u Shamt) | ((Hi << 1) << (ShAmt ^ GRLen-1))
2677 // Hi = Hi >>s Shamt
2679 // Lo = Hi >>s (Shamt-GRLen);
2683 // if Shamt-GRLen < 0: // Shamt < GRLen
2684 // Lo = (Lo >>u Shamt) | ((Hi << 1) << (ShAmt ^ GRLen-1))
2685 // Hi = Hi >>u Shamt
2687 // Lo = Hi >>u (Shamt-GRLen);
2697 SDValue ShamtMinusGRLen = DAG.getNode(ISD::ADD, DL, VT, Shamt, MinusGRLen);
2698 SDValue GRLenMinus1Shamt = DAG.getNode(ISD::XOR, DL, VT, Shamt, GRLenMinus1);
2700 SDValue ShiftRightLo = DAG.getNode(ISD::SRL, DL, VT, Lo, Shamt);
2705 SDValue HiTrue = DAG.getNode(ShiftRightOp, DL, VT, Hi, Shamt);
3362 // $dst = srl (and $src, Mask), Shamt
3364 // BSTRPICK $dst, $src, MaskIdx+MaskLen-1, Shamt
3365 // when Mask is a shifted mask, and MaskIdx <= Shamt <= MaskIdx+MaskLen-1
3374 uint64_t Shamt;
3387 Shamt = CN->getZExtValue();
3388 if (MaskIdx <= Shamt && Shamt <= MaskIdx + MaskLen - 1)
3392 DAG.getConstant(Shamt, DL, GRLenVT));
3407 unsigned Shamt;
3430 (Shamt = CN1->getZExtValue()) == MaskIdx0 &&
3449 (Shamt = CN1->getZExtValue()) == MaskIdx0 &&
3494 (Shamt = CN1->getZExtValue()) == MaskLen0 &&
3500 DAG.getConstant(Shamt, DL, GRLenVT));
3540 Shamt = CNShamt->getZExtValue();
3541 APInt ShMask(ValBits, CNMask->getZExtValue() << Shamt);
3546 DAG.getConstant(Shamt + MaskLen - 1, DL, GRLenVT),
3547 DAG.getConstant(Shamt, DL, GRLenVT));