reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
2503 SDValue Not = DAG.getNode(ISD::XOR, DL, MVT::i32, Shamt, 2504 DAG.getConstant(-1, DL, MVT::i32)); 2505 SDValue ShiftLeft1Hi = DAG.getNode(ISD::SHL, DL, VT, Hi, 2506 DAG.getConstant(1, DL, VT)); 2507 SDValue ShiftLeftHi = DAG.getNode(ISD::SHL, DL, VT, ShiftLeft1Hi, Not); 2508 SDValue ShiftRightLo = DAG.getNode(ISD::SRL, DL, VT, Lo, Shamt); 2509 SDValue Or = DAG.getNode(ISD::OR, DL, VT, ShiftLeftHi, ShiftRightLo); 2510 SDValue ShiftRightHi = DAG.getNode(IsSRA ? ISD::SRA : ISD::SRL, 2512 SDValue Cond = DAG.getNode(ISD::AND, DL, MVT::i32, Shamt, 2513 DAG.getConstant(VT.getSizeInBits(), DL, MVT::i32)); 2514 SDValue Ext = DAG.getNode(ISD::SRA, DL, VT, Hi, 2515 DAG.getConstant(VT.getSizeInBits() - 1, DL, VT)); 2518 SDVTList VTList = DAG.getVTList(VT, VT); 2519 return DAG.getNode(Subtarget.isGP64bit() ? Mips::PseudoD_SELECT_I64 2522 IsSRA ? Ext : DAG.getConstant(0, DL, VT), Or, 2526 Lo = DAG.getNode(ISD::SELECT, DL, VT, Cond, ShiftRightHi, Or); 2527 Hi = DAG.getNode(ISD::SELECT, DL, VT, Cond, 2528 IsSRA ? Ext : DAG.getConstant(0, DL, VT), ShiftRightHi); 2531 return DAG.getMergeValues(Ops, DL);