> From: Richard Henderson [mailto:rth7...@gmail.com] On Behalf Of Richard > Henderson > 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.)
Why do_* functions should be in this series? These changes will look orphaned. Pavel Dovgalyuk