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

References

lib/Target/X86/X86ISelLowering.cpp
13181   assert(V1.getSimpleValueType() == MVT::v4f32 && "Bad operand type!");
13189     if (SDValue Broadcast = lowerShuffleAsBroadcast(DL, MVT::v4f32, V1, V2,
13195       if (isShuffleEquivalent(V1, V2, Mask, {0, 0, 2, 2}))
13196         return DAG.getNode(X86ISD::MOVSLDUP, DL, MVT::v4f32, V1);
13197       if (isShuffleEquivalent(V1, V2, Mask, {1, 1, 3, 3}))
13198         return DAG.getNode(X86ISD::MOVSHDUP, DL, MVT::v4f32, V1);
13204       return DAG.getNode(X86ISD::VPERMILPI, DL, MVT::v4f32, V1,
13211       if (isShuffleEquivalent(V1, V2, Mask, {0, 1, 0, 1}))
13212         return DAG.getNode(X86ISD::MOVLHPS, DL, MVT::v4f32, V1, V1);
13212         return DAG.getNode(X86ISD::MOVLHPS, DL, MVT::v4f32, V1, V1);
13213       if (isShuffleEquivalent(V1, V2, Mask, {2, 3, 2, 3}))
13214         return DAG.getNode(X86ISD::MOVHLPS, DL, MVT::v4f32, V1, V1);
13214         return DAG.getNode(X86ISD::MOVHLPS, DL, MVT::v4f32, V1, V1);
13219     return DAG.getNode(X86ISD::SHUFP, DL, MVT::v4f32, V1, V1,
13219     return DAG.getNode(X86ISD::SHUFP, DL, MVT::v4f32, V1, V1,
13224     if (SDValue Extract = lowerShuffleOfExtractsAsVperm(DL, V1, V2, Mask, DAG))
13234             DL, MVT::v4f32, V1, V2, Mask, Zeroable, Subtarget, DAG))
13238     if (SDValue Blend = lowerShuffleAsBlend(DL, MVT::v4f32, V1, V2, Mask,
13243     if (SDValue V = lowerShuffleAsInsertPS(DL, V1, V2, Mask, Zeroable, DAG))
13247       if (SDValue BlendPerm = lowerShuffleAsBlendAndPermute(DL, MVT::v4f32, V1,
13255     if (isShuffleEquivalent(V1, V2, Mask, {0, 1, 4, 5}))
13256       return DAG.getNode(X86ISD::MOVLHPS, DL, MVT::v4f32, V1, V2);
13257     if (isShuffleEquivalent(V1, V2, Mask, {2, 3, 6, 7}))
13258       return DAG.getNode(X86ISD::MOVHLPS, DL, MVT::v4f32, V2, V1);
13262   if (SDValue V = lowerShuffleWithUNPCK(DL, MVT::v4f32, Mask, V1, V2, DAG))
13266   return lowerShuffleWithSHUFPS(DL, MVT::v4f32, Mask, V1, V2, DAG);