qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 3/3] target/ppc: Merge fsqrt and fsqrts helpers


From: Víctor Colombo
Subject: Re: [PATCH 3/3] target/ppc: Merge fsqrt and fsqrts helpers
Date: Tue, 6 Sep 2022 11:22:08 -0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0

On 05/09/2022 14:20, Richard Henderson wrote:
Well, there would of course be no separate call, but

I didn't understand what you meant here with 'no separate call'...

do_float_check_status would:

     int status = get_float_exception_flags(&env->fp_status);

     set_float_exception_flags(0, &env->fp_status);

straight away.  No extra call overhead, and the steady-state of softfp exception flags
outside of an in-progress fp operation is 0.


Right, makes sense. And what about when an invalid operation occurs,
with the corresponding exception enabled bit set?
float_invalid_op_* would stop the execution and do_float_check_status
would not be called, right? So it would require to call
set_float_exception_flags there too, correct?
If that's all that's necessary, I might be able to take a look at it and
come with a possible patch.

Anything that can raise a softfp exception and doesn't do something with it, either immediately within the same helper, or just afterward with helper_float_check_status, is
buggy.  With those fixed, helper_reset_fpstatus may be removed entirely.


Oh, that makes sense. It's easier to implement the idea using this
assumption.


--
Víctor Cora Colombo
Instituto de Pesquisas ELDORADO
Aviso Legal - Disclaimer <https://www.eldorado.org.br/disclaimer.html>

reply via email to

[Prev in Thread] Current Thread [Next in Thread]