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

References

lib/Target/X86/X86ISelLowering.cpp
12998   assert(Mask.size() == 2 && "Unexpected mask size for v2 shuffle!");
13003                                                     Mask, Subtarget, DAG))
13011         std::max(Mask[0], 0) * 2, std::max(Mask[0], 0) * 2 + 1,
13011         std::max(Mask[0], 0) * 2, std::max(Mask[0], 0) * 2 + 1,
13012         std::max(Mask[1], 0) * 2, std::max(Mask[1], 0) * 2 + 1};
13012         std::max(Mask[1], 0) * 2, std::max(Mask[1], 0) * 2 + 1};
13018   assert(Mask[0] != -1 && "No undef lanes in multi-input v2 shuffles!");
13019   assert(Mask[1] != -1 && "No undef lanes in multi-input v2 shuffles!");
13020   assert(Mask[0] < 2 && "We sort V1 to be the first input.");
13021   assert(Mask[1] >= 2 && "We sort V2 to be the second input.");
13024     if (SDValue Extract = lowerShuffleOfExtractsAsVperm(DL, V1, V2, Mask, DAG))
13028   if (SDValue Shift = lowerShuffleAsShift(DL, MVT::v2i64, V1, V2, Mask,
13035           DL, MVT::v2i64, V1, V2, Mask, Zeroable, Subtarget, DAG))
13039   int InverseMask[2] = {Mask[0] ^ 2, Mask[1] ^ 2};
13039   int InverseMask[2] = {Mask[0] ^ 2, Mask[1] ^ 2};
13048     if (SDValue Blend = lowerShuffleAsBlend(DL, MVT::v2i64, V1, V2, Mask,
13053   if (SDValue V = lowerShuffleWithUNPCK(DL, MVT::v2i64, Mask, V1, V2, DAG))
13060       if (SDValue Rotate = lowerShuffleAsRotate(DL, MVT::v2i64, V1, V2, Mask,
13064     if (SDValue Rotate = lowerShuffleAsByteRotate(DL, MVT::v2i64, V1, V2, Mask,
13072     return lowerShuffleAsDecomposedShuffleBlend(DL, MVT::v2i64, V1, V2, Mask,
13082                         DAG.getVectorShuffle(MVT::v2f64, DL, V1, V2, Mask));