On 03/09/2016 04:59 PM, Richard Henderson wrote: > On 03/09/2016 05:42 AM, Bastian Koppelmann wrote: >> This patch adds a file for all the FPU related helpers with all the >> includes, >> useful defines, and a function to update the status bits. Additionally >> it adds >> a mask for the rounding mode bits of PSW as well as all the opcodes >> for the >> FPU instructions. >> >> Signed-off-by: Bastian Koppelmann <kbast...@mail.uni-paderborn.de> >> --- >> v2 -> v3: >> - remove f_get_excp_flags(), which used a magic number > > Actually I liked f_get_excp_flags, since it immediately discards the > exceptions that you don't care about. I just wanted it to be written > > return get_float_exception_flags(&env->fp_status) > & (float_flag_invalid > | float_flag_overflow > | float_flag_underflow > | float_flag_output_denormal > | float_flag_divbyzero > | float_flag_inexact); > > instead of "& 0xbf".
Okay, I see. Thanks for the clarification. > >> - remove double check on float_flag_invalid in f_update_psw_flags() > ... >> + if (flags & float_flag_invalid) { >> + env->FPU_FI = (flags & float_flag_invalid) << 31; >> + some_excp = 1; >> + } > > You didn't, actually. > Errr.. That was not supposed to happen, sorry. Cheers, Bastian