qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Maydell <peter.maydell@linaro.org>
To: Richard Henderson <richard.henderson@linaro.org>
Cc: qemu-devel@nongnu.org
Subject: Re: [PULL v2 15/31] Hexagon (target/hexagon) use softfloat default NaN and tininess
Date: Thu, 28 Nov 2024 13:29:56 +0000	[thread overview]
Message-ID: <CAFEAcA_zePe98nx31F_KmeG=S2Kj7__chb51LK_GTcWkY5u4JA@mail.gmail.com> (raw)
In-Reply-To: <20210502144419.1659844-16-richard.henderson@linaro.org>

On Sun, 2 May 2021 at 15:44, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> From: Taylor Simpson <tsimpson@quicinc.com>
>
> Suggested-by: Richard Henderson <richard.henderson@linaro.org>
> Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
> Message-Id: <1617930474-31979-11-git-send-email-tsimpson@quicinc.com>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

> diff --git a/fpu/softfloat-specialize.c.inc b/fpu/softfloat-specialize.c.inc
> index c2f87addb2..9ea318f3e2 100644
> --- a/fpu/softfloat-specialize.c.inc
> +++ b/fpu/softfloat-specialize.c.inc
> @@ -145,6 +145,9 @@ static FloatParts parts_default_nan(float_status *status)
>  #elif defined(TARGET_HPPA)
>      /* snan_bit_is_one, set msb-1.  */
>      frac = 1ULL << (DECOMPOSED_BINARY_POINT - 2);
> +#elif defined(TARGET_HEXAGON)
> +    sign = 1;
> +    frac = ~0ULL;
>  #else
>      /* This case is true for Alpha, ARM, MIPS, OpenRISC, PPC, RISC-V,
>       * S390, SH4, TriCore, and Xtensa.  I cannot find documentation

This change has the effect that Hexagon is unique in that its
default_nan value doesn't correspond with its setting for
snan_bit_is_one(): the default NaN is supposed to be
a QNaN but this value is what snan_bit_is_one() thinks is an SNaN.

Is that intentional? Should we adjust snan_bit_is_one() too ?

(I noticed this because I need to make the default-nan value
be runtime-selectable, and was wondering if I could avoid
having to make targets specify snan_bit_is_one separately
from specifying their default-NaN value. But this handling
of Hexagon would prevent that.)

thanks
-- PMM


  reply	other threads:[~2024-11-28 13:30 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-02 14:43 [PULL v2 00/31] target/hexagon patch queue Richard Henderson
2021-05-02 14:43 ` [PULL v2 01/31] target/hexagon: translation changes Richard Henderson
2021-05-02 14:43 ` [PULL v2 02/31] target/hexagon: remove unnecessary checks in find_iclass_slots Richard Henderson
2021-05-02 14:43 ` [PULL v2 03/31] target/hexagon: Change DECODE_MAPPED_REG operand name to OPNUM Richard Henderson
2021-05-02 14:43 ` [PULL v2 04/31] target/hexagon: fix typo in comment Richard Henderson
2021-05-02 14:43 ` [PULL v2 05/31] target/hexagon: remove unnecessary semicolons Richard Henderson
2021-05-02 14:43 ` [PULL v2 06/31] Hexagon (target/hexagon) TCG generation cleanup Richard Henderson
2021-05-02 14:43 ` [PULL v2 07/31] Hexagon (target/hexagon) cleanup gen_log_predicated_reg_write_pair Richard Henderson
2021-05-02 14:43 ` [PULL v2 08/31] Hexagon (target/hexagon) remove unnecessary inline directives Richard Henderson
2021-05-02 14:43 ` [PULL v2 09/31] Hexagon (target/hexagon) use env_archcpu and env_cpu Richard Henderson
2021-05-02 14:43 ` [PULL v2 10/31] Hexagon (target/hexagon) properly generate TB end for DISAS_NORETURN Richard Henderson
2021-05-02 14:43 ` [PULL v2 11/31] Hexagon (target/hexagon) decide if pred has been written at TCG gen time Richard Henderson
2021-05-02 14:44 ` [PULL v2 12/31] Hexagon (target/hexagon) change variables from int to bool when appropriate Richard Henderson
2021-05-02 14:44 ` [PULL v2 13/31] Hexagon (target/hexagon) remove unused carry_from_add64 function Richard Henderson
2021-05-02 14:44 ` [PULL v2 14/31] Hexagon (target/hexagon) change type of softfloat_roundingmodes Richard Henderson
2021-05-02 14:44 ` [PULL v2 15/31] Hexagon (target/hexagon) use softfloat default NaN and tininess Richard Henderson
2024-11-28 13:29   ` Peter Maydell [this message]
2024-11-28 18:30     ` Richard Henderson
2021-05-02 14:44 ` [PULL v2 16/31] Hexagon (target/hexagon) replace float32_mul_pow2 with float32_scalbn Richard Henderson
2021-05-02 14:44 ` [PULL v2 17/31] Hexagon (target/hexagon) use softfloat for float-to-int conversions Richard Henderson
2021-05-02 14:44 ` [PULL v2 18/31] Hexagon (target/hexagon) cleanup ternary operators in semantics Richard Henderson
2021-05-02 14:44 ` [PULL v2 19/31] Hexagon (target/hexagon) cleanup reg_field_info definition Richard Henderson
2021-05-02 14:44 ` [PULL v2 20/31] Hexagon (target/hexagon) move QEMU_GENERATE to only be on during macros.h Richard Henderson
2021-05-02 14:44 ` [PULL v2 21/31] Hexagon (target/hexagon) compile all debug code Richard Henderson
2021-05-02 14:44 ` [PULL v2 22/31] Hexagon (target/hexagon) add F2_sfrecipa instruction Richard Henderson
2021-05-02 14:44 ` [PULL v2 23/31] Hexagon (target/hexagon) add F2_sfinvsqrta Richard Henderson
2021-05-02 14:44 ` [PULL v2 24/31] Hexagon (target/hexagon) add A5_ACS (vacsh) Richard Henderson
2021-05-02 14:44 ` [PULL v2 25/31] Hexagon (target/hexagon) add A6_vminub_RdP Richard Henderson
2021-05-02 14:44 ` [PULL v2 26/31] Hexagon (target/hexagon) add A4_addp_c/A4_subp_c Richard Henderson
2021-05-02 14:44 ` [PULL v2 27/31] Hexagon (target/hexagon) circular addressing Richard Henderson
2021-05-02 14:44 ` [PULL v2 28/31] Hexagon (target/hexagon) bit reverse (brev) addressing Richard Henderson
2021-05-02 14:44 ` [PULL v2 29/31] Hexagon (target/hexagon) load and unpack bytes instructions Richard Henderson
2021-05-02 14:44 ` [PULL v2 30/31] Hexagon (target/hexagon) load into shifted register instructions Richard Henderson
2021-05-02 14:44 ` [PULL v2 31/31] Hexagon (target/hexagon) CABAC decode bin Richard Henderson
2021-05-03 11:04 ` [PULL v2 00/31] target/hexagon patch queue Peter Maydell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAFEAcA_zePe98nx31F_KmeG=S2Kj7__chb51LK_GTcWkY5u4JA@mail.gmail.com' \
    --to=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).