OpcodeDispatcher: Simplify SSE MOVSLDUP

Like with MOVSHDUP, we only need to duplicate two values rather than
four.
This commit is contained in:
lioncash 2022-11-22 04:38:33 +00:00
parent 9d21e1efd5
commit 2e93d2ce51

View File

@ -162,9 +162,7 @@ void OpDispatchBuilder::VMOVSHDUPOp(OpcodeArgs) {
void OpDispatchBuilder::MOVSLDUPOp(OpcodeArgs) {
OrderedNode *Src = LoadSource(FPRClass, Op, Op->Src[0], Op->Flags, 8);
OrderedNode *Result = _VInsElement(16, 4, 3, 2, Src, Src);
Result = _VInsElement(16, 4, 2, 2, Result, Src);
Result = _VInsElement(16, 4, 1, 0, Result, Src);
Result = _VInsElement(16, 4, 0, 0, Result, Src);
StoreResult(FPRClass, Op, Result, -1);
}