Message ID | 20220901131756.26060-20-victor.colombo@eldorado.org.br (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Multiple ppc instructions fixes | expand |
On 9/1/22 10:17, Víctor Colombo wrote: > Fix xsrdpic and other instructions not clearing the flags and saving > incorrect values to FPSCR. > > Signed-off-by: Víctor Colombo <victor.colombo@eldorado.org.br> > --- Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com> > target/ppc/fpu_helper.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/target/ppc/fpu_helper.c b/target/ppc/fpu_helper.c > index fd3a966371..be47d73b14 100644 > --- a/target/ppc/fpu_helper.c > +++ b/target/ppc/fpu_helper.c > @@ -3172,6 +3172,8 @@ void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) \ > int i; \ > FloatRoundMode curr_rounding_mode; \ > \ > + helper_reset_fpstatus(env); \ > + \ > if (rmode != FLOAT_ROUND_CURRENT) { \ > curr_rounding_mode = get_float_rounding_mode(&env->fp_status); \ > set_float_rounding_mode(rmode, &env->fp_status); \
diff --git a/target/ppc/fpu_helper.c b/target/ppc/fpu_helper.c index fd3a966371..be47d73b14 100644 --- a/target/ppc/fpu_helper.c +++ b/target/ppc/fpu_helper.c @@ -3172,6 +3172,8 @@ void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) \ int i; \ FloatRoundMode curr_rounding_mode; \ \ + helper_reset_fpstatus(env); \ + \ if (rmode != FLOAT_ROUND_CURRENT) { \ curr_rounding_mode = get_float_rounding_mode(&env->fp_status); \ set_float_rounding_mode(rmode, &env->fp_status); \
Fix xsrdpic and other instructions not clearing the flags and saving incorrect values to FPSCR. Signed-off-by: Víctor Colombo <victor.colombo@eldorado.org.br> --- target/ppc/fpu_helper.c | 2 ++ 1 file changed, 2 insertions(+)