On 2/18/20 9:10 AM, BALATON Zoltan wrote: > void helper_reset_fpstatus(CPUPPCState *env) > { > - set_float_exception_flags(0, &env->fp_status); > + set_float_exception_flags(env->default_fp_excpt_flags, &env->fp_status); > }
What I don't like is the forced setting of inexact. I don't mind leaving it set if it is already set, which corresponds to the normal accumulation of exceptions. In addition, if the inexact exception is unmasked, I would expect a signal to be delivered only when an inexact exception happens. Whereas this patch would deliver a signal for every fp operation. It should be just as easy to do flags = get_float_exception_flags(status); flags &= env->save_fp_exception_flags; set_float_exception_flags(flags, status); > + DEFINE_PROP_BOOL("hardfloat", PowerPCCPU, hardfloat, true), I would also prefer a different name here -- perhaps x-no-fp-fi. r~