reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
736 SDValue Zero = DAG.getConstant(0, DL, VT); 737 SDValue One = DAG.getConstant(1, DL, VT); 738 SDValue MinusXLen = DAG.getConstant(-(int)Subtarget.getXLen(), DL, VT); 739 SDValue XLenMinus1 = DAG.getConstant(Subtarget.getXLen() - 1, DL, VT); 740 SDValue ShamtMinusXLen = DAG.getNode(ISD::ADD, DL, VT, Shamt, MinusXLen); 741 SDValue XLenMinus1Shamt = DAG.getNode(ISD::SUB, DL, VT, XLenMinus1, Shamt); 743 SDValue LoTrue = DAG.getNode(ISD::SHL, DL, VT, Lo, Shamt); 744 SDValue ShiftRight1Lo = DAG.getNode(ISD::SRL, DL, VT, Lo, One); 746 DAG.getNode(ISD::SRL, DL, VT, ShiftRight1Lo, XLenMinus1Shamt); 747 SDValue ShiftLeftHi = DAG.getNode(ISD::SHL, DL, VT, Hi, Shamt); 748 SDValue HiTrue = DAG.getNode(ISD::OR, DL, VT, ShiftLeftHi, ShiftRightLo); 749 SDValue HiFalse = DAG.getNode(ISD::SHL, DL, VT, Lo, ShamtMinusXLen); 751 SDValue CC = DAG.getSetCC(DL, VT, ShamtMinusXLen, Zero, ISD::SETLT); 753 Lo = DAG.getNode(ISD::SELECT, DL, VT, CC, LoTrue, Zero); 754 Hi = DAG.getNode(ISD::SELECT, DL, VT, CC, HiTrue, HiFalse); 757 return DAG.getMergeValues(Parts, DL);