|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
lib/Target/X86/X86ISelLowering.cpp18241 SDValue SafeShAmt = DAG.getNode(ISD::AND, dl, MVT::i8, ShAmt,
18242 DAG.getConstant(VTBits - 1, dl, MVT::i8));
18243 SDValue Tmp1 = isSRA ? DAG.getNode(ISD::SRA, dl, VT, ShOpHi,
18244 DAG.getConstant(VTBits - 1, dl, MVT::i8))
18245 : DAG.getConstant(0, dl, VT);
18249 Tmp2 = DAG.getNode(ISD::FSHL, dl, VT, ShOpHi, ShOpLo, ShAmt);
18250 Tmp3 = DAG.getNode(ISD::SHL, dl, VT, ShOpLo, SafeShAmt);
18252 Tmp2 = DAG.getNode(ISD::FSHR, dl, VT, ShOpHi, ShOpLo, ShAmt);
18253 Tmp3 = DAG.getNode(isSRA ? ISD::SRA : ISD::SRL, dl, VT, ShOpHi, SafeShAmt);
18259 SDValue AndNode = DAG.getNode(ISD::AND, dl, MVT::i8, ShAmt,
18260 DAG.getConstant(VTBits, dl, MVT::i8));
18261 SDValue Cond = DAG.getSetCC(dl, MVT::i8, AndNode,
18262 DAG.getConstant(0, dl, MVT::i8), ISD::SETNE);
18266 Hi = DAG.getNode(ISD::SELECT, dl, VT, Cond, Tmp3, Tmp2);
18267 Lo = DAG.getNode(ISD::SELECT, dl, VT, Cond, Tmp1, Tmp3);
18269 Lo = DAG.getNode(ISD::SELECT, dl, VT, Cond, Tmp3, Tmp2);
18270 Hi = DAG.getNode(ISD::SELECT, dl, VT, Cond, Tmp1, Tmp3);
18273 return DAG.getMergeValues({ Lo, Hi }, dl);