|
From: | Richard Henderson |
Subject: | Re: [Qemu-devel] [PATCH v5 05/11] target-i386: exception handling for FPU instructions |
Date: | Mon, 6 Jul 2015 13:04:09 +0100 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.0.1 |
On 07/06/2015 09:26 AM, Pavel Dovgalyuk wrote:
@@ -1117,33 +1131,33 @@ void helper_fxsave(CPUX86State *env, target_ulong ptr, int data64) for (i = 0; i < 8; i++) { fptag |= (env->fptags[i] << i); } - cpu_stw_data(env, ptr, env->fpuc); - cpu_stw_data(env, ptr + 2, fpus); - cpu_stw_data(env, ptr + 4, fptag ^ 0xff); + cpu_stw_data_ra(env, ptr, env->fpuc, GETPC()); + cpu_stw_data_ra(env, ptr + 2, fpus, GETPC()); + cpu_stw_data_ra(env, ptr + 4, fptag ^ 0xff, GETPC());
helper_fxsave and helper_fxrstor ought to have do_* versions just like you did for fstenv/fldenv. (I'm working on a patch set that adds xsave/xrstor support and I'll need to re-use these functions.)
r~
[Prev in Thread] | Current Thread | [Next in Thread] |