reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Target/X86/X86ISelLowering.cpp
18699   if (DAG.getTarget().Options.UnsafeFPMath)
18723   SDValue VecCstLow = DAG.getConstant(0x4b000000, DL, VecIntVT);
18725   SDValue VecCstHigh = DAG.getConstant(0x53000000, DL, VecIntVT);
18728   SDValue VecCstShift = DAG.getConstant(16, DL, VecIntVT);
18729   SDValue HighShift = DAG.getNode(ISD::SRL, DL, VecIntVT, V, VecCstShift);
18735     SDValue VecCstLowBitcast = DAG.getBitcast(VecI16VT, VecCstLow);
18736     SDValue VecBitcast = DAG.getBitcast(VecI16VT, V);
18739     Low = DAG.getNode(X86ISD::BLENDI, DL, VecI16VT, VecBitcast,
18740                       VecCstLowBitcast, DAG.getTargetConstant(0xaa, DL, MVT::i8));
18743     SDValue VecCstHighBitcast = DAG.getBitcast(VecI16VT, VecCstHigh);
18744     SDValue VecShiftBitcast = DAG.getBitcast(VecI16VT, HighShift);
18747     High = DAG.getNode(X86ISD::BLENDI, DL, VecI16VT, VecShiftBitcast,
18748                        VecCstHighBitcast, DAG.getTargetConstant(0xaa, DL, MVT::i8));
18750     SDValue VecCstMask = DAG.getConstant(0xffff, DL, VecIntVT);
18752     SDValue LowAnd = DAG.getNode(ISD::AND, DL, VecIntVT, V, VecCstMask);
18753     Low = DAG.getNode(ISD::OR, DL, VecIntVT, LowAnd, VecCstLow);
18756     High = DAG.getNode(ISD::OR, DL, VecIntVT, HighShift, VecCstHigh);
18760   SDValue VecCstFAdd = DAG.getConstantFP(
18764   SDValue HighBitcast = DAG.getBitcast(VecFloatVT, High);
18767       DAG.getNode(ISD::FADD, DL, VecFloatVT, HighBitcast, VecCstFAdd);
18769   SDValue LowBitcast = DAG.getBitcast(VecFloatVT, Low);
18770   return DAG.getNode(ISD::FADD, DL, VecFloatVT, LowBitcast, FHigh);