Use correct rounding mode on x86 and x86-64 recompiled versions of PF2ID. Fixes rendering errors on Unreal 3DNow! software renderer

This commit is contained in:
SarahW 2019-01-10 21:33:29 +00:00
commit 56a4d5cf83
6 changed files with 14 additions and 0 deletions

View file

@ -1579,7 +1579,9 @@ static int codegen_PF2ID(codeblock_t *block, uop_t *uop)
if (REG_IS_Q(dest_size) && REG_IS_Q(src_size_a))
{
host_x86_LDMXCSR(block, &cpu_state.trunc_fp_control);
host_x86_CVTPS2DQ_XREG_XREG(block, dest_reg, src_reg_a);
host_x86_LDMXCSR(block, &cpu_state.old_fp_control);
}
else
fatal("PF2ID %02x %02x\n", uop->dest_reg_a_real);