From 2e93d2ce5193bef3bee090edb8a37f1fe3a8ea42 Mon Sep 17 00:00:00 2001 From: lioncash Date: Tue, 22 Nov 2022 04:38:33 +0000 Subject: [PATCH] OpcodeDispatcher: Simplify SSE MOVSLDUP Like with MOVSHDUP, we only need to duplicate two values rather than four. --- .../FEXCore/Source/Interface/Core/OpcodeDispatcher/Vector.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/External/FEXCore/Source/Interface/Core/OpcodeDispatcher/Vector.cpp b/External/FEXCore/Source/Interface/Core/OpcodeDispatcher/Vector.cpp index cd5542790..617a33ab5 100644 --- a/External/FEXCore/Source/Interface/Core/OpcodeDispatcher/Vector.cpp +++ b/External/FEXCore/Source/Interface/Core/OpcodeDispatcher/Vector.cpp @@ -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); }