Lines Matching refs:MOVSS
3378 case X86ISD::MOVSS:
3436 case X86ISD::MOVSS:
4261 /// specifies a shuffle of elements that is suitable for input to MOVSS,
4415 /// of what x86 movss want. X86 movs requires the lowest element to be lowest
5162 case X86ISD::MOVSS:
5165 // this is why MOVSS and MOVSD are used in the first place. The other
6602 // the rest of the elements. This will be matched as movd/movq/movss/movsd
6617 // Turn it into a MOVL (i.e. movss, movsd, or movd) to a zero vector.
6652 // movd/movss) to move this into the low element, then shuffle it into
8989 // If we don't care about the second element, proceed to use movss.
9005 return getTargetShuffleNode(X86ISD::MOVSS, dl, VT, V1, V2, DAG);
9371 return getTargetShuffleNode(X86ISD::MOVSS, dl, VT, V1, V2, DAG);
9878 // SHUFPS the element to the lowest double word, then movss.
15600 // constant plus a MOVSS/MOVSD instead of scalarizing it.
15605 // (v4i32 (MOVSS (srl A, <Y,Y,Y,Y>), (srl A, <X,X,X,X>)))
15613 unsigned TargetOpcode = X86ISD::MOVSS;
15622 // two shifts followed by a MOVSS/MOVSD
15624 // Check if it is legal to use a MOVSS.
15654 // Replace this node with two shifts followed by a MOVSS/MOVSD.
16609 case X86ISD::MOVSS: return "X86ISD::MOVSS";
19643 // Try to fold this VSELECT into a MOVSS/MOVSD
19656 // fold (vselect <0,-1,-1,-1>, A, B) -> (movss A, B)
19664 // fold (vselect <-1,0,0,0>, A, B) -> (movss B, A)
19672 return getTargetShuffleNode(X86ISD::MOVSS, DL, VT, A, B, DAG);
22019 case X86ISD::MOVSS: