reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
4749 EVT SVT = VT.getScalarType(); 4750 EVT ShVT = getShiftAmountTy(VT, DAG.getDataLayout()); 4752 unsigned EltBits = VT.getScalarSizeInBits(); 4756 if (!isTypeLegal(VT)) 4812 if (VT.isVector()) { 4814 MagicFactor = DAG.getBuildVector(VT, dl, MagicFactors); 4815 NPQFactor = DAG.getBuildVector(VT, dl, NPQFactors); 4824 Q = DAG.getNode(ISD::SRL, dl, VT, Q, PreShift); 4829 if (IsAfterLegalization ? isOperationLegal(ISD::MULHU, VT) 4830 : isOperationLegalOrCustom(ISD::MULHU, VT)) 4831 return DAG.getNode(ISD::MULHU, dl, VT, X, Y); 4832 if (IsAfterLegalization ? isOperationLegal(ISD::UMUL_LOHI, VT) 4833 : isOperationLegalOrCustom(ISD::UMUL_LOHI, VT)) { 4835 DAG.getNode(ISD::UMUL_LOHI, dl, DAG.getVTList(VT, VT), X, Y); 4835 DAG.getNode(ISD::UMUL_LOHI, dl, DAG.getVTList(VT, VT), X, Y); 4849 SDValue NPQ = DAG.getNode(ISD::SUB, dl, VT, N0, Q); 4854 if (VT.isVector()) 4857 NPQ = DAG.getNode(ISD::SRL, dl, VT, NPQ, DAG.getConstant(1, dl, ShVT)); 4861 Q = DAG.getNode(ISD::ADD, dl, VT, NPQ, Q); 4865 Q = DAG.getNode(ISD::SRL, dl, VT, Q, PostShift); 4868 SDValue One = DAG.getConstant(1, dl, VT); 4869 SDValue IsOne = DAG.getSetCC(dl, VT, N1, One, ISD::SETEQ); 4870 return DAG.getSelect(dl, VT, IsOne, N0, Q);