|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
lib/Target/ARM/ARMISelLowering.cpp 5799 SDValue CCR = DAG.getRegister(ARM::CPSR, MVT::i32);
5804 SDValue RevShAmt = DAG.getNode(ISD::SUB, dl, MVT::i32,
5805 DAG.getConstant(VTBits, dl, MVT::i32), ShAmt);
5806 SDValue Tmp1 = DAG.getNode(ISD::SRL, dl, VT, ShOpLo, ShAmt);
5807 SDValue ExtraShAmt = DAG.getNode(ISD::SUB, dl, MVT::i32, ShAmt,
5808 DAG.getConstant(VTBits, dl, MVT::i32));
5809 SDValue Tmp2 = DAG.getNode(ISD::SHL, dl, VT, ShOpHi, RevShAmt);
5810 SDValue LoSmallShift = DAG.getNode(ISD::OR, dl, VT, Tmp1, Tmp2);
5811 SDValue LoBigShift = DAG.getNode(Opc, dl, VT, ShOpHi, ExtraShAmt);
5812 SDValue CmpLo = getARMCmp(ExtraShAmt, DAG.getConstant(0, dl, MVT::i32),
5813 ISD::SETGE, ARMcc, DAG, dl);
5814 SDValue Lo = DAG.getNode(ARMISD::CMOV, dl, VT, LoSmallShift, LoBigShift,
5817 SDValue HiSmallShift = DAG.getNode(Opc, dl, VT, ShOpHi, ShAmt);
5819 ? DAG.getNode(Opc, dl, VT, ShOpHi,
5820 DAG.getConstant(VTBits - 1, dl, VT))
5821 : DAG.getConstant(0, dl, VT);
5822 SDValue CmpHi = getARMCmp(ExtraShAmt, DAG.getConstant(0, dl, MVT::i32),
5823 ISD::SETGE, ARMcc, DAG, dl);
5824 SDValue Hi = DAG.getNode(ARMISD::CMOV, dl, VT, HiSmallShift, HiBigShift,
5828 return DAG.getMergeValues(Ops, dl);