diff --git a/Source/Interface/Core/OpcodeDispatcher.cpp b/Source/Interface/Core/OpcodeDispatcher.cpp index 211cddf9a..b5c0e255c 100644 --- a/Source/Interface/Core/OpcodeDispatcher.cpp +++ b/Source/Interface/Core/OpcodeDispatcher.cpp @@ -2265,9 +2265,9 @@ void OpDispatchBuilder::MOVHPDOp(OpcodeArgs) { void OpDispatchBuilder::MOVLPOp(OpcodeArgs) { OrderedNode *Src = LoadSource(FPRClass, Op, Op->Src[0], Op->Flags, 8); if (Op->Dest.TypeNone.Type == FEXCore::X86Tables::DecodedOperand::TYPE_GPR) { - OrderedNode *Dest = LoadSource(FPRClass, Op, Op->Dest, Op->Flags, 8); + OrderedNode *Dest = LoadSource(FPRClass, Op, Op->Dest, Op->Flags, 8, 16); auto Result = _VInsElement(16, 8, 0, 0, Dest, Src); - StoreResult(FPRClass, Op, Result, -1); + StoreResult_WithOpSize(FPRClass, Op, Op->Dest, Result, 8, 16); } else { StoreResult_WithOpSize(FPRClass, Op, Op->Dest, Src, 8, 8);