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

References

lib/Target/ARM/ARMISelLowering.cpp
 7825       if (Lane == 0 && V1.getOpcode() == ISD::SCALAR_TO_VECTOR) {
 7826         return DAG.getNode(ARMISD::VDUP, dl, VT, V1.getOperand(0));
 7831       if (Lane == 0 && V1.getOpcode() == ISD::BUILD_VECTOR &&
 7832           !isa<ConstantSDNode>(V1.getOperand(0))) {
 7834         for (unsigned i = 1, e = V1.getNumOperands(); i != e; ++i)
 7835           if (!V1.getOperand(i).isUndef()) {
 7840           return DAG.getNode(ARMISD::VDUP, dl, VT, V1.getOperand(0));
 7842       return DAG.getNode(ARMISD::VDUPLANE, dl, VT, V1,
 7850         std::swap(V1, V2);
 7851       return DAG.getNode(ARMISD::VEXT, dl, VT, V1, V2,
 7856       return DAG.getNode(ARMISD::VREV64, dl, VT, V1);
 7858       return DAG.getNode(ARMISD::VREV32, dl, VT, V1);
 7860       return DAG.getNode(ARMISD::VREV16, dl, VT, V1);
 7863       return DAG.getNode(ARMISD::VEXT, dl, VT, V1, V1,
 7863       return DAG.getNode(ARMISD::VEXT, dl, VT, V1, V1,
 7878           V2 = V1;
 7879         return DAG.getNode(ShuffleOpc, dl, DAG.getVTList(VT, VT), V1, V2)
 7885         return DAG.getNode(ARMISD::VMOVN, dl, VT, V2, V1,
 7888         return DAG.getNode(ARMISD::VMOVN, dl, VT, V1, V2,
 7907     if (ST->hasNEON() && V1->getOpcode() == ISD::CONCAT_VECTORS && V2->isUndef()) {
 7908       SDValue SubV1 = V1->getOperand(0);
 7909       SDValue SubV2 = V1->getOperand(1);
 7951         return GeneratePerfectShuffle(PFEntry, V1, V2, DAG, dl);
 7958           return GeneratePerfectShuffle(PFEntry, V1, V2, DAG, dl);
 7969     V1 = DAG.getNode(ISD::BITCAST, dl, VecVT, V1);
 7969     V1 = DAG.getNode(ISD::BITCAST, dl, VecVT, V1);
 7977                                   ShuffleMask[i] < (int)NumElts ? V1 : V2,