emit_x64_vector: Amend value definition in SSE 4.1 path for EmitVectorSignExtend16()

We should be defining the value after the results have been calculated
to be consistent with the rest of the code.
This commit is contained in:
Lioncash 2018-08-31 08:34:20 -04:00 committed by MerryMage
parent fda19095ea
commit 2952b46b16

View file

@ -2452,8 +2452,8 @@ void EmitX64::EmitVectorSignExtend16(EmitContext& ctx, IR::Inst* inst) {
auto args = ctx.reg_alloc.GetArgumentInfo(inst);
if (code.DoesCpuSupport(Xbyak::util::Cpu::tSSE41)) {
const Xbyak::Xmm a = ctx.reg_alloc.UseScratchXmm(args[0]);
ctx.reg_alloc.DefineValue(inst, a);
code.pmovsxwd(a, a);
ctx.reg_alloc.DefineValue(inst, a);
} else {
const Xbyak::Xmm a = ctx.reg_alloc.UseXmm(args[0]);
const Xbyak::Xmm result = ctx.reg_alloc.ScratchXmm();